gogol-analytics 0.4.0 → 0.5.0
raw patch · 93 files changed
+11849/−11359 lines, 93 filesdep ~gogol-corePVP ok
version bump matches the API change (PVP)
Dependency ranges changed: gogol-core
API changes (from Hackage documentation)
- Network.Google.Analytics: aShareAnonymouslyWithOthers :: Lens' AccountTreeResponseAccountSettings (Maybe Bool)
- Network.Google.Analytics: aShareWithGoogleProducts :: Lens' AccountTreeResponseAccountSettings (Maybe Bool)
- Network.Google.Analytics: aShareWithSpeciaLists :: Lens' AccountTreeResponseAccountSettings (Maybe Bool)
- Network.Google.Analytics: aShareWithSupport :: Lens' AccountTreeResponseAccountSettings (Maybe Bool)
- Network.Google.Analytics: accountTreeRequestAccountSettings :: AccountTreeRequestAccountSettings
- Network.Google.Analytics: accountTreeResponseAccountSettings :: AccountTreeResponseAccountSettings
- Network.Google.Analytics: atrAccountSettings :: Lens' AccountTreeRequest (Maybe AccountTreeRequestAccountSettings)
- Network.Google.Analytics: atrasShareAnonymouslyWithOthers :: Lens' AccountTreeRequestAccountSettings (Maybe Bool)
- Network.Google.Analytics: atrasShareWithGoogleProducts :: Lens' AccountTreeRequestAccountSettings (Maybe Bool)
- Network.Google.Analytics: atrasShareWithSpeciaLists :: Lens' AccountTreeRequestAccountSettings (Maybe Bool)
- Network.Google.Analytics: atrasShareWithSupport :: Lens' AccountTreeRequestAccountSettings (Maybe Bool)
- Network.Google.Analytics: atrtAccountSettings :: Lens' AccountTreeResponse (Maybe AccountTreeResponseAccountSettings)
- Network.Google.Analytics: data AccountTreeRequestAccountSettings
- Network.Google.Analytics: data AccountTreeResponseAccountSettings
- Network.Google.Analytics.Types: aShareAnonymouslyWithOthers :: Lens' AccountTreeResponseAccountSettings (Maybe Bool)
- Network.Google.Analytics.Types: aShareWithGoogleProducts :: Lens' AccountTreeResponseAccountSettings (Maybe Bool)
- Network.Google.Analytics.Types: aShareWithSpeciaLists :: Lens' AccountTreeResponseAccountSettings (Maybe Bool)
- Network.Google.Analytics.Types: aShareWithSupport :: Lens' AccountTreeResponseAccountSettings (Maybe Bool)
- Network.Google.Analytics.Types: accountTreeRequestAccountSettings :: AccountTreeRequestAccountSettings
- Network.Google.Analytics.Types: accountTreeResponseAccountSettings :: AccountTreeResponseAccountSettings
- Network.Google.Analytics.Types: atrAccountSettings :: Lens' AccountTreeRequest (Maybe AccountTreeRequestAccountSettings)
- Network.Google.Analytics.Types: atrasShareAnonymouslyWithOthers :: Lens' AccountTreeRequestAccountSettings (Maybe Bool)
- Network.Google.Analytics.Types: atrasShareWithGoogleProducts :: Lens' AccountTreeRequestAccountSettings (Maybe Bool)
- Network.Google.Analytics.Types: atrasShareWithSpeciaLists :: Lens' AccountTreeRequestAccountSettings (Maybe Bool)
- Network.Google.Analytics.Types: atrasShareWithSupport :: Lens' AccountTreeRequestAccountSettings (Maybe Bool)
- Network.Google.Analytics.Types: atrtAccountSettings :: Lens' AccountTreeResponse (Maybe AccountTreeResponseAccountSettings)
- Network.Google.Analytics.Types: data AccountTreeRequestAccountSettings
- Network.Google.Analytics.Types: data AccountTreeResponseAccountSettings
Files
- README.md +1/−1
- gen/Network/Google/Analytics.hs +0/−18
- gen/Network/Google/Analytics/Types.hs +7/−25
- gen/Network/Google/Analytics/Types/Product.hs +11114/−10946
- gen/Network/Google/Resource/Analytics/Data/Ga/Get.hs +7/−3
- gen/Network/Google/Resource/Analytics/Data/Mcf/Get.hs +7/−3
- gen/Network/Google/Resource/Analytics/Data/Realtime/Get.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/AccountSummaries/List.hs +8/−6
- gen/Network/Google/Resource/Analytics/Management/AccountUserLinks/Delete.hs +10/−7
- gen/Network/Google/Resource/Analytics/Management/AccountUserLinks/Insert.hs +10/−7
- gen/Network/Google/Resource/Analytics/Management/AccountUserLinks/List.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/AccountUserLinks/Update.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/Accounts/List.hs +7/−6
- gen/Network/Google/Resource/Analytics/Management/ClientId/HashClientId.hs +7/−5
- gen/Network/Google/Resource/Analytics/Management/CustomDataSources/List.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/CustomDimensions/Get.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/CustomDimensions/Insert.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/CustomDimensions/List.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/CustomDimensions/Patch.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/CustomDimensions/Update.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/CustomMetrics/Get.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/CustomMetrics/Insert.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/CustomMetrics/List.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/CustomMetrics/Patch.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/CustomMetrics/Update.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/Experiments/Delete.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/Experiments/Get.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/Experiments/Insert.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/Experiments/List.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/Experiments/Patch.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/Experiments/Update.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/Filters/Delete.hs +8/−6
- gen/Network/Google/Resource/Analytics/Management/Filters/Get.hs +8/−6
- gen/Network/Google/Resource/Analytics/Management/Filters/Insert.hs +8/−6
- gen/Network/Google/Resource/Analytics/Management/Filters/List.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/Filters/Patch.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/Filters/Update.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/Goals/Get.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/Goals/Insert.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/Goals/List.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/Goals/Patch.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/Goals/Update.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/ProFileFilterLinks/Delete.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/ProFileFilterLinks/Get.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/ProFileFilterLinks/Insert.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/ProFileFilterLinks/List.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/ProFileFilterLinks/Patch.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/ProFileFilterLinks/Update.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/ProFileUserLinks/Delete.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/ProFileUserLinks/Insert.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/ProFileUserLinks/List.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/ProFileUserLinks/Update.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/ProFiles/Delete.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/ProFiles/Get.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/ProFiles/Insert.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/ProFiles/List.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/ProFiles/Patch.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/ProFiles/Update.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/RemarketingAudience/Delete.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/RemarketingAudience/Get.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/RemarketingAudience/Insert.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/RemarketingAudience/List.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/RemarketingAudience/Patch.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/RemarketingAudience/Update.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/Segments/List.hs +7/−6
- gen/Network/Google/Resource/Analytics/Management/UnSampledReports/Delete.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/UnSampledReports/Get.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/UnSampledReports/Insert.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/UnSampledReports/List.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/Uploads/DeleteUploadData.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/Uploads/Get.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/Uploads/List.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/Uploads/UploadData.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/WebProperties/Get.hs +8/−6
- gen/Network/Google/Resource/Analytics/Management/WebProperties/Insert.hs +8/−6
- gen/Network/Google/Resource/Analytics/Management/WebProperties/List.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/WebProperties/Patch.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/WebProperties/Update.hs +7/−3
- gen/Network/Google/Resource/Analytics/Management/WebPropertyAdWordsLinks/Delete.hs +13/−8
- gen/Network/Google/Resource/Analytics/Management/WebPropertyAdWordsLinks/Get.hs +13/−8
- gen/Network/Google/Resource/Analytics/Management/WebPropertyAdWordsLinks/Insert.hs +11/−6
- gen/Network/Google/Resource/Analytics/Management/WebPropertyAdWordsLinks/List.hs +14/−9
- gen/Network/Google/Resource/Analytics/Management/WebPropertyAdWordsLinks/Patch.hs +15/−10
- gen/Network/Google/Resource/Analytics/Management/WebPropertyAdWordsLinks/Update.hs +13/−8
- gen/Network/Google/Resource/Analytics/Management/WebPropertyUserLinks/Delete.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/WebPropertyUserLinks/Insert.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/WebPropertyUserLinks/List.hs +9/−4
- gen/Network/Google/Resource/Analytics/Management/WebPropertyUserLinks/Update.hs +9/−4
- gen/Network/Google/Resource/Analytics/Metadata/Columns/List.hs +7/−5
- gen/Network/Google/Resource/Analytics/Provisioning/CreateAccountTicket.hs +9/−6
- gen/Network/Google/Resource/Analytics/Provisioning/CreateAccountTree.hs +7/−5
- gen/Network/Google/Resource/Analytics/UserDeletion/UserDeletionRequest/Upsert.hs +9/−6
- gogol-analytics.cabal +2/−2
README.md view
@@ -8,7 +8,7 @@ ## Version -`0.3.0`+`0.5.0` ## Description
gen/Network/Google/Analytics.hs view
@@ -763,7 +763,6 @@ -- ** AccountTreeRequest , AccountTreeRequest , accountTreeRequest- , atrAccountSettings , atrWebPropertyName , atrKind , atrAccountName@@ -947,7 +946,6 @@ -- ** AccountTreeResponse , AccountTreeResponse , accountTreeResponse- , atrtAccountSettings , atrtKind , atrtProFile , atrtAccount@@ -1090,14 +1088,6 @@ , gedeciType , gedeciComparisonType - -- ** AccountTreeRequestAccountSettings- , AccountTreeRequestAccountSettings- , accountTreeRequestAccountSettings- , atrasShareWithSpeciaLists- , atrasShareWithSupport- , atrasShareAnonymouslyWithOthers- , atrasShareWithGoogleProducts- -- ** McfDataQuery , McfDataQuery , mcfDataQuery@@ -1249,14 +1239,6 @@ , remarketingAudienceStateBasedAudienceDefinition , rasbadExcludeConditions , rasbadIncludeConditions-- -- ** AccountTreeResponseAccountSettings- , AccountTreeResponseAccountSettings- , accountTreeResponseAccountSettings- , aShareWithSpeciaLists- , aShareWithSupport- , aShareAnonymouslyWithOthers- , aShareWithGoogleProducts -- ** GoalURLDestinationDetails , GoalURLDestinationDetails
gen/Network/Google/Analytics/Types.hs view
@@ -490,7 +490,6 @@ -- * AccountTreeRequest , AccountTreeRequest , accountTreeRequest- , atrAccountSettings , atrWebPropertyName , atrKind , atrAccountName@@ -674,7 +673,6 @@ -- * AccountTreeResponse , AccountTreeResponse , accountTreeResponse- , atrtAccountSettings , atrtKind , atrtProFile , atrtAccount@@ -817,14 +815,6 @@ , gedeciType , gedeciComparisonType - -- * AccountTreeRequestAccountSettings- , AccountTreeRequestAccountSettings- , accountTreeRequestAccountSettings- , atrasShareWithSpeciaLists- , atrasShareWithSupport- , atrasShareAnonymouslyWithOthers- , atrasShareWithGoogleProducts- -- * McfDataQuery , McfDataQuery , mcfDataQuery@@ -977,14 +967,6 @@ , rasbadExcludeConditions , rasbadIncludeConditions - -- * AccountTreeResponseAccountSettings- , AccountTreeResponseAccountSettings- , accountTreeResponseAccountSettings- , aShareWithSpeciaLists- , aShareWithSupport- , aShareAnonymouslyWithOthers- , aShareWithGoogleProducts- -- * GoalURLDestinationDetails , GoalURLDestinationDetails , goalURLDestinationDetails@@ -1175,29 +1157,29 @@ -- | Manage Google Analytics Account users by email address analyticsManageUsersScope :: Proxy '["https://www.googleapis.com/auth/analytics.manage.users"]-analyticsManageUsersScope = Proxy;+analyticsManageUsersScope = Proxy -- | Create a new Google Analytics account along with its default property -- and view analyticsProvisionScope :: Proxy '["https://www.googleapis.com/auth/analytics.provision"]-analyticsProvisionScope = Proxy;+analyticsProvisionScope = Proxy -- | View Google Analytics user permissions analyticsManageUsersReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/analytics.manage.users.readonly"]-analyticsManageUsersReadOnlyScope = Proxy;+analyticsManageUsersReadOnlyScope = Proxy -- | View and manage your Google Analytics data analyticsScope :: Proxy '["https://www.googleapis.com/auth/analytics"]-analyticsScope = Proxy;+analyticsScope = Proxy -- | View your Google Analytics data analyticsReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/analytics.readonly"]-analyticsReadOnlyScope = Proxy;+analyticsReadOnlyScope = Proxy -- | Manage Google Analytics user deletion requests analyticsUserDeletionScope :: Proxy '["https://www.googleapis.com/auth/analytics.user.deletion"]-analyticsUserDeletionScope = Proxy;+analyticsUserDeletionScope = Proxy -- | Edit Google Analytics management entities analyticsEditScope :: Proxy '["https://www.googleapis.com/auth/analytics.edit"]-analyticsEditScope = Proxy;+analyticsEditScope = Proxy
gen/Network/Google/Analytics/Types/Product.hs view
@@ -23,10952 +23,11120 @@ -- | JSON template for a user deletion request resource. -- -- /See:/ 'userDeletionRequest' smart constructor.-data UserDeletionRequest = UserDeletionRequest'- { _udrWebPropertyId :: !(Maybe Text)- , _udrKind :: !Text- , _udrId :: !(Maybe UserDeletionRequestId)- , _udrFirebaseProjectId :: !(Maybe Text)- , _udrDeletionRequestTime :: !(Maybe DateTime')- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'UserDeletionRequest' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'udrWebPropertyId'------ * 'udrKind'------ * 'udrId'------ * 'udrFirebaseProjectId'------ * 'udrDeletionRequestTime'-userDeletionRequest- :: UserDeletionRequest-userDeletionRequest =- UserDeletionRequest'- { _udrWebPropertyId = Nothing- , _udrKind = "analytics#userDeletionRequest"- , _udrId = Nothing- , _udrFirebaseProjectId = Nothing- , _udrDeletionRequestTime = Nothing- }---- | Web property ID of the form UA-XXXXX-YY.-udrWebPropertyId :: Lens' UserDeletionRequest (Maybe Text)-udrWebPropertyId- = lens _udrWebPropertyId- (\ s a -> s{_udrWebPropertyId = a})---- | Value is \"analytics#userDeletionRequest\".-udrKind :: Lens' UserDeletionRequest Text-udrKind = lens _udrKind (\ s a -> s{_udrKind = a})---- | User ID.-udrId :: Lens' UserDeletionRequest (Maybe UserDeletionRequestId)-udrId = lens _udrId (\ s a -> s{_udrId = a})---- | Firebase Project Id-udrFirebaseProjectId :: Lens' UserDeletionRequest (Maybe Text)-udrFirebaseProjectId- = lens _udrFirebaseProjectId- (\ s a -> s{_udrFirebaseProjectId = a})---- | This marks the point in time for which all user data before should be--- deleted-udrDeletionRequestTime :: Lens' UserDeletionRequest (Maybe UTCTime)-udrDeletionRequestTime- = lens _udrDeletionRequestTime- (\ s a -> s{_udrDeletionRequestTime = a})- . mapping _DateTime--instance FromJSON UserDeletionRequest where- parseJSON- = withObject "UserDeletionRequest"- (\ o ->- UserDeletionRequest' <$>- (o .:? "webPropertyId") <*>- (o .:? "kind" .!= "analytics#userDeletionRequest")- <*> (o .:? "id")- <*> (o .:? "firebaseProjectId")- <*> (o .:? "deletionRequestTime"))--instance ToJSON UserDeletionRequest where- toJSON UserDeletionRequest'{..}- = object- (catMaybes- [("webPropertyId" .=) <$> _udrWebPropertyId,- Just ("kind" .= _udrKind), ("id" .=) <$> _udrId,- ("firebaseProjectId" .=) <$> _udrFirebaseProjectId,- ("deletionRequestTime" .=) <$>- _udrDeletionRequestTime])---- | An unsampled report collection lists Analytics unsampled reports to--- which the user has access. Each view (profile) can have a set of--- unsampled reports. Each resource in the unsampled report collection--- corresponds to a single Analytics unsampled report.------ /See:/ 'unSampledReports' smart constructor.-data UnSampledReports = UnSampledReports'- { _usrNextLink :: !(Maybe Text)- , _usrItemsPerPage :: !(Maybe (Textual Int32))- , _usrKind :: !Text- , _usrUsername :: !(Maybe Text)- , _usrItems :: !(Maybe [UnSampledReport])- , _usrTotalResults :: !(Maybe (Textual Int32))- , _usrStartIndex :: !(Maybe (Textual Int32))- , _usrPreviousLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'UnSampledReports' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'usrNextLink'------ * 'usrItemsPerPage'------ * 'usrKind'------ * 'usrUsername'------ * 'usrItems'------ * 'usrTotalResults'------ * 'usrStartIndex'------ * 'usrPreviousLink'-unSampledReports- :: UnSampledReports-unSampledReports =- UnSampledReports'- { _usrNextLink = Nothing- , _usrItemsPerPage = Nothing- , _usrKind = "analytics#unsampledReports"- , _usrUsername = Nothing- , _usrItems = Nothing- , _usrTotalResults = Nothing- , _usrStartIndex = Nothing- , _usrPreviousLink = Nothing- }---- | Link to next page for this unsampled report collection.-usrNextLink :: Lens' UnSampledReports (Maybe Text)-usrNextLink- = lens _usrNextLink (\ s a -> s{_usrNextLink = a})---- | The maximum number of resources the response can contain, regardless of--- the actual number of resources returned. Its value ranges from 1 to 1000--- with a value of 1000 by default, or otherwise specified by the--- max-results query parameter.-usrItemsPerPage :: Lens' UnSampledReports (Maybe Int32)-usrItemsPerPage- = lens _usrItemsPerPage- (\ s a -> s{_usrItemsPerPage = a})- . mapping _Coerce---- | Collection type.-usrKind :: Lens' UnSampledReports Text-usrKind = lens _usrKind (\ s a -> s{_usrKind = a})---- | Email ID of the authenticated user-usrUsername :: Lens' UnSampledReports (Maybe Text)-usrUsername- = lens _usrUsername (\ s a -> s{_usrUsername = a})---- | A list of unsampled reports.-usrItems :: Lens' UnSampledReports [UnSampledReport]-usrItems- = lens _usrItems (\ s a -> s{_usrItems = a}) .- _Default- . _Coerce---- | The total number of results for the query, regardless of the number of--- resources in the result.-usrTotalResults :: Lens' UnSampledReports (Maybe Int32)-usrTotalResults- = lens _usrTotalResults- (\ s a -> s{_usrTotalResults = a})- . mapping _Coerce---- | The starting index of the resources, which is 1 by default or otherwise--- specified by the start-index query parameter.-usrStartIndex :: Lens' UnSampledReports (Maybe Int32)-usrStartIndex- = lens _usrStartIndex- (\ s a -> s{_usrStartIndex = a})- . mapping _Coerce---- | Link to previous page for this unsampled report collection.-usrPreviousLink :: Lens' UnSampledReports (Maybe Text)-usrPreviousLink- = lens _usrPreviousLink- (\ s a -> s{_usrPreviousLink = a})--instance FromJSON UnSampledReports where- parseJSON- = withObject "UnSampledReports"- (\ o ->- UnSampledReports' <$>- (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>- (o .:? "kind" .!= "analytics#unsampledReports")- <*> (o .:? "username")- <*> (o .:? "items" .!= mempty)- <*> (o .:? "totalResults")- <*> (o .:? "startIndex")- <*> (o .:? "previousLink"))--instance ToJSON UnSampledReports where- toJSON UnSampledReports'{..}- = object- (catMaybes- [("nextLink" .=) <$> _usrNextLink,- ("itemsPerPage" .=) <$> _usrItemsPerPage,- Just ("kind" .= _usrKind),- ("username" .=) <$> _usrUsername,- ("items" .=) <$> _usrItems,- ("totalResults" .=) <$> _usrTotalResults,- ("startIndex" .=) <$> _usrStartIndex,- ("previousLink" .=) <$> _usrPreviousLink])------- /See:/ 'goalURLDestinationDetailsStepsItem' smart constructor.-data GoalURLDestinationDetailsStepsItem = GoalURLDestinationDetailsStepsItem'- { _guddsiURL :: !(Maybe Text)- , _guddsiName :: !(Maybe Text)- , _guddsiNumber :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoalURLDestinationDetailsStepsItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'guddsiURL'------ * 'guddsiName'------ * 'guddsiNumber'-goalURLDestinationDetailsStepsItem- :: GoalURLDestinationDetailsStepsItem-goalURLDestinationDetailsStepsItem =- GoalURLDestinationDetailsStepsItem'- { _guddsiURL = Nothing- , _guddsiName = Nothing- , _guddsiNumber = Nothing- }---- | URL for this step.-guddsiURL :: Lens' GoalURLDestinationDetailsStepsItem (Maybe Text)-guddsiURL- = lens _guddsiURL (\ s a -> s{_guddsiURL = a})---- | Step name.-guddsiName :: Lens' GoalURLDestinationDetailsStepsItem (Maybe Text)-guddsiName- = lens _guddsiName (\ s a -> s{_guddsiName = a})---- | Step number.-guddsiNumber :: Lens' GoalURLDestinationDetailsStepsItem (Maybe Int32)-guddsiNumber- = lens _guddsiNumber (\ s a -> s{_guddsiNumber = a})- . mapping _Coerce--instance FromJSON GoalURLDestinationDetailsStepsItem- where- parseJSON- = withObject "GoalURLDestinationDetailsStepsItem"- (\ o ->- GoalURLDestinationDetailsStepsItem' <$>- (o .:? "url") <*> (o .:? "name") <*>- (o .:? "number"))--instance ToJSON GoalURLDestinationDetailsStepsItem- where- toJSON GoalURLDestinationDetailsStepsItem'{..}- = object- (catMaybes- [("url" .=) <$> _guddsiURL,- ("name" .=) <$> _guddsiName,- ("number" .=) <$> _guddsiNumber])---- | Analytics data request query parameters.------ /See:/ 'gaDataQuery' smart constructor.-data GaDataQuery = GaDataQuery'- { _gdqMetrics :: !(Maybe [Text])- , _gdqSamplingLevel :: !(Maybe Text)- , _gdqFilters :: !(Maybe Text)- , _gdqIds :: !(Maybe Text)- , _gdqEndDate :: !(Maybe Text)- , _gdqSort :: !(Maybe [Text])- , _gdqDimensions :: !(Maybe Text)- , _gdqStartIndex :: !(Maybe (Textual Int32))- , _gdqMaxResults :: !(Maybe (Textual Int32))- , _gdqSegment :: !(Maybe Text)- , _gdqStartDate :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GaDataQuery' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gdqMetrics'------ * 'gdqSamplingLevel'------ * 'gdqFilters'------ * 'gdqIds'------ * 'gdqEndDate'------ * 'gdqSort'------ * 'gdqDimensions'------ * 'gdqStartIndex'------ * 'gdqMaxResults'------ * 'gdqSegment'------ * 'gdqStartDate'-gaDataQuery- :: GaDataQuery-gaDataQuery =- GaDataQuery'- { _gdqMetrics = Nothing- , _gdqSamplingLevel = Nothing- , _gdqFilters = Nothing- , _gdqIds = Nothing- , _gdqEndDate = Nothing- , _gdqSort = Nothing- , _gdqDimensions = Nothing- , _gdqStartIndex = Nothing- , _gdqMaxResults = Nothing- , _gdqSegment = Nothing- , _gdqStartDate = Nothing- }---- | List of analytics metrics.-gdqMetrics :: Lens' GaDataQuery [Text]-gdqMetrics- = lens _gdqMetrics (\ s a -> s{_gdqMetrics = a}) .- _Default- . _Coerce---- | Desired sampling level-gdqSamplingLevel :: Lens' GaDataQuery (Maybe Text)-gdqSamplingLevel- = lens _gdqSamplingLevel- (\ s a -> s{_gdqSamplingLevel = a})---- | Comma-separated list of dimension or metric filters.-gdqFilters :: Lens' GaDataQuery (Maybe Text)-gdqFilters- = lens _gdqFilters (\ s a -> s{_gdqFilters = a})---- | Unique table ID.-gdqIds :: Lens' GaDataQuery (Maybe Text)-gdqIds = lens _gdqIds (\ s a -> s{_gdqIds = a})---- | End date.-gdqEndDate :: Lens' GaDataQuery (Maybe Text)-gdqEndDate- = lens _gdqEndDate (\ s a -> s{_gdqEndDate = a})---- | List of dimensions or metrics based on which Analytics data is sorted.-gdqSort :: Lens' GaDataQuery [Text]-gdqSort- = lens _gdqSort (\ s a -> s{_gdqSort = a}) . _Default- . _Coerce---- | List of analytics dimensions.-gdqDimensions :: Lens' GaDataQuery (Maybe Text)-gdqDimensions- = lens _gdqDimensions- (\ s a -> s{_gdqDimensions = a})---- | Start index.-gdqStartIndex :: Lens' GaDataQuery (Maybe Int32)-gdqStartIndex- = lens _gdqStartIndex- (\ s a -> s{_gdqStartIndex = a})- . mapping _Coerce---- | Maximum results per page.-gdqMaxResults :: Lens' GaDataQuery (Maybe Int32)-gdqMaxResults- = lens _gdqMaxResults- (\ s a -> s{_gdqMaxResults = a})- . mapping _Coerce---- | Analytics advanced segment.-gdqSegment :: Lens' GaDataQuery (Maybe Text)-gdqSegment- = lens _gdqSegment (\ s a -> s{_gdqSegment = a})---- | Start date.-gdqStartDate :: Lens' GaDataQuery (Maybe Text)-gdqStartDate- = lens _gdqStartDate (\ s a -> s{_gdqStartDate = a})--instance FromJSON GaDataQuery where- parseJSON- = withObject "GaDataQuery"- (\ o ->- GaDataQuery' <$>- (o .:? "metrics" .!= mempty) <*>- (o .:? "samplingLevel")- <*> (o .:? "filters")- <*> (o .:? "ids")- <*> (o .:? "end-date")- <*> (o .:? "sort" .!= mempty)- <*> (o .:? "dimensions")- <*> (o .:? "start-index")- <*> (o .:? "max-results")- <*> (o .:? "segment")- <*> (o .:? "start-date"))--instance ToJSON GaDataQuery where- toJSON GaDataQuery'{..}- = object- (catMaybes- [("metrics" .=) <$> _gdqMetrics,- ("samplingLevel" .=) <$> _gdqSamplingLevel,- ("filters" .=) <$> _gdqFilters,- ("ids" .=) <$> _gdqIds,- ("end-date" .=) <$> _gdqEndDate,- ("sort" .=) <$> _gdqSort,- ("dimensions" .=) <$> _gdqDimensions,- ("start-index" .=) <$> _gdqStartIndex,- ("max-results" .=) <$> _gdqMaxResults,- ("segment" .=) <$> _gdqSegment,- ("start-date" .=) <$> _gdqStartDate])---- | A remarketing audience collection lists Analytics remarketing audiences--- to which the user has access. Each resource in the collection--- corresponds to a single Analytics remarketing audience.------ /See:/ 'remarketingAudiences' smart constructor.-data RemarketingAudiences = RemarketingAudiences'- { _raNextLink :: !(Maybe Text)- , _raItemsPerPage :: !(Maybe (Textual Int32))- , _raKind :: !Text- , _raUsername :: !(Maybe Text)- , _raItems :: !(Maybe [RemarketingAudience])- , _raTotalResults :: !(Maybe (Textual Int32))- , _raStartIndex :: !(Maybe (Textual Int32))- , _raPreviousLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'RemarketingAudiences' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'raNextLink'------ * 'raItemsPerPage'------ * 'raKind'------ * 'raUsername'------ * 'raItems'------ * 'raTotalResults'------ * 'raStartIndex'------ * 'raPreviousLink'-remarketingAudiences- :: RemarketingAudiences-remarketingAudiences =- RemarketingAudiences'- { _raNextLink = Nothing- , _raItemsPerPage = Nothing- , _raKind = "analytics#remarketingAudiences"- , _raUsername = Nothing- , _raItems = Nothing- , _raTotalResults = Nothing- , _raStartIndex = Nothing- , _raPreviousLink = Nothing- }---- | Link to next page for this remarketing audience collection.-raNextLink :: Lens' RemarketingAudiences (Maybe Text)-raNextLink- = lens _raNextLink (\ s a -> s{_raNextLink = a})---- | The maximum number of resources the response can contain, regardless of--- the actual number of resources returned. Its value ranges from 1 to 1000--- with a value of 1000 by default, or otherwise specified by the--- max-results query parameter.-raItemsPerPage :: Lens' RemarketingAudiences (Maybe Int32)-raItemsPerPage- = lens _raItemsPerPage- (\ s a -> s{_raItemsPerPage = a})- . mapping _Coerce---- | Collection type.-raKind :: Lens' RemarketingAudiences Text-raKind = lens _raKind (\ s a -> s{_raKind = a})---- | Email ID of the authenticated user-raUsername :: Lens' RemarketingAudiences (Maybe Text)-raUsername- = lens _raUsername (\ s a -> s{_raUsername = a})---- | A list of remarketing audiences.-raItems :: Lens' RemarketingAudiences [RemarketingAudience]-raItems- = lens _raItems (\ s a -> s{_raItems = a}) . _Default- . _Coerce---- | The total number of results for the query, regardless of the number of--- results in the response.-raTotalResults :: Lens' RemarketingAudiences (Maybe Int32)-raTotalResults- = lens _raTotalResults- (\ s a -> s{_raTotalResults = a})- . mapping _Coerce---- | The starting index of the resources, which is 1 by default or otherwise--- specified by the start-index query parameter.-raStartIndex :: Lens' RemarketingAudiences (Maybe Int32)-raStartIndex- = lens _raStartIndex (\ s a -> s{_raStartIndex = a})- . mapping _Coerce---- | Link to previous page for this view (profile) collection.-raPreviousLink :: Lens' RemarketingAudiences (Maybe Text)-raPreviousLink- = lens _raPreviousLink- (\ s a -> s{_raPreviousLink = a})--instance FromJSON RemarketingAudiences where- parseJSON- = withObject "RemarketingAudiences"- (\ o ->- RemarketingAudiences' <$>- (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>- (o .:? "kind" .!= "analytics#remarketingAudiences")- <*> (o .:? "username")- <*> (o .:? "items" .!= mempty)- <*> (o .:? "totalResults")- <*> (o .:? "startIndex")- <*> (o .:? "previousLink"))--instance ToJSON RemarketingAudiences where- toJSON RemarketingAudiences'{..}- = object- (catMaybes- [("nextLink" .=) <$> _raNextLink,- ("itemsPerPage" .=) <$> _raItemsPerPage,- Just ("kind" .= _raKind),- ("username" .=) <$> _raUsername,- ("items" .=) <$> _raItems,- ("totalResults" .=) <$> _raTotalResults,- ("startIndex" .=) <$> _raStartIndex,- ("previousLink" .=) <$> _raPreviousLink])------- /See:/ 'gaDataDataTableRowsItem' smart constructor.-newtype GaDataDataTableRowsItem = GaDataDataTableRowsItem'- { _gddtriC :: Maybe [GaDataDataTableRowsItemCItem]- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GaDataDataTableRowsItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gddtriC'-gaDataDataTableRowsItem- :: GaDataDataTableRowsItem-gaDataDataTableRowsItem =- GaDataDataTableRowsItem'- { _gddtriC = Nothing- }--gddtriC :: Lens' GaDataDataTableRowsItem [GaDataDataTableRowsItemCItem]-gddtriC- = lens _gddtriC (\ s a -> s{_gddtriC = a}) . _Default- . _Coerce--instance FromJSON GaDataDataTableRowsItem where- parseJSON- = withObject "GaDataDataTableRowsItem"- (\ o ->- GaDataDataTableRowsItem' <$> (o .:? "c" .!= mempty))--instance ToJSON GaDataDataTableRowsItem where- toJSON GaDataDataTableRowsItem'{..}- = object (catMaybes [("c" .=) <$> _gddtriC])---- | JSON template for Analytics unsampled report resource.------ /See:/ 'unSampledReport' smart constructor.-data UnSampledReport = UnSampledReport'- { _uDownloadType :: !(Maybe Text)- , _uStatus :: !(Maybe Text)- , _uMetrics :: !(Maybe Text)- , _uDriveDownloadDetails :: !(Maybe UnSampledReportDriveDownloadDetails)- , _uWebPropertyId :: !(Maybe Text)- , _uKind :: !Text- , _uCreated :: !(Maybe DateTime')- , _uFilters :: !(Maybe Text)- , _uProFileId :: !(Maybe Text)- , _uEndDate :: !(Maybe Text)- , _uSelfLink :: !(Maybe Text)- , _uAccountId :: !(Maybe Text)- , _uId :: !(Maybe Text)- , _uUpdated :: !(Maybe DateTime')- , _uTitle :: !(Maybe Text)- , _uDimensions :: !(Maybe Text)- , _uSegment :: !(Maybe Text)- , _uCloudStorageDownloadDetails :: !(Maybe UnSampledReportCloudStorageDownloadDetails)- , _uStartDate :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'UnSampledReport' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'uDownloadType'------ * 'uStatus'------ * 'uMetrics'------ * 'uDriveDownloadDetails'------ * 'uWebPropertyId'------ * 'uKind'------ * 'uCreated'------ * 'uFilters'------ * 'uProFileId'------ * 'uEndDate'------ * 'uSelfLink'------ * 'uAccountId'------ * 'uId'------ * 'uUpdated'------ * 'uTitle'------ * 'uDimensions'------ * 'uSegment'------ * 'uCloudStorageDownloadDetails'------ * 'uStartDate'-unSampledReport- :: UnSampledReport-unSampledReport =- UnSampledReport'- { _uDownloadType = Nothing- , _uStatus = Nothing- , _uMetrics = Nothing- , _uDriveDownloadDetails = Nothing- , _uWebPropertyId = Nothing- , _uKind = "analytics#unsampledReport"- , _uCreated = Nothing- , _uFilters = Nothing- , _uProFileId = Nothing- , _uEndDate = Nothing- , _uSelfLink = Nothing- , _uAccountId = Nothing- , _uId = Nothing- , _uUpdated = Nothing- , _uTitle = Nothing- , _uDimensions = Nothing- , _uSegment = Nothing- , _uCloudStorageDownloadDetails = Nothing- , _uStartDate = Nothing- }---- | The type of download you need to use for the report data file. Possible--- values include \`GOOGLE_DRIVE\` and \`GOOGLE_CLOUD_STORAGE\`. If the--- value is \`GOOGLE_DRIVE\`, see the \`driveDownloadDetails\` field. If--- the value is \`GOOGLE_CLOUD_STORAGE\`, see the--- \`cloudStorageDownloadDetails\` field.-uDownloadType :: Lens' UnSampledReport (Maybe Text)-uDownloadType- = lens _uDownloadType- (\ s a -> s{_uDownloadType = a})---- | Status of this unsampled report. Possible values are PENDING, COMPLETED,--- or FAILED.-uStatus :: Lens' UnSampledReport (Maybe Text)-uStatus = lens _uStatus (\ s a -> s{_uStatus = a})---- | The metrics for the unsampled report.-uMetrics :: Lens' UnSampledReport (Maybe Text)-uMetrics = lens _uMetrics (\ s a -> s{_uMetrics = a})---- | Download details for a file stored in Google Drive.-uDriveDownloadDetails :: Lens' UnSampledReport (Maybe UnSampledReportDriveDownloadDetails)-uDriveDownloadDetails- = lens _uDriveDownloadDetails- (\ s a -> s{_uDriveDownloadDetails = a})---- | Web property ID to which this unsampled report belongs. The web property--- ID is of the form UA-XXXXX-YY.-uWebPropertyId :: Lens' UnSampledReport (Maybe Text)-uWebPropertyId- = lens _uWebPropertyId- (\ s a -> s{_uWebPropertyId = a})---- | Resource type for an Analytics unsampled report.-uKind :: Lens' UnSampledReport Text-uKind = lens _uKind (\ s a -> s{_uKind = a})---- | Time this unsampled report was created.-uCreated :: Lens' UnSampledReport (Maybe UTCTime)-uCreated- = lens _uCreated (\ s a -> s{_uCreated = a}) .- mapping _DateTime---- | The filters for the unsampled report.-uFilters :: Lens' UnSampledReport (Maybe Text)-uFilters = lens _uFilters (\ s a -> s{_uFilters = a})---- | View (Profile) ID to which this unsampled report belongs.-uProFileId :: Lens' UnSampledReport (Maybe Text)-uProFileId- = lens _uProFileId (\ s a -> s{_uProFileId = a})---- | The end date for the unsampled report.-uEndDate :: Lens' UnSampledReport (Maybe Text)-uEndDate = lens _uEndDate (\ s a -> s{_uEndDate = a})---- | Link for this unsampled report.-uSelfLink :: Lens' UnSampledReport (Maybe Text)-uSelfLink- = lens _uSelfLink (\ s a -> s{_uSelfLink = a})---- | Account ID to which this unsampled report belongs.-uAccountId :: Lens' UnSampledReport (Maybe Text)-uAccountId- = lens _uAccountId (\ s a -> s{_uAccountId = a})---- | Unsampled report ID.-uId :: Lens' UnSampledReport (Maybe Text)-uId = lens _uId (\ s a -> s{_uId = a})---- | Time this unsampled report was last modified.-uUpdated :: Lens' UnSampledReport (Maybe UTCTime)-uUpdated- = lens _uUpdated (\ s a -> s{_uUpdated = a}) .- mapping _DateTime---- | Title of the unsampled report.-uTitle :: Lens' UnSampledReport (Maybe Text)-uTitle = lens _uTitle (\ s a -> s{_uTitle = a})---- | The dimensions for the unsampled report.-uDimensions :: Lens' UnSampledReport (Maybe Text)-uDimensions- = lens _uDimensions (\ s a -> s{_uDimensions = a})---- | The segment for the unsampled report.-uSegment :: Lens' UnSampledReport (Maybe Text)-uSegment = lens _uSegment (\ s a -> s{_uSegment = a})---- | Download details for a file stored in Google Cloud Storage.-uCloudStorageDownloadDetails :: Lens' UnSampledReport (Maybe UnSampledReportCloudStorageDownloadDetails)-uCloudStorageDownloadDetails- = lens _uCloudStorageDownloadDetails- (\ s a -> s{_uCloudStorageDownloadDetails = a})---- | The start date for the unsampled report.-uStartDate :: Lens' UnSampledReport (Maybe Text)-uStartDate- = lens _uStartDate (\ s a -> s{_uStartDate = a})--instance FromJSON UnSampledReport where- parseJSON- = withObject "UnSampledReport"- (\ o ->- UnSampledReport' <$>- (o .:? "downloadType") <*> (o .:? "status") <*>- (o .:? "metrics")- <*> (o .:? "driveDownloadDetails")- <*> (o .:? "webPropertyId")- <*> (o .:? "kind" .!= "analytics#unsampledReport")- <*> (o .:? "created")- <*> (o .:? "filters")- <*> (o .:? "profileId")- <*> (o .:? "end-date")- <*> (o .:? "selfLink")- <*> (o .:? "accountId")- <*> (o .:? "id")- <*> (o .:? "updated")- <*> (o .:? "title")- <*> (o .:? "dimensions")- <*> (o .:? "segment")- <*> (o .:? "cloudStorageDownloadDetails")- <*> (o .:? "start-date"))--instance ToJSON UnSampledReport where- toJSON UnSampledReport'{..}- = object- (catMaybes- [("downloadType" .=) <$> _uDownloadType,- ("status" .=) <$> _uStatus,- ("metrics" .=) <$> _uMetrics,- ("driveDownloadDetails" .=) <$>- _uDriveDownloadDetails,- ("webPropertyId" .=) <$> _uWebPropertyId,- Just ("kind" .= _uKind),- ("created" .=) <$> _uCreated,- ("filters" .=) <$> _uFilters,- ("profileId" .=) <$> _uProFileId,- ("end-date" .=) <$> _uEndDate,- ("selfLink" .=) <$> _uSelfLink,- ("accountId" .=) <$> _uAccountId, ("id" .=) <$> _uId,- ("updated" .=) <$> _uUpdated,- ("title" .=) <$> _uTitle,- ("dimensions" .=) <$> _uDimensions,- ("segment" .=) <$> _uSegment,- ("cloudStorageDownloadDetails" .=) <$>- _uCloudStorageDownloadDetails,- ("start-date" .=) <$> _uStartDate])------- /See:/ 'mcfDataColumnHeadersItem' smart constructor.-data McfDataColumnHeadersItem = McfDataColumnHeadersItem'- { _mdchiColumnType :: !(Maybe Text)- , _mdchiName :: !(Maybe Text)- , _mdchiDataType :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'McfDataColumnHeadersItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'mdchiColumnType'------ * 'mdchiName'------ * 'mdchiDataType'-mcfDataColumnHeadersItem- :: McfDataColumnHeadersItem-mcfDataColumnHeadersItem =- McfDataColumnHeadersItem'- { _mdchiColumnType = Nothing- , _mdchiName = Nothing- , _mdchiDataType = Nothing- }---- | Column Type. Either DIMENSION or METRIC.-mdchiColumnType :: Lens' McfDataColumnHeadersItem (Maybe Text)-mdchiColumnType- = lens _mdchiColumnType- (\ s a -> s{_mdchiColumnType = a})---- | Column name.-mdchiName :: Lens' McfDataColumnHeadersItem (Maybe Text)-mdchiName- = lens _mdchiName (\ s a -> s{_mdchiName = a})---- | Data type. Dimension and metric values data types such as INTEGER,--- DOUBLE, CURRENCY, MCF_SEQUENCE etc.-mdchiDataType :: Lens' McfDataColumnHeadersItem (Maybe Text)-mdchiDataType- = lens _mdchiDataType- (\ s a -> s{_mdchiDataType = a})--instance FromJSON McfDataColumnHeadersItem where- parseJSON- = withObject "McfDataColumnHeadersItem"- (\ o ->- McfDataColumnHeadersItem' <$>- (o .:? "columnType") <*> (o .:? "name") <*>- (o .:? "dataType"))--instance ToJSON McfDataColumnHeadersItem where- toJSON McfDataColumnHeadersItem'{..}- = object- (catMaybes- [("columnType" .=) <$> _mdchiColumnType,- ("name" .=) <$> _mdchiName,- ("dataType" .=) <$> _mdchiDataType])---- | Total values for the requested metrics over all the results, not just--- the results returned in this response. The order of the metric totals is--- same as the metric order specified in the request.------ /See:/ 'gaDataTotalsForAllResults' smart constructor.-newtype GaDataTotalsForAllResults = GaDataTotalsForAllResults'- { _gdtfarAddtional :: HashMap Text Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GaDataTotalsForAllResults' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gdtfarAddtional'-gaDataTotalsForAllResults- :: HashMap Text Text -- ^ 'gdtfarAddtional'- -> GaDataTotalsForAllResults-gaDataTotalsForAllResults pGdtfarAddtional_ =- GaDataTotalsForAllResults'- { _gdtfarAddtional = _Coerce # pGdtfarAddtional_- }---- | Key-value pair for the total value of a metric. Key is the metric name--- and the value is the total value for that metric.-gdtfarAddtional :: Lens' GaDataTotalsForAllResults (HashMap Text Text)-gdtfarAddtional- = lens _gdtfarAddtional- (\ s a -> s{_gdtfarAddtional = a})- . _Coerce--instance FromJSON GaDataTotalsForAllResults where- parseJSON- = withObject "GaDataTotalsForAllResults"- (\ o ->- GaDataTotalsForAllResults' <$> (parseJSONObject o))--instance ToJSON GaDataTotalsForAllResults where- toJSON = toJSON . _gdtfarAddtional---- | Parent link for this view (profile). Points to the web property to which--- this view (profile) belongs.------ /See:/ 'proFileParentLink' smart constructor.-data ProFileParentLink = ProFileParentLink'- { _pfplHref :: !(Maybe Text)- , _pfplType :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ProFileParentLink' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pfplHref'------ * 'pfplType'-proFileParentLink- :: ProFileParentLink-proFileParentLink =- ProFileParentLink'- { _pfplHref = Nothing- , _pfplType = "analytics#webproperty"- }---- | Link to the web property to which this view (profile) belongs.-pfplHref :: Lens' ProFileParentLink (Maybe Text)-pfplHref = lens _pfplHref (\ s a -> s{_pfplHref = a})---- | Value is \"analytics#webproperty\".-pfplType :: Lens' ProFileParentLink Text-pfplType = lens _pfplType (\ s a -> s{_pfplType = a})--instance FromJSON ProFileParentLink where- parseJSON- = withObject "ProFileParentLink"- (\ o ->- ProFileParentLink' <$>- (o .:? "href") <*>- (o .:? "type" .!= "analytics#webproperty"))--instance ToJSON ProFileParentLink where- toJSON ProFileParentLink'{..}- = object- (catMaybes- [("href" .=) <$> _pfplHref,- Just ("type" .= _pfplType)])---- | JSON template for an Analytics remarketing audience.------ /See:/ 'remarketingAudience' smart constructor.-data RemarketingAudience = RemarketingAudience'- { _rWebPropertyId :: !(Maybe Text)- , _rKind :: !Text- , _rCreated :: !(Maybe DateTime')- , _rLinkedAdAccounts :: !(Maybe [LinkedForeignAccount])- , _rAudienceDefinition :: !(Maybe RemarketingAudienceAudienceDefinition)- , _rAudienceType :: !(Maybe Text)- , _rAccountId :: !(Maybe Text)- , _rName :: !(Maybe Text)- , _rStateBasedAudienceDefinition :: !(Maybe RemarketingAudienceStateBasedAudienceDefinition)- , _rLinkedViews :: !(Maybe [Text])- , _rInternalWebPropertyId :: !(Maybe Text)- , _rId :: !(Maybe Text)- , _rUpdated :: !(Maybe DateTime')- , _rDescription :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'RemarketingAudience' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rWebPropertyId'------ * 'rKind'------ * 'rCreated'------ * 'rLinkedAdAccounts'------ * 'rAudienceDefinition'------ * 'rAudienceType'------ * 'rAccountId'------ * 'rName'------ * 'rStateBasedAudienceDefinition'------ * 'rLinkedViews'------ * 'rInternalWebPropertyId'------ * 'rId'------ * 'rUpdated'------ * 'rDescription'-remarketingAudience- :: RemarketingAudience-remarketingAudience =- RemarketingAudience'- { _rWebPropertyId = Nothing- , _rKind = "analytics#remarketingAudience"- , _rCreated = Nothing- , _rLinkedAdAccounts = Nothing- , _rAudienceDefinition = Nothing- , _rAudienceType = Nothing- , _rAccountId = Nothing- , _rName = Nothing- , _rStateBasedAudienceDefinition = Nothing- , _rLinkedViews = Nothing- , _rInternalWebPropertyId = Nothing- , _rId = Nothing- , _rUpdated = Nothing- , _rDescription = Nothing- }---- | Web property ID of the form UA-XXXXX-YY to which this remarketing--- audience belongs.-rWebPropertyId :: Lens' RemarketingAudience (Maybe Text)-rWebPropertyId- = lens _rWebPropertyId- (\ s a -> s{_rWebPropertyId = a})---- | Collection type.-rKind :: Lens' RemarketingAudience Text-rKind = lens _rKind (\ s a -> s{_rKind = a})---- | Time this remarketing audience was created.-rCreated :: Lens' RemarketingAudience (Maybe UTCTime)-rCreated- = lens _rCreated (\ s a -> s{_rCreated = a}) .- mapping _DateTime---- | The linked ad accounts associated with this remarketing audience. A--- remarketing audience can have only one linkedAdAccount currently.-rLinkedAdAccounts :: Lens' RemarketingAudience [LinkedForeignAccount]-rLinkedAdAccounts- = lens _rLinkedAdAccounts- (\ s a -> s{_rLinkedAdAccounts = a})- . _Default- . _Coerce---- | The simple audience definition that will cause a user to be added to an--- audience.-rAudienceDefinition :: Lens' RemarketingAudience (Maybe RemarketingAudienceAudienceDefinition)-rAudienceDefinition- = lens _rAudienceDefinition- (\ s a -> s{_rAudienceDefinition = a})---- | The type of audience, either SIMPLE or STATE_BASED.-rAudienceType :: Lens' RemarketingAudience (Maybe Text)-rAudienceType- = lens _rAudienceType- (\ s a -> s{_rAudienceType = a})---- | Account ID to which this remarketing audience belongs.-rAccountId :: Lens' RemarketingAudience (Maybe Text)-rAccountId- = lens _rAccountId (\ s a -> s{_rAccountId = a})---- | The name of this remarketing audience.-rName :: Lens' RemarketingAudience (Maybe Text)-rName = lens _rName (\ s a -> s{_rName = a})---- | A state based audience definition that will cause a user to be added or--- removed from an audience.-rStateBasedAudienceDefinition :: Lens' RemarketingAudience (Maybe RemarketingAudienceStateBasedAudienceDefinition)-rStateBasedAudienceDefinition- = lens _rStateBasedAudienceDefinition- (\ s a -> s{_rStateBasedAudienceDefinition = a})---- | The views (profiles) that this remarketing audience is linked to.-rLinkedViews :: Lens' RemarketingAudience [Text]-rLinkedViews- = lens _rLinkedViews (\ s a -> s{_rLinkedViews = a})- . _Default- . _Coerce---- | Internal ID for the web property to which this remarketing audience--- belongs.-rInternalWebPropertyId :: Lens' RemarketingAudience (Maybe Text)-rInternalWebPropertyId- = lens _rInternalWebPropertyId- (\ s a -> s{_rInternalWebPropertyId = a})---- | Remarketing Audience ID.-rId :: Lens' RemarketingAudience (Maybe Text)-rId = lens _rId (\ s a -> s{_rId = a})---- | Time this remarketing audience was last modified.-rUpdated :: Lens' RemarketingAudience (Maybe UTCTime)-rUpdated- = lens _rUpdated (\ s a -> s{_rUpdated = a}) .- mapping _DateTime---- | The description of this remarketing audience.-rDescription :: Lens' RemarketingAudience (Maybe Text)-rDescription- = lens _rDescription (\ s a -> s{_rDescription = a})--instance FromJSON RemarketingAudience where- parseJSON- = withObject "RemarketingAudience"- (\ o ->- RemarketingAudience' <$>- (o .:? "webPropertyId") <*>- (o .:? "kind" .!= "analytics#remarketingAudience")- <*> (o .:? "created")- <*> (o .:? "linkedAdAccounts" .!= mempty)- <*> (o .:? "audienceDefinition")- <*> (o .:? "audienceType")- <*> (o .:? "accountId")- <*> (o .:? "name")- <*> (o .:? "stateBasedAudienceDefinition")- <*> (o .:? "linkedViews" .!= mempty)- <*> (o .:? "internalWebPropertyId")- <*> (o .:? "id")- <*> (o .:? "updated")- <*> (o .:? "description"))--instance ToJSON RemarketingAudience where- toJSON RemarketingAudience'{..}- = object- (catMaybes- [("webPropertyId" .=) <$> _rWebPropertyId,- Just ("kind" .= _rKind),- ("created" .=) <$> _rCreated,- ("linkedAdAccounts" .=) <$> _rLinkedAdAccounts,- ("audienceDefinition" .=) <$> _rAudienceDefinition,- ("audienceType" .=) <$> _rAudienceType,- ("accountId" .=) <$> _rAccountId,- ("name" .=) <$> _rName,- ("stateBasedAudienceDefinition" .=) <$>- _rStateBasedAudienceDefinition,- ("linkedViews" .=) <$> _rLinkedViews,- ("internalWebPropertyId" .=) <$>- _rInternalWebPropertyId,- ("id" .=) <$> _rId, ("updated" .=) <$> _rUpdated,- ("description" .=) <$> _rDescription])------- /See:/ 'gaDataDataTableRowsItemCItem' smart constructor.-newtype GaDataDataTableRowsItemCItem = GaDataDataTableRowsItemCItem'- { _gddtriciV :: Maybe Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GaDataDataTableRowsItemCItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gddtriciV'-gaDataDataTableRowsItemCItem- :: GaDataDataTableRowsItemCItem-gaDataDataTableRowsItemCItem =- GaDataDataTableRowsItemCItem'- { _gddtriciV = Nothing- }--gddtriciV :: Lens' GaDataDataTableRowsItemCItem (Maybe Text)-gddtriciV- = lens _gddtriciV (\ s a -> s{_gddtriciV = a})--instance FromJSON GaDataDataTableRowsItemCItem where- parseJSON- = withObject "GaDataDataTableRowsItemCItem"- (\ o ->- GaDataDataTableRowsItemCItem' <$> (o .:? "v"))--instance ToJSON GaDataDataTableRowsItemCItem where- toJSON GaDataDataTableRowsItemCItem'{..}- = object (catMaybes [("v" .=) <$> _gddtriciV])---- | Permissions the user has for this entity.------ /See:/ 'entityUserLinkPermissions' smart constructor.-data EntityUserLinkPermissions = EntityUserLinkPermissions'- { _eulpLocal :: !(Maybe [Text])- , _eulpEffective :: !(Maybe [Text])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'EntityUserLinkPermissions' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'eulpLocal'------ * 'eulpEffective'-entityUserLinkPermissions- :: EntityUserLinkPermissions-entityUserLinkPermissions =- EntityUserLinkPermissions'- { _eulpLocal = Nothing- , _eulpEffective = Nothing- }---- | Permissions that a user has been assigned at this very level. Does not--- include any implied or inherited permissions. Local permissions are--- modifiable.-eulpLocal :: Lens' EntityUserLinkPermissions [Text]-eulpLocal- = lens _eulpLocal (\ s a -> s{_eulpLocal = a}) .- _Default- . _Coerce---- | Effective permissions represent all the permissions that a user has for--- this entity. These include any implied permissions (e.g., EDIT implies--- VIEW) or inherited permissions from the parent entity. Effective--- permissions are read-only.-eulpEffective :: Lens' EntityUserLinkPermissions [Text]-eulpEffective- = lens _eulpEffective- (\ s a -> s{_eulpEffective = a})- . _Default- . _Coerce--instance FromJSON EntityUserLinkPermissions where- parseJSON- = withObject "EntityUserLinkPermissions"- (\ o ->- EntityUserLinkPermissions' <$>- (o .:? "local" .!= mempty) <*>- (o .:? "effective" .!= mempty))--instance ToJSON EntityUserLinkPermissions where- toJSON EntityUserLinkPermissions'{..}- = object- (catMaybes- [("local" .=) <$> _eulpLocal,- ("effective" .=) <$> _eulpEffective])---- | Information for the view (profile), for which the real time data was--- requested.------ /See:/ 'realtimeDataProFileInfo' smart constructor.-data RealtimeDataProFileInfo = RealtimeDataProFileInfo'- { _rdpfiWebPropertyId :: !(Maybe Text)- , _rdpfiProFileId :: !(Maybe Text)- , _rdpfiProFileName :: !(Maybe Text)- , _rdpfiAccountId :: !(Maybe Text)- , _rdpfiInternalWebPropertyId :: !(Maybe Text)- , _rdpfiTableId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'RealtimeDataProFileInfo' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rdpfiWebPropertyId'------ * 'rdpfiProFileId'------ * 'rdpfiProFileName'------ * 'rdpfiAccountId'------ * 'rdpfiInternalWebPropertyId'------ * 'rdpfiTableId'-realtimeDataProFileInfo- :: RealtimeDataProFileInfo-realtimeDataProFileInfo =- RealtimeDataProFileInfo'- { _rdpfiWebPropertyId = Nothing- , _rdpfiProFileId = Nothing- , _rdpfiProFileName = Nothing- , _rdpfiAccountId = Nothing- , _rdpfiInternalWebPropertyId = Nothing- , _rdpfiTableId = Nothing- }---- | Web Property ID to which this view (profile) belongs.-rdpfiWebPropertyId :: Lens' RealtimeDataProFileInfo (Maybe Text)-rdpfiWebPropertyId- = lens _rdpfiWebPropertyId- (\ s a -> s{_rdpfiWebPropertyId = a})---- | View (Profile) ID.-rdpfiProFileId :: Lens' RealtimeDataProFileInfo (Maybe Text)-rdpfiProFileId- = lens _rdpfiProFileId- (\ s a -> s{_rdpfiProFileId = a})---- | View (Profile) name.-rdpfiProFileName :: Lens' RealtimeDataProFileInfo (Maybe Text)-rdpfiProFileName- = lens _rdpfiProFileName- (\ s a -> s{_rdpfiProFileName = a})---- | Account ID to which this view (profile) belongs.-rdpfiAccountId :: Lens' RealtimeDataProFileInfo (Maybe Text)-rdpfiAccountId- = lens _rdpfiAccountId- (\ s a -> s{_rdpfiAccountId = a})---- | Internal ID for the web property to which this view (profile) belongs.-rdpfiInternalWebPropertyId :: Lens' RealtimeDataProFileInfo (Maybe Text)-rdpfiInternalWebPropertyId- = lens _rdpfiInternalWebPropertyId- (\ s a -> s{_rdpfiInternalWebPropertyId = a})---- | Table ID for view (profile).-rdpfiTableId :: Lens' RealtimeDataProFileInfo (Maybe Text)-rdpfiTableId- = lens _rdpfiTableId (\ s a -> s{_rdpfiTableId = a})--instance FromJSON RealtimeDataProFileInfo where- parseJSON- = withObject "RealtimeDataProFileInfo"- (\ o ->- RealtimeDataProFileInfo' <$>- (o .:? "webPropertyId") <*> (o .:? "profileId") <*>- (o .:? "profileName")- <*> (o .:? "accountId")- <*> (o .:? "internalWebPropertyId")- <*> (o .:? "tableId"))--instance ToJSON RealtimeDataProFileInfo where- toJSON RealtimeDataProFileInfo'{..}- = object- (catMaybes- [("webPropertyId" .=) <$> _rdpfiWebPropertyId,- ("profileId" .=) <$> _rdpfiProFileId,- ("profileName" .=) <$> _rdpfiProFileName,- ("accountId" .=) <$> _rdpfiAccountId,- ("internalWebPropertyId" .=) <$>- _rdpfiInternalWebPropertyId,- ("tableId" .=) <$> _rdpfiTableId])------- /See:/ 'mcfDataRowsItemItemConversionPathValueItem' smart constructor.-data McfDataRowsItemItemConversionPathValueItem = McfDataRowsItemItemConversionPathValueItem'- { _mdriicpviInteractionType :: !(Maybe Text)- , _mdriicpviNodeValue :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'McfDataRowsItemItemConversionPathValueItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'mdriicpviInteractionType'------ * 'mdriicpviNodeValue'-mcfDataRowsItemItemConversionPathValueItem- :: McfDataRowsItemItemConversionPathValueItem-mcfDataRowsItemItemConversionPathValueItem =- McfDataRowsItemItemConversionPathValueItem'- { _mdriicpviInteractionType = Nothing- , _mdriicpviNodeValue = Nothing- }---- | Type of an interaction on conversion path. Such as CLICK, IMPRESSION--- etc.-mdriicpviInteractionType :: Lens' McfDataRowsItemItemConversionPathValueItem (Maybe Text)-mdriicpviInteractionType- = lens _mdriicpviInteractionType- (\ s a -> s{_mdriicpviInteractionType = a})---- | Node value of an interaction on conversion path. Such as source, medium--- etc.-mdriicpviNodeValue :: Lens' McfDataRowsItemItemConversionPathValueItem (Maybe Text)-mdriicpviNodeValue- = lens _mdriicpviNodeValue- (\ s a -> s{_mdriicpviNodeValue = a})--instance FromJSON- McfDataRowsItemItemConversionPathValueItem where- parseJSON- = withObject- "McfDataRowsItemItemConversionPathValueItem"- (\ o ->- McfDataRowsItemItemConversionPathValueItem' <$>- (o .:? "interactionType") <*> (o .:? "nodeValue"))--instance ToJSON- McfDataRowsItemItemConversionPathValueItem where- toJSON- McfDataRowsItemItemConversionPathValueItem'{..}- = object- (catMaybes- [("interactionType" .=) <$>- _mdriicpviInteractionType,- ("nodeValue" .=) <$> _mdriicpviNodeValue])---- | JSON template for an Analytics filter expression.------ /See:/ 'filterExpression' smart constructor.-data FilterExpression = FilterExpression'- { _feFieldIndex :: !(Maybe (Textual Int32))- , _feField :: !(Maybe Text)- , _feKind :: !Text- , _feMatchType :: !(Maybe Text)- , _feCaseSensitive :: !(Maybe Bool)- , _feExpressionValue :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'FilterExpression' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'feFieldIndex'------ * 'feField'------ * 'feKind'------ * 'feMatchType'------ * 'feCaseSensitive'------ * 'feExpressionValue'-filterExpression- :: FilterExpression-filterExpression =- FilterExpression'- { _feFieldIndex = Nothing- , _feField = Nothing- , _feKind = "analytics#filterExpression"- , _feMatchType = Nothing- , _feCaseSensitive = Nothing- , _feExpressionValue = Nothing- }---- | The Index of the custom dimension. Set only if the field is a is--- CUSTOM_DIMENSION.-feFieldIndex :: Lens' FilterExpression (Maybe Int32)-feFieldIndex- = lens _feFieldIndex (\ s a -> s{_feFieldIndex = a})- . mapping _Coerce---- | Field to filter. Possible values: - Content and Traffic ---- PAGE_REQUEST_URI, - PAGE_HOSTNAME, - PAGE_TITLE, - REFERRAL, ---- COST_DATA_URI (Campaign target URL), - HIT_TYPE, - INTERNAL_SEARCH_TERM,--- - INTERNAL_SEARCH_TYPE, - SOURCE_PROPERTY_TRACKING_ID, - Campaign or--- AdGroup - CAMPAIGN_SOURCE, - CAMPAIGN_MEDIUM, - CAMPAIGN_NAME, ---- CAMPAIGN_AD_GROUP, - CAMPAIGN_TERM, - CAMPAIGN_CONTENT, - CAMPAIGN_CODE,--- - CAMPAIGN_REFERRAL_PATH, - E-Commerce - TRANSACTION_COUNTRY, ---- TRANSACTION_REGION, - TRANSACTION_CITY, - TRANSACTION_AFFILIATION (Store--- or order location), - ITEM_NAME, - ITEM_CODE, - ITEM_VARIATION, ---- TRANSACTION_ID, - TRANSACTION_CURRENCY_CODE, - PRODUCT_ACTION_TYPE, ---- Audience\/Users - BROWSER, - BROWSER_VERSION, - BROWSER_SIZE, ---- PLATFORM, - PLATFORM_VERSION, - LANGUAGE, - SCREEN_RESOLUTION, ---- SCREEN_COLORS, - JAVA_ENABLED (Boolean Field), - FLASH_VERSION, ---- GEO_SPEED (Connection speed), - VISITOR_TYPE, - GEO_ORGANIZATION (ISP--- organization), - GEO_DOMAIN, - GEO_IP_ADDRESS, - GEO_IP_VERSION, ---- Location - GEO_COUNTRY, - GEO_REGION, - GEO_CITY, - Event ---- EVENT_CATEGORY, - EVENT_ACTION, - EVENT_LABEL, - Other - CUSTOM_FIELD_1,--- - CUSTOM_FIELD_2, - USER_DEFINED_VALUE, - Application - APP_ID, ---- APP_INSTALLER_ID, - APP_NAME, - APP_VERSION, - SCREEN, - IS_APP (Boolean--- Field), - IS_FATAL_EXCEPTION (Boolean Field), - EXCEPTION_DESCRIPTION, ---- Mobile device - IS_MOBILE (Boolean Field, Deprecated. Use--- DEVICE_CATEGORY=mobile), - IS_TABLET (Boolean Field, Deprecated. Use--- DEVICE_CATEGORY=tablet), - DEVICE_CATEGORY, - MOBILE_HAS_QWERTY_KEYBOARD--- (Boolean Field), - MOBILE_HAS_NFC_SUPPORT (Boolean Field), ---- MOBILE_HAS_CELLULAR_RADIO (Boolean Field), - MOBILE_HAS_WIFI_SUPPORT--- (Boolean Field), - MOBILE_BRAND_NAME, - MOBILE_MODEL_NAME, ---- MOBILE_MARKETING_NAME, - MOBILE_POINTING_METHOD, - Social ---- SOCIAL_NETWORK, - SOCIAL_ACTION, - SOCIAL_ACTION_TARGET, - Custom--- dimension - CUSTOM_DIMENSION (See accompanying field index),-feField :: Lens' FilterExpression (Maybe Text)-feField = lens _feField (\ s a -> s{_feField = a})---- | Kind value for filter expression-feKind :: Lens' FilterExpression Text-feKind = lens _feKind (\ s a -> s{_feKind = a})---- | Match type for this filter. Possible values are BEGINS_WITH, EQUAL,--- ENDS_WITH, CONTAINS, or MATCHES. GEO_DOMAIN, GEO_IP_ADDRESS,--- PAGE_REQUEST_URI, or PAGE_HOSTNAME filters can use any match type; all--- other filters must use MATCHES.-feMatchType :: Lens' FilterExpression (Maybe Text)-feMatchType- = lens _feMatchType (\ s a -> s{_feMatchType = a})---- | Determines if the filter is case sensitive.-feCaseSensitive :: Lens' FilterExpression (Maybe Bool)-feCaseSensitive- = lens _feCaseSensitive- (\ s a -> s{_feCaseSensitive = a})---- | Filter expression value-feExpressionValue :: Lens' FilterExpression (Maybe Text)-feExpressionValue- = lens _feExpressionValue- (\ s a -> s{_feExpressionValue = a})--instance FromJSON FilterExpression where- parseJSON- = withObject "FilterExpression"- (\ o ->- FilterExpression' <$>- (o .:? "fieldIndex") <*> (o .:? "field") <*>- (o .:? "kind" .!= "analytics#filterExpression")- <*> (o .:? "matchType")- <*> (o .:? "caseSensitive")- <*> (o .:? "expressionValue"))--instance ToJSON FilterExpression where- toJSON FilterExpression'{..}- = object- (catMaybes- [("fieldIndex" .=) <$> _feFieldIndex,- ("field" .=) <$> _feField, Just ("kind" .= _feKind),- ("matchType" .=) <$> _feMatchType,- ("caseSensitive" .=) <$> _feCaseSensitive,- ("expressionValue" .=) <$> _feExpressionValue])---- | JSON template for a linked view (profile).------ /See:/ 'proFileRef' smart constructor.-data ProFileRef = ProFileRef'- { _pfrWebPropertyId :: !(Maybe Text)- , _pfrKind :: !Text- , _pfrHref :: !(Maybe Text)- , _pfrAccountId :: !(Maybe Text)- , _pfrName :: !(Maybe Text)- , _pfrInternalWebPropertyId :: !(Maybe Text)- , _pfrId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ProFileRef' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pfrWebPropertyId'------ * 'pfrKind'------ * 'pfrHref'------ * 'pfrAccountId'------ * 'pfrName'------ * 'pfrInternalWebPropertyId'------ * 'pfrId'-proFileRef- :: ProFileRef-proFileRef =- ProFileRef'- { _pfrWebPropertyId = Nothing- , _pfrKind = "analytics#profileRef"- , _pfrHref = Nothing- , _pfrAccountId = Nothing- , _pfrName = Nothing- , _pfrInternalWebPropertyId = Nothing- , _pfrId = Nothing- }---- | Web property ID of the form UA-XXXXX-YY to which this view (profile)--- belongs.-pfrWebPropertyId :: Lens' ProFileRef (Maybe Text)-pfrWebPropertyId- = lens _pfrWebPropertyId- (\ s a -> s{_pfrWebPropertyId = a})---- | Analytics view (profile) reference.-pfrKind :: Lens' ProFileRef Text-pfrKind = lens _pfrKind (\ s a -> s{_pfrKind = a})---- | Link for this view (profile).-pfrHref :: Lens' ProFileRef (Maybe Text)-pfrHref = lens _pfrHref (\ s a -> s{_pfrHref = a})---- | Account ID to which this view (profile) belongs.-pfrAccountId :: Lens' ProFileRef (Maybe Text)-pfrAccountId- = lens _pfrAccountId (\ s a -> s{_pfrAccountId = a})---- | Name of this view (profile).-pfrName :: Lens' ProFileRef (Maybe Text)-pfrName = lens _pfrName (\ s a -> s{_pfrName = a})---- | Internal ID for the web property to which this view (profile) belongs.-pfrInternalWebPropertyId :: Lens' ProFileRef (Maybe Text)-pfrInternalWebPropertyId- = lens _pfrInternalWebPropertyId- (\ s a -> s{_pfrInternalWebPropertyId = a})---- | View (Profile) ID.-pfrId :: Lens' ProFileRef (Maybe Text)-pfrId = lens _pfrId (\ s a -> s{_pfrId = a})--instance FromJSON ProFileRef where- parseJSON- = withObject "ProFileRef"- (\ o ->- ProFileRef' <$>- (o .:? "webPropertyId") <*>- (o .:? "kind" .!= "analytics#profileRef")- <*> (o .:? "href")- <*> (o .:? "accountId")- <*> (o .:? "name")- <*> (o .:? "internalWebPropertyId")- <*> (o .:? "id"))--instance ToJSON ProFileRef where- toJSON ProFileRef'{..}- = object- (catMaybes- [("webPropertyId" .=) <$> _pfrWebPropertyId,- Just ("kind" .= _pfrKind), ("href" .=) <$> _pfrHref,- ("accountId" .=) <$> _pfrAccountId,- ("name" .=) <$> _pfrName,- ("internalWebPropertyId" .=) <$>- _pfrInternalWebPropertyId,- ("id" .=) <$> _pfrId])---- | An account collection provides a list of Analytics accounts to which a--- user has access. The account collection is the entry point to all--- management information. Each resource in the collection corresponds to a--- single Analytics account.------ /See:/ 'accounts' smart constructor.-data Accounts = Accounts'- { _aNextLink :: !(Maybe Text)- , _aItemsPerPage :: !(Maybe (Textual Int32))- , _aKind :: !Text- , _aUsername :: !(Maybe Text)- , _aItems :: !(Maybe [Account])- , _aTotalResults :: !(Maybe (Textual Int32))- , _aStartIndex :: !(Maybe (Textual Int32))- , _aPreviousLink :: !(Maybe Text)- } 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:------ * 'aNextLink'------ * 'aItemsPerPage'------ * 'aKind'------ * 'aUsername'------ * 'aItems'------ * 'aTotalResults'------ * 'aStartIndex'------ * 'aPreviousLink'-accounts- :: Accounts-accounts =- Accounts'- { _aNextLink = Nothing- , _aItemsPerPage = Nothing- , _aKind = "analytics#accounts"- , _aUsername = Nothing- , _aItems = Nothing- , _aTotalResults = Nothing- , _aStartIndex = Nothing- , _aPreviousLink = Nothing- }---- | Next link for this account collection.-aNextLink :: Lens' Accounts (Maybe Text)-aNextLink- = lens _aNextLink (\ s a -> s{_aNextLink = a})---- | The maximum number of entries the response can contain, regardless of--- the actual number of entries returned. Its value ranges from 1 to 1000--- with a value of 1000 by default, or otherwise specified by the--- max-results query parameter.-aItemsPerPage :: Lens' Accounts (Maybe Int32)-aItemsPerPage- = lens _aItemsPerPage- (\ s a -> s{_aItemsPerPage = a})- . mapping _Coerce---- | Collection type.-aKind :: Lens' Accounts Text-aKind = lens _aKind (\ s a -> s{_aKind = a})---- | Email ID of the authenticated user-aUsername :: Lens' Accounts (Maybe Text)-aUsername- = lens _aUsername (\ s a -> s{_aUsername = a})---- | A list of accounts.-aItems :: Lens' Accounts [Account]-aItems- = lens _aItems (\ s a -> s{_aItems = a}) . _Default .- _Coerce---- | The total number of results for the query, regardless of the number of--- results in the response.-aTotalResults :: Lens' Accounts (Maybe Int32)-aTotalResults- = lens _aTotalResults- (\ s a -> s{_aTotalResults = a})- . mapping _Coerce---- | The starting index of the entries, which is 1 by default or otherwise--- specified by the start-index query parameter.-aStartIndex :: Lens' Accounts (Maybe Int32)-aStartIndex- = lens _aStartIndex (\ s a -> s{_aStartIndex = a}) .- mapping _Coerce---- | Previous link for this account collection.-aPreviousLink :: Lens' Accounts (Maybe Text)-aPreviousLink- = lens _aPreviousLink- (\ s a -> s{_aPreviousLink = a})--instance FromJSON Accounts where- parseJSON- = withObject "Accounts"- (\ o ->- Accounts' <$>- (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>- (o .:? "kind" .!= "analytics#accounts")- <*> (o .:? "username")- <*> (o .:? "items" .!= mempty)- <*> (o .:? "totalResults")- <*> (o .:? "startIndex")- <*> (o .:? "previousLink"))--instance ToJSON Accounts where- toJSON Accounts'{..}- = object- (catMaybes- [("nextLink" .=) <$> _aNextLink,- ("itemsPerPage" .=) <$> _aItemsPerPage,- Just ("kind" .= _aKind),- ("username" .=) <$> _aUsername,- ("items" .=) <$> _aItems,- ("totalResults" .=) <$> _aTotalResults,- ("startIndex" .=) <$> _aStartIndex,- ("previousLink" .=) <$> _aPreviousLink])---- | An experiment collection lists Analytics experiments to which the user--- has access. Each view (profile) can have a set of experiments. Each--- resource in the Experiment collection corresponds to a single Analytics--- experiment.------ /See:/ 'experiments' smart constructor.-data Experiments = Experiments'- { _eNextLink :: !(Maybe Text)- , _eItemsPerPage :: !(Maybe (Textual Int32))- , _eKind :: !Text- , _eUsername :: !(Maybe Text)- , _eItems :: !(Maybe [Experiment])- , _eTotalResults :: !(Maybe (Textual Int32))- , _eStartIndex :: !(Maybe (Textual Int32))- , _ePreviousLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Experiments' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'eNextLink'------ * 'eItemsPerPage'------ * 'eKind'------ * 'eUsername'------ * 'eItems'------ * 'eTotalResults'------ * 'eStartIndex'------ * 'ePreviousLink'-experiments- :: Experiments-experiments =- Experiments'- { _eNextLink = Nothing- , _eItemsPerPage = Nothing- , _eKind = "analytics#experiments"- , _eUsername = Nothing- , _eItems = Nothing- , _eTotalResults = Nothing- , _eStartIndex = Nothing- , _ePreviousLink = Nothing- }---- | Link to next page for this experiment collection.-eNextLink :: Lens' Experiments (Maybe Text)-eNextLink- = lens _eNextLink (\ s a -> s{_eNextLink = a})---- | The maximum number of resources the response can contain, regardless of--- the actual number of resources returned. Its value ranges from 1 to 1000--- with a value of 1000 by default, or otherwise specified by the--- max-results query parameter.-eItemsPerPage :: Lens' Experiments (Maybe Int32)-eItemsPerPage- = lens _eItemsPerPage- (\ s a -> s{_eItemsPerPage = a})- . mapping _Coerce---- | Collection type.-eKind :: Lens' Experiments Text-eKind = lens _eKind (\ s a -> s{_eKind = a})---- | Email ID of the authenticated user-eUsername :: Lens' Experiments (Maybe Text)-eUsername- = lens _eUsername (\ s a -> s{_eUsername = a})---- | A list of experiments.-eItems :: Lens' Experiments [Experiment]-eItems- = lens _eItems (\ s a -> s{_eItems = a}) . _Default .- _Coerce---- | The total number of results for the query, regardless of the number of--- resources in the result.-eTotalResults :: Lens' Experiments (Maybe Int32)-eTotalResults- = lens _eTotalResults- (\ s a -> s{_eTotalResults = a})- . mapping _Coerce---- | The starting index of the resources, which is 1 by default or otherwise--- specified by the start-index query parameter.-eStartIndex :: Lens' Experiments (Maybe Int32)-eStartIndex- = lens _eStartIndex (\ s a -> s{_eStartIndex = a}) .- mapping _Coerce---- | Link to previous page for this experiment collection.-ePreviousLink :: Lens' Experiments (Maybe Text)-ePreviousLink- = lens _ePreviousLink- (\ s a -> s{_ePreviousLink = a})--instance FromJSON Experiments where- parseJSON- = withObject "Experiments"- (\ o ->- Experiments' <$>- (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>- (o .:? "kind" .!= "analytics#experiments")- <*> (o .:? "username")- <*> (o .:? "items" .!= mempty)- <*> (o .:? "totalResults")- <*> (o .:? "startIndex")- <*> (o .:? "previousLink"))--instance ToJSON Experiments where- toJSON Experiments'{..}- = object- (catMaybes- [("nextLink" .=) <$> _eNextLink,- ("itemsPerPage" .=) <$> _eItemsPerPage,- Just ("kind" .= _eKind),- ("username" .=) <$> _eUsername,- ("items" .=) <$> _eItems,- ("totalResults" .=) <$> _eTotalResults,- ("startIndex" .=) <$> _eStartIndex,- ("previousLink" .=) <$> _ePreviousLink])---- | Parent link for an experiment. Points to the view (profile) to which--- this experiment belongs.------ /See:/ 'experimentParentLink' smart constructor.-data ExperimentParentLink = ExperimentParentLink'- { _eplHref :: !(Maybe Text)- , _eplType :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ExperimentParentLink' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'eplHref'------ * 'eplType'-experimentParentLink- :: ExperimentParentLink-experimentParentLink =- ExperimentParentLink'- { _eplHref = Nothing- , _eplType = "analytics#profile"- }---- | Link to the view (profile) to which this experiment belongs. This field--- is read-only.-eplHref :: Lens' ExperimentParentLink (Maybe Text)-eplHref = lens _eplHref (\ s a -> s{_eplHref = a})---- | Value is \"analytics#profile\". This field is read-only.-eplType :: Lens' ExperimentParentLink Text-eplType = lens _eplType (\ s a -> s{_eplType = a})--instance FromJSON ExperimentParentLink where- parseJSON- = withObject "ExperimentParentLink"- (\ o ->- ExperimentParentLink' <$>- (o .:? "href") <*>- (o .:? "type" .!= "analytics#profile"))--instance ToJSON ExperimentParentLink where- toJSON ExperimentParentLink'{..}- = object- (catMaybes- [("href" .=) <$> _eplHref,- Just ("type" .= _eplType)])---- | Download details for a file stored in Google Drive.------ /See:/ 'unSampledReportDriveDownloadDetails' smart constructor.-newtype UnSampledReportDriveDownloadDetails = UnSampledReportDriveDownloadDetails'- { _usrdddDocumentId :: Maybe Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'UnSampledReportDriveDownloadDetails' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'usrdddDocumentId'-unSampledReportDriveDownloadDetails- :: UnSampledReportDriveDownloadDetails-unSampledReportDriveDownloadDetails =- UnSampledReportDriveDownloadDetails'- { _usrdddDocumentId = Nothing- }---- | Id of the document\/file containing the report data.-usrdddDocumentId :: Lens' UnSampledReportDriveDownloadDetails (Maybe Text)-usrdddDocumentId- = lens _usrdddDocumentId- (\ s a -> s{_usrdddDocumentId = a})--instance FromJSON UnSampledReportDriveDownloadDetails- where- parseJSON- = withObject "UnSampledReportDriveDownloadDetails"- (\ o ->- UnSampledReportDriveDownloadDetails' <$>- (o .:? "documentId"))--instance ToJSON UnSampledReportDriveDownloadDetails- where- toJSON UnSampledReportDriveDownloadDetails'{..}- = object- (catMaybes [("documentId" .=) <$> _usrdddDocumentId])---- | Information for the view (profile), for which the Analytics data was--- requested.------ /See:/ 'mcfDataProFileInfo' smart constructor.-data McfDataProFileInfo = McfDataProFileInfo'- { _mdpfiWebPropertyId :: !(Maybe Text)- , _mdpfiProFileId :: !(Maybe Text)- , _mdpfiProFileName :: !(Maybe Text)- , _mdpfiAccountId :: !(Maybe Text)- , _mdpfiInternalWebPropertyId :: !(Maybe Text)- , _mdpfiTableId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'McfDataProFileInfo' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'mdpfiWebPropertyId'------ * 'mdpfiProFileId'------ * 'mdpfiProFileName'------ * 'mdpfiAccountId'------ * 'mdpfiInternalWebPropertyId'------ * 'mdpfiTableId'-mcfDataProFileInfo- :: McfDataProFileInfo-mcfDataProFileInfo =- McfDataProFileInfo'- { _mdpfiWebPropertyId = Nothing- , _mdpfiProFileId = Nothing- , _mdpfiProFileName = Nothing- , _mdpfiAccountId = Nothing- , _mdpfiInternalWebPropertyId = Nothing- , _mdpfiTableId = Nothing- }---- | Web Property ID to which this view (profile) belongs.-mdpfiWebPropertyId :: Lens' McfDataProFileInfo (Maybe Text)-mdpfiWebPropertyId- = lens _mdpfiWebPropertyId- (\ s a -> s{_mdpfiWebPropertyId = a})---- | View (Profile) ID.-mdpfiProFileId :: Lens' McfDataProFileInfo (Maybe Text)-mdpfiProFileId- = lens _mdpfiProFileId- (\ s a -> s{_mdpfiProFileId = a})---- | View (Profile) name.-mdpfiProFileName :: Lens' McfDataProFileInfo (Maybe Text)-mdpfiProFileName- = lens _mdpfiProFileName- (\ s a -> s{_mdpfiProFileName = a})---- | Account ID to which this view (profile) belongs.-mdpfiAccountId :: Lens' McfDataProFileInfo (Maybe Text)-mdpfiAccountId- = lens _mdpfiAccountId- (\ s a -> s{_mdpfiAccountId = a})---- | Internal ID for the web property to which this view (profile) belongs.-mdpfiInternalWebPropertyId :: Lens' McfDataProFileInfo (Maybe Text)-mdpfiInternalWebPropertyId- = lens _mdpfiInternalWebPropertyId- (\ s a -> s{_mdpfiInternalWebPropertyId = a})---- | Table ID for view (profile).-mdpfiTableId :: Lens' McfDataProFileInfo (Maybe Text)-mdpfiTableId- = lens _mdpfiTableId (\ s a -> s{_mdpfiTableId = a})--instance FromJSON McfDataProFileInfo where- parseJSON- = withObject "McfDataProFileInfo"- (\ o ->- McfDataProFileInfo' <$>- (o .:? "webPropertyId") <*> (o .:? "profileId") <*>- (o .:? "profileName")- <*> (o .:? "accountId")- <*> (o .:? "internalWebPropertyId")- <*> (o .:? "tableId"))--instance ToJSON McfDataProFileInfo where- toJSON McfDataProFileInfo'{..}- = object- (catMaybes- [("webPropertyId" .=) <$> _mdpfiWebPropertyId,- ("profileId" .=) <$> _mdpfiProFileId,- ("profileName" .=) <$> _mdpfiProFileName,- ("accountId" .=) <$> _mdpfiAccountId,- ("internalWebPropertyId" .=) <$>- _mdpfiInternalWebPropertyId,- ("tableId" .=) <$> _mdpfiTableId])---- | Lists Analytics custom data sources to which the user has access. Each--- resource in the collection corresponds to a single Analytics custom data--- source.------ /See:/ 'customDataSources' smart constructor.-data CustomDataSources = CustomDataSources'- { _cdsNextLink :: !(Maybe Text)- , _cdsItemsPerPage :: !(Maybe (Textual Int32))- , _cdsKind :: !Text- , _cdsUsername :: !(Maybe Text)- , _cdsItems :: !(Maybe [CustomDataSource])- , _cdsTotalResults :: !(Maybe (Textual Int32))- , _cdsStartIndex :: !(Maybe (Textual Int32))- , _cdsPreviousLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'CustomDataSources' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cdsNextLink'------ * 'cdsItemsPerPage'------ * 'cdsKind'------ * 'cdsUsername'------ * 'cdsItems'------ * 'cdsTotalResults'------ * 'cdsStartIndex'------ * 'cdsPreviousLink'-customDataSources- :: CustomDataSources-customDataSources =- CustomDataSources'- { _cdsNextLink = Nothing- , _cdsItemsPerPage = Nothing- , _cdsKind = "analytics#customDataSources"- , _cdsUsername = Nothing- , _cdsItems = Nothing- , _cdsTotalResults = Nothing- , _cdsStartIndex = Nothing- , _cdsPreviousLink = Nothing- }---- | Link to next page for this custom data source collection.-cdsNextLink :: Lens' CustomDataSources (Maybe Text)-cdsNextLink- = lens _cdsNextLink (\ s a -> s{_cdsNextLink = a})---- | The maximum number of resources the response can contain, regardless of--- the actual number of resources returned. Its value ranges from 1 to 1000--- with a value of 1000 by default, or otherwise specified by the--- max-results query parameter.-cdsItemsPerPage :: Lens' CustomDataSources (Maybe Int32)-cdsItemsPerPage- = lens _cdsItemsPerPage- (\ s a -> s{_cdsItemsPerPage = a})- . mapping _Coerce---- | Collection type.-cdsKind :: Lens' CustomDataSources Text-cdsKind = lens _cdsKind (\ s a -> s{_cdsKind = a})---- | Email ID of the authenticated user-cdsUsername :: Lens' CustomDataSources (Maybe Text)-cdsUsername- = lens _cdsUsername (\ s a -> s{_cdsUsername = a})---- | Collection of custom data sources.-cdsItems :: Lens' CustomDataSources [CustomDataSource]-cdsItems- = lens _cdsItems (\ s a -> s{_cdsItems = a}) .- _Default- . _Coerce---- | The total number of results for the query, regardless of the number of--- results in the response.-cdsTotalResults :: Lens' CustomDataSources (Maybe Int32)-cdsTotalResults- = lens _cdsTotalResults- (\ s a -> s{_cdsTotalResults = a})- . mapping _Coerce---- | The starting index of the resources, which is 1 by default or otherwise--- specified by the start-index query parameter.-cdsStartIndex :: Lens' CustomDataSources (Maybe Int32)-cdsStartIndex- = lens _cdsStartIndex- (\ s a -> s{_cdsStartIndex = a})- . mapping _Coerce---- | Link to previous page for this custom data source collection.-cdsPreviousLink :: Lens' CustomDataSources (Maybe Text)-cdsPreviousLink- = lens _cdsPreviousLink- (\ s a -> s{_cdsPreviousLink = a})--instance FromJSON CustomDataSources where- parseJSON- = withObject "CustomDataSources"- (\ o ->- CustomDataSources' <$>- (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>- (o .:? "kind" .!= "analytics#customDataSources")- <*> (o .:? "username")- <*> (o .:? "items" .!= mempty)- <*> (o .:? "totalResults")- <*> (o .:? "startIndex")- <*> (o .:? "previousLink"))--instance ToJSON CustomDataSources where- toJSON CustomDataSources'{..}- = object- (catMaybes- [("nextLink" .=) <$> _cdsNextLink,- ("itemsPerPage" .=) <$> _cdsItemsPerPage,- Just ("kind" .= _cdsKind),- ("username" .=) <$> _cdsUsername,- ("items" .=) <$> _cdsItems,- ("totalResults" .=) <$> _cdsTotalResults,- ("startIndex" .=) <$> _cdsStartIndex,- ("previousLink" .=) <$> _cdsPreviousLink])---- | Child link for this web property. Points to the list of views (profiles)--- for this web property.------ /See:/ 'webPropertyChildLink' smart constructor.-data WebPropertyChildLink = WebPropertyChildLink'- { _wpclHref :: !(Maybe Text)- , _wpclType :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'WebPropertyChildLink' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'wpclHref'------ * 'wpclType'-webPropertyChildLink- :: WebPropertyChildLink-webPropertyChildLink =- WebPropertyChildLink'- { _wpclHref = Nothing- , _wpclType = "analytics#profiles"- }---- | Link to the list of views (profiles) for this web property.-wpclHref :: Lens' WebPropertyChildLink (Maybe Text)-wpclHref = lens _wpclHref (\ s a -> s{_wpclHref = a})---- | Type of the parent link. Its value is \"analytics#profiles\".-wpclType :: Lens' WebPropertyChildLink Text-wpclType = lens _wpclType (\ s a -> s{_wpclType = a})--instance FromJSON WebPropertyChildLink where- parseJSON- = withObject "WebPropertyChildLink"- (\ o ->- WebPropertyChildLink' <$>- (o .:? "href") <*>- (o .:? "type" .!= "analytics#profiles"))--instance ToJSON WebPropertyChildLink where- toJSON WebPropertyChildLink'{..}- = object- (catMaybes- [("href" .=) <$> _wpclHref,- Just ("type" .= _wpclType)])---- | JSON template for a hash Client Id response resource.------ /See:/ 'hashClientIdResponse' smart constructor.-data HashClientIdResponse = HashClientIdResponse'- { _hcirClientId :: !(Maybe Text)- , _hcirWebPropertyId :: !(Maybe Text)- , _hcirKind :: !Text- , _hcirHashedClientId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'HashClientIdResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'hcirClientId'------ * 'hcirWebPropertyId'------ * 'hcirKind'------ * 'hcirHashedClientId'-hashClientIdResponse- :: HashClientIdResponse-hashClientIdResponse =- HashClientIdResponse'- { _hcirClientId = Nothing- , _hcirWebPropertyId = Nothing- , _hcirKind = "analytics#hashClientIdResponse"- , _hcirHashedClientId = Nothing- }--hcirClientId :: Lens' HashClientIdResponse (Maybe Text)-hcirClientId- = lens _hcirClientId (\ s a -> s{_hcirClientId = a})--hcirWebPropertyId :: Lens' HashClientIdResponse (Maybe Text)-hcirWebPropertyId- = lens _hcirWebPropertyId- (\ s a -> s{_hcirWebPropertyId = a})--hcirKind :: Lens' HashClientIdResponse Text-hcirKind = lens _hcirKind (\ s a -> s{_hcirKind = a})--hcirHashedClientId :: Lens' HashClientIdResponse (Maybe Text)-hcirHashedClientId- = lens _hcirHashedClientId- (\ s a -> s{_hcirHashedClientId = a})--instance FromJSON HashClientIdResponse where- parseJSON- = withObject "HashClientIdResponse"- (\ o ->- HashClientIdResponse' <$>- (o .:? "clientId") <*> (o .:? "webPropertyId") <*>- (o .:? "kind" .!= "analytics#hashClientIdResponse")- <*> (o .:? "hashedClientId"))--instance ToJSON HashClientIdResponse where- toJSON HashClientIdResponse'{..}- = object- (catMaybes- [("clientId" .=) <$> _hcirClientId,- ("webPropertyId" .=) <$> _hcirWebPropertyId,- Just ("kind" .= _hcirKind),- ("hashedClientId" .=) <$> _hcirHashedClientId])---- | Multi-Channel Funnels data for a given view (profile).------ /See:/ 'mcfData' smart constructor.-data McfData = McfData'- { _mdNextLink :: !(Maybe Text)- , _mdSampleSpace :: !(Maybe (Textual Int64))- , _mdItemsPerPage :: !(Maybe (Textual Int32))- , _mdProFileInfo :: !(Maybe McfDataProFileInfo)- , _mdKind :: !Text- , _mdSampleSize :: !(Maybe (Textual Int64))- , _mdRows :: !(Maybe [[McfDataRowsItemItem]])- , _mdSelfLink :: !(Maybe Text)- , _mdQuery :: !(Maybe McfDataQuery)- , _mdColumnHeaders :: !(Maybe [McfDataColumnHeadersItem])- , _mdId :: !(Maybe Text)- , _mdTotalResults :: !(Maybe (Textual Int32))- , _mdContainsSampledData :: !(Maybe Bool)- , _mdTotalsForAllResults :: !(Maybe McfDataTotalsForAllResults)- , _mdPreviousLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'McfData' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'mdNextLink'------ * 'mdSampleSpace'------ * 'mdItemsPerPage'------ * 'mdProFileInfo'------ * 'mdKind'------ * 'mdSampleSize'------ * 'mdRows'------ * 'mdSelfLink'------ * 'mdQuery'------ * 'mdColumnHeaders'------ * 'mdId'------ * 'mdTotalResults'------ * 'mdContainsSampledData'------ * 'mdTotalsForAllResults'------ * 'mdPreviousLink'-mcfData- :: McfData-mcfData =- McfData'- { _mdNextLink = Nothing- , _mdSampleSpace = Nothing- , _mdItemsPerPage = Nothing- , _mdProFileInfo = Nothing- , _mdKind = "analytics#mcfData"- , _mdSampleSize = Nothing- , _mdRows = Nothing- , _mdSelfLink = Nothing- , _mdQuery = Nothing- , _mdColumnHeaders = Nothing- , _mdId = Nothing- , _mdTotalResults = Nothing- , _mdContainsSampledData = Nothing- , _mdTotalsForAllResults = Nothing- , _mdPreviousLink = Nothing- }---- | Link to next page for this Analytics data query.-mdNextLink :: Lens' McfData (Maybe Text)-mdNextLink- = lens _mdNextLink (\ s a -> s{_mdNextLink = a})---- | Total size of the sample space from which the samples were selected.-mdSampleSpace :: Lens' McfData (Maybe Int64)-mdSampleSpace- = lens _mdSampleSpace- (\ s a -> s{_mdSampleSpace = a})- . mapping _Coerce---- | The maximum number of rows the response can contain, regardless of the--- actual number of rows returned. Its value ranges from 1 to 10,000 with a--- value of 1000 by default, or otherwise specified by the max-results--- query parameter.-mdItemsPerPage :: Lens' McfData (Maybe Int32)-mdItemsPerPage- = lens _mdItemsPerPage- (\ s a -> s{_mdItemsPerPage = a})- . mapping _Coerce---- | Information for the view (profile), for which the Analytics data was--- requested.-mdProFileInfo :: Lens' McfData (Maybe McfDataProFileInfo)-mdProFileInfo- = lens _mdProFileInfo- (\ s a -> s{_mdProFileInfo = a})---- | Resource type.-mdKind :: Lens' McfData Text-mdKind = lens _mdKind (\ s a -> s{_mdKind = a})---- | The number of samples used to calculate the result.-mdSampleSize :: Lens' McfData (Maybe Int64)-mdSampleSize- = lens _mdSampleSize (\ s a -> s{_mdSampleSize = a})- . mapping _Coerce---- | Analytics data rows, where each row contains a list of dimension values--- followed by the metric values. The order of dimensions and metrics is--- same as specified in the request.-mdRows :: Lens' McfData [[McfDataRowsItemItem]]-mdRows- = lens _mdRows (\ s a -> s{_mdRows = a}) . _Default .- _Coerce---- | Link to this page.-mdSelfLink :: Lens' McfData (Maybe Text)-mdSelfLink- = lens _mdSelfLink (\ s a -> s{_mdSelfLink = a})---- | Analytics data request query parameters.-mdQuery :: Lens' McfData (Maybe McfDataQuery)-mdQuery = lens _mdQuery (\ s a -> s{_mdQuery = a})---- | Column headers that list dimension names followed by the metric names.--- The order of dimensions and metrics is same as specified in the request.-mdColumnHeaders :: Lens' McfData [McfDataColumnHeadersItem]-mdColumnHeaders- = lens _mdColumnHeaders- (\ s a -> s{_mdColumnHeaders = a})- . _Default- . _Coerce---- | Unique ID for this data response.-mdId :: Lens' McfData (Maybe Text)-mdId = lens _mdId (\ s a -> s{_mdId = a})---- | The total number of rows for the query, regardless of the number of rows--- in the response.-mdTotalResults :: Lens' McfData (Maybe Int32)-mdTotalResults- = lens _mdTotalResults- (\ s a -> s{_mdTotalResults = a})- . mapping _Coerce---- | Determines if the Analytics data contains sampled data.-mdContainsSampledData :: Lens' McfData (Maybe Bool)-mdContainsSampledData- = lens _mdContainsSampledData- (\ s a -> s{_mdContainsSampledData = a})---- | Total values for the requested metrics over all the results, not just--- the results returned in this response. The order of the metric totals is--- same as the metric order specified in the request.-mdTotalsForAllResults :: Lens' McfData (Maybe McfDataTotalsForAllResults)-mdTotalsForAllResults- = lens _mdTotalsForAllResults- (\ s a -> s{_mdTotalsForAllResults = a})---- | Link to previous page for this Analytics data query.-mdPreviousLink :: Lens' McfData (Maybe Text)-mdPreviousLink- = lens _mdPreviousLink- (\ s a -> s{_mdPreviousLink = a})--instance FromJSON McfData where- parseJSON- = withObject "McfData"- (\ o ->- McfData' <$>- (o .:? "nextLink") <*> (o .:? "sampleSpace") <*>- (o .:? "itemsPerPage")- <*> (o .:? "profileInfo")- <*> (o .:? "kind" .!= "analytics#mcfData")- <*> (o .:? "sampleSize")- <*> (o .:? "rows" .!= mempty)- <*> (o .:? "selfLink")- <*> (o .:? "query")- <*> (o .:? "columnHeaders" .!= mempty)- <*> (o .:? "id")- <*> (o .:? "totalResults")- <*> (o .:? "containsSampledData")- <*> (o .:? "totalsForAllResults")- <*> (o .:? "previousLink"))--instance ToJSON McfData where- toJSON McfData'{..}- = object- (catMaybes- [("nextLink" .=) <$> _mdNextLink,- ("sampleSpace" .=) <$> _mdSampleSpace,- ("itemsPerPage" .=) <$> _mdItemsPerPage,- ("profileInfo" .=) <$> _mdProFileInfo,- Just ("kind" .= _mdKind),- ("sampleSize" .=) <$> _mdSampleSize,- ("rows" .=) <$> _mdRows,- ("selfLink" .=) <$> _mdSelfLink,- ("query" .=) <$> _mdQuery,- ("columnHeaders" .=) <$> _mdColumnHeaders,- ("id" .=) <$> _mdId,- ("totalResults" .=) <$> _mdTotalResults,- ("containsSampledData" .=) <$>- _mdContainsSampledData,- ("totalsForAllResults" .=) <$>- _mdTotalsForAllResults,- ("previousLink" .=) <$> _mdPreviousLink])---- | JSON template for a user reference.------ /See:/ 'userRef' smart constructor.-data UserRef = UserRef'- { _urEmail :: !(Maybe Text)- , _urKind :: !Text- , _urId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'UserRef' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'urEmail'------ * 'urKind'------ * 'urId'-userRef- :: UserRef-userRef =- UserRef'- { _urEmail = Nothing- , _urKind = "analytics#userRef"- , _urId = Nothing- }---- | Email ID of this user.-urEmail :: Lens' UserRef (Maybe Text)-urEmail = lens _urEmail (\ s a -> s{_urEmail = a})--urKind :: Lens' UserRef Text-urKind = lens _urKind (\ s a -> s{_urKind = a})---- | User ID.-urId :: Lens' UserRef (Maybe Text)-urId = lens _urId (\ s a -> s{_urId = a})--instance FromJSON UserRef where- parseJSON- = withObject "UserRef"- (\ o ->- UserRef' <$>- (o .:? "email") <*>- (o .:? "kind" .!= "analytics#userRef")- <*> (o .:? "id"))--instance ToJSON UserRef where- toJSON UserRef'{..}- = object- (catMaybes- [("email" .=) <$> _urEmail, Just ("kind" .= _urKind),- ("id" .=) <$> _urId])---- | Details for the goal of the type VISIT_NUM_PAGES.------ /See:/ 'goalVisitNumPagesDetails' smart constructor.-data GoalVisitNumPagesDetails = GoalVisitNumPagesDetails'- { _gvnpdComparisonValue :: !(Maybe (Textual Int64))- , _gvnpdComparisonType :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoalVisitNumPagesDetails' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gvnpdComparisonValue'------ * 'gvnpdComparisonType'-goalVisitNumPagesDetails- :: GoalVisitNumPagesDetails-goalVisitNumPagesDetails =- GoalVisitNumPagesDetails'- { _gvnpdComparisonValue = Nothing- , _gvnpdComparisonType = Nothing- }---- | Value used for this comparison.-gvnpdComparisonValue :: Lens' GoalVisitNumPagesDetails (Maybe Int64)-gvnpdComparisonValue- = lens _gvnpdComparisonValue- (\ s a -> s{_gvnpdComparisonValue = a})- . mapping _Coerce---- | Type of comparison. Possible values are LESS_THAN, GREATER_THAN, or--- EQUAL.-gvnpdComparisonType :: Lens' GoalVisitNumPagesDetails (Maybe Text)-gvnpdComparisonType- = lens _gvnpdComparisonType- (\ s a -> s{_gvnpdComparisonType = a})--instance FromJSON GoalVisitNumPagesDetails where- parseJSON- = withObject "GoalVisitNumPagesDetails"- (\ o ->- GoalVisitNumPagesDetails' <$>- (o .:? "comparisonValue") <*>- (o .:? "comparisonType"))--instance ToJSON GoalVisitNumPagesDetails where- toJSON GoalVisitNumPagesDetails'{..}- = object- (catMaybes- [("comparisonValue" .=) <$> _gvnpdComparisonValue,- ("comparisonType" .=) <$> _gvnpdComparisonType])------- /See:/ 'realtimeDataColumnHeadersItem' smart constructor.-data RealtimeDataColumnHeadersItem = RealtimeDataColumnHeadersItem'- { _rdchiColumnType :: !(Maybe Text)- , _rdchiName :: !(Maybe Text)- , _rdchiDataType :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'RealtimeDataColumnHeadersItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rdchiColumnType'------ * 'rdchiName'------ * 'rdchiDataType'-realtimeDataColumnHeadersItem- :: RealtimeDataColumnHeadersItem-realtimeDataColumnHeadersItem =- RealtimeDataColumnHeadersItem'- { _rdchiColumnType = Nothing- , _rdchiName = Nothing- , _rdchiDataType = Nothing- }---- | Column Type. Either DIMENSION or METRIC.-rdchiColumnType :: Lens' RealtimeDataColumnHeadersItem (Maybe Text)-rdchiColumnType- = lens _rdchiColumnType- (\ s a -> s{_rdchiColumnType = a})---- | Column name.-rdchiName :: Lens' RealtimeDataColumnHeadersItem (Maybe Text)-rdchiName- = lens _rdchiName (\ s a -> s{_rdchiName = a})---- | Data type. Dimension column headers have only STRING as the data type.--- Metric column headers have data types for metric values such as INTEGER,--- DOUBLE, CURRENCY etc.-rdchiDataType :: Lens' RealtimeDataColumnHeadersItem (Maybe Text)-rdchiDataType- = lens _rdchiDataType- (\ s a -> s{_rdchiDataType = a})--instance FromJSON RealtimeDataColumnHeadersItem where- parseJSON- = withObject "RealtimeDataColumnHeadersItem"- (\ o ->- RealtimeDataColumnHeadersItem' <$>- (o .:? "columnType") <*> (o .:? "name") <*>- (o .:? "dataType"))--instance ToJSON RealtimeDataColumnHeadersItem where- toJSON RealtimeDataColumnHeadersItem'{..}- = object- (catMaybes- [("columnType" .=) <$> _rdchiColumnType,- ("name" .=) <$> _rdchiName,- ("dataType" .=) <$> _rdchiDataType])---- | JSON template for a linked account.------ /See:/ 'accountRef' smart constructor.-data AccountRef = AccountRef'- { _arKind :: !Text- , _arHref :: !(Maybe Text)- , _arName :: !(Maybe Text)- , _arId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'AccountRef' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'arKind'------ * 'arHref'------ * 'arName'------ * 'arId'-accountRef- :: AccountRef-accountRef =- AccountRef'- { _arKind = "analytics#accountRef"- , _arHref = Nothing- , _arName = Nothing- , _arId = Nothing- }---- | Analytics account reference.-arKind :: Lens' AccountRef Text-arKind = lens _arKind (\ s a -> s{_arKind = a})---- | Link for this account.-arHref :: Lens' AccountRef (Maybe Text)-arHref = lens _arHref (\ s a -> s{_arHref = a})---- | Account name.-arName :: Lens' AccountRef (Maybe Text)-arName = lens _arName (\ s a -> s{_arName = a})---- | Account ID.-arId :: Lens' AccountRef (Maybe Text)-arId = lens _arId (\ s a -> s{_arId = a})--instance FromJSON AccountRef where- parseJSON- = withObject "AccountRef"- (\ o ->- AccountRef' <$>- (o .:? "kind" .!= "analytics#accountRef") <*>- (o .:? "href")- <*> (o .:? "name")- <*> (o .:? "id"))--instance ToJSON AccountRef where- toJSON AccountRef'{..}- = object- (catMaybes- [Just ("kind" .= _arKind), ("href" .=) <$> _arHref,- ("name" .=) <$> _arName, ("id" .=) <$> _arId])---- | An entity AdWords link collection provides a list of GA-AdWords links--- Each resource in this collection corresponds to a single link.------ /See:/ 'entityAdWordsLinks' smart constructor.-data EntityAdWordsLinks = EntityAdWordsLinks'- { _eawlNextLink :: !(Maybe Text)- , _eawlItemsPerPage :: !(Maybe (Textual Int32))- , _eawlKind :: !Text- , _eawlItems :: !(Maybe [EntityAdWordsLink])- , _eawlTotalResults :: !(Maybe (Textual Int32))- , _eawlStartIndex :: !(Maybe (Textual Int32))- , _eawlPreviousLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'EntityAdWordsLinks' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'eawlNextLink'------ * 'eawlItemsPerPage'------ * 'eawlKind'------ * 'eawlItems'------ * 'eawlTotalResults'------ * 'eawlStartIndex'------ * 'eawlPreviousLink'-entityAdWordsLinks- :: EntityAdWordsLinks-entityAdWordsLinks =- EntityAdWordsLinks'- { _eawlNextLink = Nothing- , _eawlItemsPerPage = Nothing- , _eawlKind = "analytics#entityAdWordsLinks"- , _eawlItems = Nothing- , _eawlTotalResults = Nothing- , _eawlStartIndex = Nothing- , _eawlPreviousLink = Nothing- }---- | Next link for this AdWords link collection.-eawlNextLink :: Lens' EntityAdWordsLinks (Maybe Text)-eawlNextLink- = lens _eawlNextLink (\ s a -> s{_eawlNextLink = a})---- | The maximum number of entries the response can contain, regardless of--- the actual number of entries returned. Its value ranges from 1 to 1000--- with a value of 1000 by default, or otherwise specified by the--- max-results query parameter.-eawlItemsPerPage :: Lens' EntityAdWordsLinks (Maybe Int32)-eawlItemsPerPage- = lens _eawlItemsPerPage- (\ s a -> s{_eawlItemsPerPage = a})- . mapping _Coerce---- | Collection type.-eawlKind :: Lens' EntityAdWordsLinks Text-eawlKind = lens _eawlKind (\ s a -> s{_eawlKind = a})---- | A list of entity AdWords links.-eawlItems :: Lens' EntityAdWordsLinks [EntityAdWordsLink]-eawlItems- = lens _eawlItems (\ s a -> s{_eawlItems = a}) .- _Default- . _Coerce---- | The total number of results for the query, regardless of the number of--- results in the response.-eawlTotalResults :: Lens' EntityAdWordsLinks (Maybe Int32)-eawlTotalResults- = lens _eawlTotalResults- (\ s a -> s{_eawlTotalResults = a})- . mapping _Coerce---- | The starting index of the entries, which is 1 by default or otherwise--- specified by the start-index query parameter.-eawlStartIndex :: Lens' EntityAdWordsLinks (Maybe Int32)-eawlStartIndex- = lens _eawlStartIndex- (\ s a -> s{_eawlStartIndex = a})- . mapping _Coerce---- | Previous link for this AdWords link collection.-eawlPreviousLink :: Lens' EntityAdWordsLinks (Maybe Text)-eawlPreviousLink- = lens _eawlPreviousLink- (\ s a -> s{_eawlPreviousLink = a})--instance FromJSON EntityAdWordsLinks where- parseJSON- = withObject "EntityAdWordsLinks"- (\ o ->- EntityAdWordsLinks' <$>- (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>- (o .:? "kind" .!= "analytics#entityAdWordsLinks")- <*> (o .:? "items" .!= mempty)- <*> (o .:? "totalResults")- <*> (o .:? "startIndex")- <*> (o .:? "previousLink"))--instance ToJSON EntityAdWordsLinks where- toJSON EntityAdWordsLinks'{..}- = object- (catMaybes- [("nextLink" .=) <$> _eawlNextLink,- ("itemsPerPage" .=) <$> _eawlItemsPerPage,- Just ("kind" .= _eawlKind),- ("items" .=) <$> _eawlItems,- ("totalResults" .=) <$> _eawlTotalResults,- ("startIndex" .=) <$> _eawlStartIndex,- ("previousLink" .=) <$> _eawlPreviousLink])---- | A view (profile) collection lists Analytics views (profiles) to which--- the user has access. Each resource in the collection corresponds to a--- single Analytics view (profile).------ /See:/ 'proFiles' smart constructor.-data ProFiles = ProFiles'- { _pfNextLink :: !(Maybe Text)- , _pfItemsPerPage :: !(Maybe (Textual Int32))- , _pfKind :: !Text- , _pfUsername :: !(Maybe Text)- , _pfItems :: !(Maybe [ProFile])- , _pfTotalResults :: !(Maybe (Textual Int32))- , _pfStartIndex :: !(Maybe (Textual Int32))- , _pfPreviousLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ProFiles' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pfNextLink'------ * 'pfItemsPerPage'------ * 'pfKind'------ * 'pfUsername'------ * 'pfItems'------ * 'pfTotalResults'------ * 'pfStartIndex'------ * 'pfPreviousLink'-proFiles- :: ProFiles-proFiles =- ProFiles'- { _pfNextLink = Nothing- , _pfItemsPerPage = Nothing- , _pfKind = "analytics#profiles"- , _pfUsername = Nothing- , _pfItems = Nothing- , _pfTotalResults = Nothing- , _pfStartIndex = Nothing- , _pfPreviousLink = Nothing- }---- | Link to next page for this view (profile) collection.-pfNextLink :: Lens' ProFiles (Maybe Text)-pfNextLink- = lens _pfNextLink (\ s a -> s{_pfNextLink = a})---- | The maximum number of resources the response can contain, regardless of--- the actual number of resources returned. Its value ranges from 1 to 1000--- with a value of 1000 by default, or otherwise specified by the--- max-results query parameter.-pfItemsPerPage :: Lens' ProFiles (Maybe Int32)-pfItemsPerPage- = lens _pfItemsPerPage- (\ s a -> s{_pfItemsPerPage = a})- . mapping _Coerce---- | Collection type.-pfKind :: Lens' ProFiles Text-pfKind = lens _pfKind (\ s a -> s{_pfKind = a})---- | Email ID of the authenticated user-pfUsername :: Lens' ProFiles (Maybe Text)-pfUsername- = lens _pfUsername (\ s a -> s{_pfUsername = a})---- | A list of views (profiles).-pfItems :: Lens' ProFiles [ProFile]-pfItems- = lens _pfItems (\ s a -> s{_pfItems = a}) . _Default- . _Coerce---- | The total number of results for the query, regardless of the number of--- results in the response.-pfTotalResults :: Lens' ProFiles (Maybe Int32)-pfTotalResults- = lens _pfTotalResults- (\ s a -> s{_pfTotalResults = a})- . mapping _Coerce---- | The starting index of the resources, which is 1 by default or otherwise--- specified by the start-index query parameter.-pfStartIndex :: Lens' ProFiles (Maybe Int32)-pfStartIndex- = lens _pfStartIndex (\ s a -> s{_pfStartIndex = a})- . mapping _Coerce---- | Link to previous page for this view (profile) collection.-pfPreviousLink :: Lens' ProFiles (Maybe Text)-pfPreviousLink- = lens _pfPreviousLink- (\ s a -> s{_pfPreviousLink = a})--instance FromJSON ProFiles where- parseJSON- = withObject "ProFiles"- (\ o ->- ProFiles' <$>- (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>- (o .:? "kind" .!= "analytics#profiles")- <*> (o .:? "username")- <*> (o .:? "items" .!= mempty)- <*> (o .:? "totalResults")- <*> (o .:? "startIndex")- <*> (o .:? "previousLink"))--instance ToJSON ProFiles where- toJSON ProFiles'{..}- = object- (catMaybes- [("nextLink" .=) <$> _pfNextLink,- ("itemsPerPage" .=) <$> _pfItemsPerPage,- Just ("kind" .= _pfKind),- ("username" .=) <$> _pfUsername,- ("items" .=) <$> _pfItems,- ("totalResults" .=) <$> _pfTotalResults,- ("startIndex" .=) <$> _pfStartIndex,- ("previousLink" .=) <$> _pfPreviousLink])---- | Request template for the delete upload data request.------ /See:/ 'analyticsDataimportDeleteUploadDataRequest' smart constructor.-newtype AnalyticsDataimportDeleteUploadDataRequest = AnalyticsDataimportDeleteUploadDataRequest'- { _addudrCustomDataImportUids :: Maybe [Text]- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'AnalyticsDataimportDeleteUploadDataRequest' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'addudrCustomDataImportUids'-analyticsDataimportDeleteUploadDataRequest- :: AnalyticsDataimportDeleteUploadDataRequest-analyticsDataimportDeleteUploadDataRequest =- AnalyticsDataimportDeleteUploadDataRequest'- { _addudrCustomDataImportUids = Nothing- }---- | A list of upload UIDs.-addudrCustomDataImportUids :: Lens' AnalyticsDataimportDeleteUploadDataRequest [Text]-addudrCustomDataImportUids- = lens _addudrCustomDataImportUids- (\ s a -> s{_addudrCustomDataImportUids = a})- . _Default- . _Coerce--instance FromJSON- AnalyticsDataimportDeleteUploadDataRequest where- parseJSON- = withObject- "AnalyticsDataimportDeleteUploadDataRequest"- (\ o ->- AnalyticsDataimportDeleteUploadDataRequest' <$>- (o .:? "customDataImportUids" .!= mempty))--instance ToJSON- AnalyticsDataimportDeleteUploadDataRequest where- toJSON- AnalyticsDataimportDeleteUploadDataRequest'{..}- = object- (catMaybes- [("customDataImportUids" .=) <$>- _addudrCustomDataImportUids])---- | JSON template for Analytics Entity AdWords Link.------ /See:/ 'entityAdWordsLink' smart constructor.-data EntityAdWordsLink = EntityAdWordsLink'- { _entAdWordsAccounts :: !(Maybe [AdWordsAccount])- , _entProFileIds :: !(Maybe [Text])- , _entKind :: !Text- , _entSelfLink :: !(Maybe Text)- , _entName :: !(Maybe Text)- , _entId :: !(Maybe Text)- , _entEntity :: !(Maybe EntityAdWordsLinkEntity)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'EntityAdWordsLink' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'entAdWordsAccounts'------ * 'entProFileIds'------ * 'entKind'------ * 'entSelfLink'------ * 'entName'------ * 'entId'------ * 'entEntity'-entityAdWordsLink- :: EntityAdWordsLink-entityAdWordsLink =- EntityAdWordsLink'- { _entAdWordsAccounts = Nothing- , _entProFileIds = Nothing- , _entKind = "analytics#entityAdWordsLink"- , _entSelfLink = Nothing- , _entName = Nothing- , _entId = Nothing- , _entEntity = Nothing- }---- | A list of AdWords client accounts. These cannot be MCC accounts. This--- field is required when creating an AdWords link. It cannot be empty.-entAdWordsAccounts :: Lens' EntityAdWordsLink [AdWordsAccount]-entAdWordsAccounts- = lens _entAdWordsAccounts- (\ s a -> s{_entAdWordsAccounts = a})- . _Default- . _Coerce---- | IDs of linked Views (Profiles) represented as strings.-entProFileIds :: Lens' EntityAdWordsLink [Text]-entProFileIds- = lens _entProFileIds- (\ s a -> s{_entProFileIds = a})- . _Default- . _Coerce---- | Resource type for entity AdWords link.-entKind :: Lens' EntityAdWordsLink Text-entKind = lens _entKind (\ s a -> s{_entKind = a})---- | URL link for this Google Analytics - Google AdWords link.-entSelfLink :: Lens' EntityAdWordsLink (Maybe Text)-entSelfLink- = lens _entSelfLink (\ s a -> s{_entSelfLink = a})---- | Name of the link. This field is required when creating an AdWords link.-entName :: Lens' EntityAdWordsLink (Maybe Text)-entName = lens _entName (\ s a -> s{_entName = a})---- | Entity AdWords link ID-entId :: Lens' EntityAdWordsLink (Maybe Text)-entId = lens _entId (\ s a -> s{_entId = a})---- | Web property being linked.-entEntity :: Lens' EntityAdWordsLink (Maybe EntityAdWordsLinkEntity)-entEntity- = lens _entEntity (\ s a -> s{_entEntity = a})--instance FromJSON EntityAdWordsLink where- parseJSON- = withObject "EntityAdWordsLink"- (\ o ->- EntityAdWordsLink' <$>- (o .:? "adWordsAccounts" .!= mempty) <*>- (o .:? "profileIds" .!= mempty)- <*> (o .:? "kind" .!= "analytics#entityAdWordsLink")- <*> (o .:? "selfLink")- <*> (o .:? "name")- <*> (o .:? "id")- <*> (o .:? "entity"))--instance ToJSON EntityAdWordsLink where- toJSON EntityAdWordsLink'{..}- = object- (catMaybes- [("adWordsAccounts" .=) <$> _entAdWordsAccounts,- ("profileIds" .=) <$> _entProFileIds,- Just ("kind" .= _entKind),- ("selfLink" .=) <$> _entSelfLink,- ("name" .=) <$> _entName, ("id" .=) <$> _entId,- ("entity" .=) <$> _entEntity])---- | Details for the filter of the type SEARCH_AND_REPLACE.------ /See:/ 'filterSearchAndReplaceDetails' smart constructor.-data FilterSearchAndReplaceDetails = FilterSearchAndReplaceDetails'- { _fsardFieldIndex :: !(Maybe (Textual Int32))- , _fsardField :: !(Maybe Text)- , _fsardSearchString :: !(Maybe Text)- , _fsardReplaceString :: !(Maybe Text)- , _fsardCaseSensitive :: !(Maybe Bool)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'FilterSearchAndReplaceDetails' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'fsardFieldIndex'------ * 'fsardField'------ * 'fsardSearchString'------ * 'fsardReplaceString'------ * 'fsardCaseSensitive'-filterSearchAndReplaceDetails- :: FilterSearchAndReplaceDetails-filterSearchAndReplaceDetails =- FilterSearchAndReplaceDetails'- { _fsardFieldIndex = Nothing- , _fsardField = Nothing- , _fsardSearchString = Nothing- , _fsardReplaceString = Nothing- , _fsardCaseSensitive = Nothing- }---- | The Index of the custom dimension. Required if field is a--- CUSTOM_DIMENSION.-fsardFieldIndex :: Lens' FilterSearchAndReplaceDetails (Maybe Int32)-fsardFieldIndex- = lens _fsardFieldIndex- (\ s a -> s{_fsardFieldIndex = a})- . mapping _Coerce---- | Field to use in the filter.-fsardField :: Lens' FilterSearchAndReplaceDetails (Maybe Text)-fsardField- = lens _fsardField (\ s a -> s{_fsardField = a})---- | Term to search.-fsardSearchString :: Lens' FilterSearchAndReplaceDetails (Maybe Text)-fsardSearchString- = lens _fsardSearchString- (\ s a -> s{_fsardSearchString = a})---- | Term to replace the search term with.-fsardReplaceString :: Lens' FilterSearchAndReplaceDetails (Maybe Text)-fsardReplaceString- = lens _fsardReplaceString- (\ s a -> s{_fsardReplaceString = a})---- | Determines if the filter is case sensitive.-fsardCaseSensitive :: Lens' FilterSearchAndReplaceDetails (Maybe Bool)-fsardCaseSensitive- = lens _fsardCaseSensitive- (\ s a -> s{_fsardCaseSensitive = a})--instance FromJSON FilterSearchAndReplaceDetails where- parseJSON- = withObject "FilterSearchAndReplaceDetails"- (\ o ->- FilterSearchAndReplaceDetails' <$>- (o .:? "fieldIndex") <*> (o .:? "field") <*>- (o .:? "searchString")- <*> (o .:? "replaceString")- <*> (o .:? "caseSensitive"))--instance ToJSON FilterSearchAndReplaceDetails where- toJSON FilterSearchAndReplaceDetails'{..}- = object- (catMaybes- [("fieldIndex" .=) <$> _fsardFieldIndex,- ("field" .=) <$> _fsardField,- ("searchString" .=) <$> _fsardSearchString,- ("replaceString" .=) <$> _fsardReplaceString,- ("caseSensitive" .=) <$> _fsardCaseSensitive])---- | Permissions the user has for this view (profile).------ /See:/ 'proFilePermissions' smart constructor.-newtype ProFilePermissions = ProFilePermissions'- { _pfpEffective :: Maybe [Text]- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ProFilePermissions' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pfpEffective'-proFilePermissions- :: ProFilePermissions-proFilePermissions =- ProFilePermissions'- { _pfpEffective = Nothing- }---- | All the permissions that the user has for this view (profile). These--- include any implied permissions (e.g., EDIT implies VIEW) or inherited--- permissions from the parent web property.-pfpEffective :: Lens' ProFilePermissions [Text]-pfpEffective- = lens _pfpEffective (\ s a -> s{_pfpEffective = a})- . _Default- . _Coerce--instance FromJSON ProFilePermissions where- parseJSON- = withObject "ProFilePermissions"- (\ o ->- ProFilePermissions' <$>- (o .:? "effective" .!= mempty))--instance ToJSON ProFilePermissions where- toJSON ProFilePermissions'{..}- = object- (catMaybes [("effective" .=) <$> _pfpEffective])---- | JSON template for an Analytics view (profile).------ /See:/ 'proFile' smart constructor.-data ProFile = ProFile'- { _pParentLink :: !(Maybe ProFileParentLink)- , _pECommerceTracking :: !(Maybe Bool)- , _pSiteSearchCategoryParameters :: !(Maybe Text)- , _pWebPropertyId :: !(Maybe Text)- , _pChildLink :: !(Maybe ProFileChildLink)- , _pSiteSearchQueryParameters :: !(Maybe Text)- , _pKind :: !Text- , _pDefaultPage :: !(Maybe Text)- , _pCreated :: !(Maybe DateTime')- , _pSelfLink :: !(Maybe Text)- , _pAccountId :: !(Maybe Text)- , _pBotFilteringEnabled :: !(Maybe Bool)- , _pName :: !(Maybe Text)- , _pCurrency :: !(Maybe Text)- , _pStarred :: !(Maybe Bool)- , _pInternalWebPropertyId :: !(Maybe Text)- , _pId :: !(Maybe Text)- , _pUpdated :: !(Maybe DateTime')- , _pPermissions :: !(Maybe ProFilePermissions)- , _pWebsiteURL :: !(Maybe Text)- , _pType :: !(Maybe Text)- , _pStripSiteSearchCategoryParameters :: !(Maybe Bool)- , _pTimezone :: !(Maybe Text)- , _pExcludeQueryParameters :: !(Maybe Text)- , _pEnhancedECommerceTracking :: !(Maybe Bool)- , _pStripSiteSearchQueryParameters :: !(Maybe Bool)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ProFile' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pParentLink'------ * 'pECommerceTracking'------ * 'pSiteSearchCategoryParameters'------ * 'pWebPropertyId'------ * 'pChildLink'------ * 'pSiteSearchQueryParameters'------ * 'pKind'------ * 'pDefaultPage'------ * 'pCreated'------ * 'pSelfLink'------ * 'pAccountId'------ * 'pBotFilteringEnabled'------ * 'pName'------ * 'pCurrency'------ * 'pStarred'------ * 'pInternalWebPropertyId'------ * 'pId'------ * 'pUpdated'------ * 'pPermissions'------ * 'pWebsiteURL'------ * 'pType'------ * 'pStripSiteSearchCategoryParameters'------ * 'pTimezone'------ * 'pExcludeQueryParameters'------ * 'pEnhancedECommerceTracking'------ * 'pStripSiteSearchQueryParameters'-proFile- :: ProFile-proFile =- ProFile'- { _pParentLink = Nothing- , _pECommerceTracking = Nothing- , _pSiteSearchCategoryParameters = Nothing- , _pWebPropertyId = Nothing- , _pChildLink = Nothing- , _pSiteSearchQueryParameters = Nothing- , _pKind = "analytics#profile"- , _pDefaultPage = Nothing- , _pCreated = Nothing- , _pSelfLink = Nothing- , _pAccountId = Nothing- , _pBotFilteringEnabled = Nothing- , _pName = Nothing- , _pCurrency = Nothing- , _pStarred = Nothing- , _pInternalWebPropertyId = Nothing- , _pId = Nothing- , _pUpdated = Nothing- , _pPermissions = Nothing- , _pWebsiteURL = Nothing- , _pType = Nothing- , _pStripSiteSearchCategoryParameters = Nothing- , _pTimezone = Nothing- , _pExcludeQueryParameters = Nothing- , _pEnhancedECommerceTracking = Nothing- , _pStripSiteSearchQueryParameters = Nothing- }---- | Parent link for this view (profile). Points to the web property to which--- this view (profile) belongs.-pParentLink :: Lens' ProFile (Maybe ProFileParentLink)-pParentLink- = lens _pParentLink (\ s a -> s{_pParentLink = a})---- | Indicates whether ecommerce tracking is enabled for this view (profile).-pECommerceTracking :: Lens' ProFile (Maybe Bool)-pECommerceTracking- = lens _pECommerceTracking- (\ s a -> s{_pECommerceTracking = a})---- | Site search category parameters for this view (profile).-pSiteSearchCategoryParameters :: Lens' ProFile (Maybe Text)-pSiteSearchCategoryParameters- = lens _pSiteSearchCategoryParameters- (\ s a -> s{_pSiteSearchCategoryParameters = a})---- | Web property ID of the form UA-XXXXX-YY to which this view (profile)--- belongs.-pWebPropertyId :: Lens' ProFile (Maybe Text)-pWebPropertyId- = lens _pWebPropertyId- (\ s a -> s{_pWebPropertyId = a})---- | Child link for this view (profile). Points to the list of goals for this--- view (profile).-pChildLink :: Lens' ProFile (Maybe ProFileChildLink)-pChildLink- = lens _pChildLink (\ s a -> s{_pChildLink = a})---- | The site search query parameters for this view (profile).-pSiteSearchQueryParameters :: Lens' ProFile (Maybe Text)-pSiteSearchQueryParameters- = lens _pSiteSearchQueryParameters- (\ s a -> s{_pSiteSearchQueryParameters = a})---- | Resource type for Analytics view (profile).-pKind :: Lens' ProFile Text-pKind = lens _pKind (\ s a -> s{_pKind = a})---- | Default page for this view (profile).-pDefaultPage :: Lens' ProFile (Maybe Text)-pDefaultPage- = lens _pDefaultPage (\ s a -> s{_pDefaultPage = a})---- | Time this view (profile) was created.-pCreated :: Lens' ProFile (Maybe UTCTime)-pCreated- = lens _pCreated (\ s a -> s{_pCreated = a}) .- mapping _DateTime---- | Link for this view (profile).-pSelfLink :: Lens' ProFile (Maybe Text)-pSelfLink- = lens _pSelfLink (\ s a -> s{_pSelfLink = a})---- | Account ID to which this view (profile) belongs.-pAccountId :: Lens' ProFile (Maybe Text)-pAccountId- = lens _pAccountId (\ s a -> s{_pAccountId = a})---- | Indicates whether bot filtering is enabled for this view (profile).-pBotFilteringEnabled :: Lens' ProFile (Maybe Bool)-pBotFilteringEnabled- = lens _pBotFilteringEnabled- (\ s a -> s{_pBotFilteringEnabled = a})---- | Name of this view (profile).-pName :: Lens' ProFile (Maybe Text)-pName = lens _pName (\ s a -> s{_pName = a})---- | The currency type associated with this view (profile), defaults to USD.--- The supported values are: USD, JPY, EUR, GBP, AUD, KRW, BRL, CNY, DKK,--- RUB, SEK, NOK, PLN, TRY, TWD, HKD, THB, IDR, ARS, MXN, VND, PHP, INR,--- CHF, CAD, CZK, NZD, HUF, BGN, LTL, ZAR, UAH, AED, BOB, CLP, COP, EGP,--- HRK, ILS, MAD, MYR, PEN, PKR, RON, RSD, SAR, SGD, VEF, LVL-pCurrency :: Lens' ProFile (Maybe Text)-pCurrency- = lens _pCurrency (\ s a -> s{_pCurrency = a})---- | Indicates whether this view (profile) is starred or not.-pStarred :: Lens' ProFile (Maybe Bool)-pStarred = lens _pStarred (\ s a -> s{_pStarred = a})---- | Internal ID for the web property to which this view (profile) belongs.-pInternalWebPropertyId :: Lens' ProFile (Maybe Text)-pInternalWebPropertyId- = lens _pInternalWebPropertyId- (\ s a -> s{_pInternalWebPropertyId = a})---- | View (Profile) ID.-pId :: Lens' ProFile (Maybe Text)-pId = lens _pId (\ s a -> s{_pId = a})---- | Time this view (profile) was last modified.-pUpdated :: Lens' ProFile (Maybe UTCTime)-pUpdated- = lens _pUpdated (\ s a -> s{_pUpdated = a}) .- mapping _DateTime---- | Permissions the user has for this view (profile).-pPermissions :: Lens' ProFile (Maybe ProFilePermissions)-pPermissions- = lens _pPermissions (\ s a -> s{_pPermissions = a})---- | Website URL for this view (profile).-pWebsiteURL :: Lens' ProFile (Maybe Text)-pWebsiteURL- = lens _pWebsiteURL (\ s a -> s{_pWebsiteURL = a})---- | View (Profile) type. Supported types: WEB or APP.-pType :: Lens' ProFile (Maybe Text)-pType = lens _pType (\ s a -> s{_pType = a})---- | Whether or not Analytics will strip search category parameters from the--- URLs in your reports.-pStripSiteSearchCategoryParameters :: Lens' ProFile (Maybe Bool)-pStripSiteSearchCategoryParameters- = lens _pStripSiteSearchCategoryParameters- (\ s a -> s{_pStripSiteSearchCategoryParameters = a})---- | Time zone for which this view (profile) has been configured. Time zones--- are identified by strings from the TZ database.-pTimezone :: Lens' ProFile (Maybe Text)-pTimezone- = lens _pTimezone (\ s a -> s{_pTimezone = a})---- | The query parameters that are excluded from this view (profile).-pExcludeQueryParameters :: Lens' ProFile (Maybe Text)-pExcludeQueryParameters- = lens _pExcludeQueryParameters- (\ s a -> s{_pExcludeQueryParameters = a})---- | Indicates whether enhanced ecommerce tracking is enabled for this view--- (profile). This property can only be enabled if ecommerce tracking is--- enabled.-pEnhancedECommerceTracking :: Lens' ProFile (Maybe Bool)-pEnhancedECommerceTracking- = lens _pEnhancedECommerceTracking- (\ s a -> s{_pEnhancedECommerceTracking = a})---- | Whether or not Analytics will strip search query parameters from the--- URLs in your reports.-pStripSiteSearchQueryParameters :: Lens' ProFile (Maybe Bool)-pStripSiteSearchQueryParameters- = lens _pStripSiteSearchQueryParameters- (\ s a -> s{_pStripSiteSearchQueryParameters = a})--instance FromJSON ProFile where- parseJSON- = withObject "ProFile"- (\ o ->- ProFile' <$>- (o .:? "parentLink") <*> (o .:? "eCommerceTracking")- <*> (o .:? "siteSearchCategoryParameters")- <*> (o .:? "webPropertyId")- <*> (o .:? "childLink")- <*> (o .:? "siteSearchQueryParameters")- <*> (o .:? "kind" .!= "analytics#profile")- <*> (o .:? "defaultPage")- <*> (o .:? "created")- <*> (o .:? "selfLink")- <*> (o .:? "accountId")- <*> (o .:? "botFilteringEnabled")- <*> (o .:? "name")- <*> (o .:? "currency")- <*> (o .:? "starred")- <*> (o .:? "internalWebPropertyId")- <*> (o .:? "id")- <*> (o .:? "updated")- <*> (o .:? "permissions")- <*> (o .:? "websiteUrl")- <*> (o .:? "type")- <*> (o .:? "stripSiteSearchCategoryParameters")- <*> (o .:? "timezone")- <*> (o .:? "excludeQueryParameters")- <*> (o .:? "enhancedECommerceTracking")- <*> (o .:? "stripSiteSearchQueryParameters"))--instance ToJSON ProFile where- toJSON ProFile'{..}- = object- (catMaybes- [("parentLink" .=) <$> _pParentLink,- ("eCommerceTracking" .=) <$> _pECommerceTracking,- ("siteSearchCategoryParameters" .=) <$>- _pSiteSearchCategoryParameters,- ("webPropertyId" .=) <$> _pWebPropertyId,- ("childLink" .=) <$> _pChildLink,- ("siteSearchQueryParameters" .=) <$>- _pSiteSearchQueryParameters,- Just ("kind" .= _pKind),- ("defaultPage" .=) <$> _pDefaultPage,- ("created" .=) <$> _pCreated,- ("selfLink" .=) <$> _pSelfLink,- ("accountId" .=) <$> _pAccountId,- ("botFilteringEnabled" .=) <$> _pBotFilteringEnabled,- ("name" .=) <$> _pName,- ("currency" .=) <$> _pCurrency,- ("starred" .=) <$> _pStarred,- ("internalWebPropertyId" .=) <$>- _pInternalWebPropertyId,- ("id" .=) <$> _pId, ("updated" .=) <$> _pUpdated,- ("permissions" .=) <$> _pPermissions,- ("websiteUrl" .=) <$> _pWebsiteURL,- ("type" .=) <$> _pType,- ("stripSiteSearchCategoryParameters" .=) <$>- _pStripSiteSearchCategoryParameters,- ("timezone" .=) <$> _pTimezone,- ("excludeQueryParameters" .=) <$>- _pExcludeQueryParameters,- ("enhancedECommerceTracking" .=) <$>- _pEnhancedECommerceTracking,- ("stripSiteSearchQueryParameters" .=) <$>- _pStripSiteSearchQueryParameters])---- | An AccountSummary collection lists a summary of accounts, properties and--- views (profiles) to which the user has access. Each resource in the--- collection corresponds to a single AccountSummary.------ /See:/ 'accountSummaries' smart constructor.-data AccountSummaries = AccountSummaries'- { _asNextLink :: !(Maybe Text)- , _asItemsPerPage :: !(Maybe (Textual Int32))- , _asKind :: !Text- , _asUsername :: !(Maybe Text)- , _asItems :: !(Maybe [AccountSummary])- , _asTotalResults :: !(Maybe (Textual Int32))- , _asStartIndex :: !(Maybe (Textual Int32))- , _asPreviousLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'AccountSummaries' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'asNextLink'------ * 'asItemsPerPage'------ * 'asKind'------ * 'asUsername'------ * 'asItems'------ * 'asTotalResults'------ * 'asStartIndex'------ * 'asPreviousLink'-accountSummaries- :: AccountSummaries-accountSummaries =- AccountSummaries'- { _asNextLink = Nothing- , _asItemsPerPage = Nothing- , _asKind = "analytics#accountSummaries"- , _asUsername = Nothing- , _asItems = Nothing- , _asTotalResults = Nothing- , _asStartIndex = Nothing- , _asPreviousLink = Nothing- }---- | Link to next page for this AccountSummary collection.-asNextLink :: Lens' AccountSummaries (Maybe Text)-asNextLink- = lens _asNextLink (\ s a -> s{_asNextLink = a})---- | The maximum number of resources the response can contain, regardless of--- the actual number of resources returned. Its value ranges from 1 to 1000--- with a value of 1000 by default, or otherwise specified by the--- max-results query parameter.-asItemsPerPage :: Lens' AccountSummaries (Maybe Int32)-asItemsPerPage- = lens _asItemsPerPage- (\ s a -> s{_asItemsPerPage = a})- . mapping _Coerce---- | Collection type.-asKind :: Lens' AccountSummaries Text-asKind = lens _asKind (\ s a -> s{_asKind = a})---- | Email ID of the authenticated user-asUsername :: Lens' AccountSummaries (Maybe Text)-asUsername- = lens _asUsername (\ s a -> s{_asUsername = a})---- | A list of AccountSummaries.-asItems :: Lens' AccountSummaries [AccountSummary]-asItems- = lens _asItems (\ s a -> s{_asItems = a}) . _Default- . _Coerce---- | The total number of results for the query, regardless of the number of--- results in the response.-asTotalResults :: Lens' AccountSummaries (Maybe Int32)-asTotalResults- = lens _asTotalResults- (\ s a -> s{_asTotalResults = a})- . mapping _Coerce---- | The starting index of the resources, which is 1 by default or otherwise--- specified by the start-index query parameter.-asStartIndex :: Lens' AccountSummaries (Maybe Int32)-asStartIndex- = lens _asStartIndex (\ s a -> s{_asStartIndex = a})- . mapping _Coerce---- | Link to previous page for this AccountSummary collection.-asPreviousLink :: Lens' AccountSummaries (Maybe Text)-asPreviousLink- = lens _asPreviousLink- (\ s a -> s{_asPreviousLink = a})--instance FromJSON AccountSummaries where- parseJSON- = withObject "AccountSummaries"- (\ o ->- AccountSummaries' <$>- (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>- (o .:? "kind" .!= "analytics#accountSummaries")- <*> (o .:? "username")- <*> (o .:? "items" .!= mempty)- <*> (o .:? "totalResults")- <*> (o .:? "startIndex")- <*> (o .:? "previousLink"))--instance ToJSON AccountSummaries where- toJSON AccountSummaries'{..}- = object- (catMaybes- [("nextLink" .=) <$> _asNextLink,- ("itemsPerPage" .=) <$> _asItemsPerPage,- Just ("kind" .= _asKind),- ("username" .=) <$> _asUsername,- ("items" .=) <$> _asItems,- ("totalResults" .=) <$> _asTotalResults,- ("startIndex" .=) <$> _asStartIndex,- ("previousLink" .=) <$> _asPreviousLink])---- | Details for the goal of the type EVENT.------ /See:/ 'goalEventDetails' smart constructor.-data GoalEventDetails = GoalEventDetails'- { _gedUseEventValue :: !(Maybe Bool)- , _gedEventConditions :: !(Maybe [GoalEventDetailsEventConditionsItem])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoalEventDetails' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gedUseEventValue'------ * 'gedEventConditions'-goalEventDetails- :: GoalEventDetails-goalEventDetails =- GoalEventDetails'- { _gedUseEventValue = Nothing- , _gedEventConditions = Nothing- }---- | Determines if the event value should be used as the value for this goal.-gedUseEventValue :: Lens' GoalEventDetails (Maybe Bool)-gedUseEventValue- = lens _gedUseEventValue- (\ s a -> s{_gedUseEventValue = a})---- | List of event conditions.-gedEventConditions :: Lens' GoalEventDetails [GoalEventDetailsEventConditionsItem]-gedEventConditions- = lens _gedEventConditions- (\ s a -> s{_gedEventConditions = a})- . _Default- . _Coerce--instance FromJSON GoalEventDetails where- parseJSON- = withObject "GoalEventDetails"- (\ o ->- GoalEventDetails' <$>- (o .:? "useEventValue") <*>- (o .:? "eventConditions" .!= mempty))--instance ToJSON GoalEventDetails where- toJSON GoalEventDetails'{..}- = object- (catMaybes- [("useEventValue" .=) <$> _gedUseEventValue,- ("eventConditions" .=) <$> _gedEventConditions])---- | JSON template for an Analytics WebPropertySummary. WebPropertySummary--- returns basic information (i.e., summary) for a web property.------ /See:/ 'webPropertySummary' smart constructor.-data WebPropertySummary = WebPropertySummary'- { _wpsKind :: !Text- , _wpsProFiles :: !(Maybe [ProFileSummary])- , _wpsName :: !(Maybe Text)- , _wpsStarred :: !(Maybe Bool)- , _wpsInternalWebPropertyId :: !(Maybe Text)- , _wpsId :: !(Maybe Text)- , _wpsWebsiteURL :: !(Maybe Text)- , _wpsLevel :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'WebPropertySummary' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'wpsKind'------ * 'wpsProFiles'------ * 'wpsName'------ * 'wpsStarred'------ * 'wpsInternalWebPropertyId'------ * 'wpsId'------ * 'wpsWebsiteURL'------ * 'wpsLevel'-webPropertySummary- :: WebPropertySummary-webPropertySummary =- WebPropertySummary'- { _wpsKind = "analytics#webPropertySummary"- , _wpsProFiles = Nothing- , _wpsName = Nothing- , _wpsStarred = Nothing- , _wpsInternalWebPropertyId = Nothing- , _wpsId = Nothing- , _wpsWebsiteURL = Nothing- , _wpsLevel = Nothing- }---- | Resource type for Analytics WebPropertySummary.-wpsKind :: Lens' WebPropertySummary Text-wpsKind = lens _wpsKind (\ s a -> s{_wpsKind = a})---- | List of profiles under this web property.-wpsProFiles :: Lens' WebPropertySummary [ProFileSummary]-wpsProFiles- = lens _wpsProFiles (\ s a -> s{_wpsProFiles = a}) .- _Default- . _Coerce---- | Web property name.-wpsName :: Lens' WebPropertySummary (Maybe Text)-wpsName = lens _wpsName (\ s a -> s{_wpsName = a})---- | Indicates whether this web property is starred or not.-wpsStarred :: Lens' WebPropertySummary (Maybe Bool)-wpsStarred- = lens _wpsStarred (\ s a -> s{_wpsStarred = a})---- | Internal ID for this web property.-wpsInternalWebPropertyId :: Lens' WebPropertySummary (Maybe Text)-wpsInternalWebPropertyId- = lens _wpsInternalWebPropertyId- (\ s a -> s{_wpsInternalWebPropertyId = a})---- | Web property ID of the form UA-XXXXX-YY.-wpsId :: Lens' WebPropertySummary (Maybe Text)-wpsId = lens _wpsId (\ s a -> s{_wpsId = a})---- | Website url for this web property.-wpsWebsiteURL :: Lens' WebPropertySummary (Maybe Text)-wpsWebsiteURL- = lens _wpsWebsiteURL- (\ s a -> s{_wpsWebsiteURL = a})---- | Level for this web property. Possible values are STANDARD or PREMIUM.-wpsLevel :: Lens' WebPropertySummary (Maybe Text)-wpsLevel = lens _wpsLevel (\ s a -> s{_wpsLevel = a})--instance FromJSON WebPropertySummary where- parseJSON- = withObject "WebPropertySummary"- (\ o ->- WebPropertySummary' <$>- (o .:? "kind" .!= "analytics#webPropertySummary") <*>- (o .:? "profiles" .!= mempty)- <*> (o .:? "name")- <*> (o .:? "starred")- <*> (o .:? "internalWebPropertyId")- <*> (o .:? "id")- <*> (o .:? "websiteUrl")- <*> (o .:? "level"))--instance ToJSON WebPropertySummary where- toJSON WebPropertySummary'{..}- = object- (catMaybes- [Just ("kind" .= _wpsKind),- ("profiles" .=) <$> _wpsProFiles,- ("name" .=) <$> _wpsName,- ("starred" .=) <$> _wpsStarred,- ("internalWebPropertyId" .=) <$>- _wpsInternalWebPropertyId,- ("id" .=) <$> _wpsId,- ("websiteUrl" .=) <$> _wpsWebsiteURL,- ("level" .=) <$> _wpsLevel])---- | A filter collection lists filters created by users in an Analytics--- account. Each resource in the collection corresponds to a filter.------ /See:/ 'filters' smart constructor.-data Filters = Filters'- { _fNextLink :: !(Maybe Text)- , _fItemsPerPage :: !(Maybe (Textual Int32))- , _fKind :: !Text- , _fUsername :: !(Maybe Text)- , _fItems :: !(Maybe [Filter])- , _fTotalResults :: !(Maybe (Textual Int32))- , _fStartIndex :: !(Maybe (Textual Int32))- , _fPreviousLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Filters' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'fNextLink'------ * 'fItemsPerPage'------ * 'fKind'------ * 'fUsername'------ * 'fItems'------ * 'fTotalResults'------ * 'fStartIndex'------ * 'fPreviousLink'-filters- :: Filters-filters =- Filters'- { _fNextLink = Nothing- , _fItemsPerPage = Nothing- , _fKind = "analytics#filters"- , _fUsername = Nothing- , _fItems = Nothing- , _fTotalResults = Nothing- , _fStartIndex = Nothing- , _fPreviousLink = Nothing- }---- | Link to next page for this filter collection.-fNextLink :: Lens' Filters (Maybe Text)-fNextLink- = lens _fNextLink (\ s a -> s{_fNextLink = a})---- | The maximum number of resources the response can contain, regardless of--- the actual number of resources returned. Its value ranges from 1 to--- 1,000 with a value of 1000 by default, or otherwise specified by the--- max-results query parameter.-fItemsPerPage :: Lens' Filters (Maybe Int32)-fItemsPerPage- = lens _fItemsPerPage- (\ s a -> s{_fItemsPerPage = a})- . mapping _Coerce---- | Collection type.-fKind :: Lens' Filters Text-fKind = lens _fKind (\ s a -> s{_fKind = a})---- | Email ID of the authenticated user-fUsername :: Lens' Filters (Maybe Text)-fUsername- = lens _fUsername (\ s a -> s{_fUsername = a})---- | A list of filters.-fItems :: Lens' Filters [Filter]-fItems- = lens _fItems (\ s a -> s{_fItems = a}) . _Default .- _Coerce---- | The total number of results for the query, regardless of the number of--- results in the response.-fTotalResults :: Lens' Filters (Maybe Int32)-fTotalResults- = lens _fTotalResults- (\ s a -> s{_fTotalResults = a})- . mapping _Coerce---- | The starting index of the resources, which is 1 by default or otherwise--- specified by the start-index query parameter.-fStartIndex :: Lens' Filters (Maybe Int32)-fStartIndex- = lens _fStartIndex (\ s a -> s{_fStartIndex = a}) .- mapping _Coerce---- | Link to previous page for this filter collection.-fPreviousLink :: Lens' Filters (Maybe Text)-fPreviousLink- = lens _fPreviousLink- (\ s a -> s{_fPreviousLink = a})--instance FromJSON Filters where- parseJSON- = withObject "Filters"- (\ o ->- Filters' <$>- (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>- (o .:? "kind" .!= "analytics#filters")- <*> (o .:? "username")- <*> (o .:? "items" .!= mempty)- <*> (o .:? "totalResults")- <*> (o .:? "startIndex")- <*> (o .:? "previousLink"))--instance ToJSON Filters where- toJSON Filters'{..}- = object- (catMaybes- [("nextLink" .=) <$> _fNextLink,- ("itemsPerPage" .=) <$> _fItemsPerPage,- Just ("kind" .= _fKind),- ("username" .=) <$> _fUsername,- ("items" .=) <$> _fItems,- ("totalResults" .=) <$> _fTotalResults,- ("startIndex" .=) <$> _fStartIndex,- ("previousLink" .=) <$> _fPreviousLink])---- | Analytics data for a given view (profile).------ /See:/ 'gaData' smart constructor.-data GaData = GaData'- { _gdNextLink :: !(Maybe Text)- , _gdSampleSpace :: !(Maybe (Textual Int64))- , _gdItemsPerPage :: !(Maybe (Textual Int32))- , _gdProFileInfo :: !(Maybe GaDataProFileInfo)- , _gdKind :: !Text- , _gdSampleSize :: !(Maybe (Textual Int64))- , _gdRows :: !(Maybe [[Text]])- , _gdSelfLink :: !(Maybe Text)- , _gdQuery :: !(Maybe GaDataQuery)- , _gdColumnHeaders :: !(Maybe [GaDataColumnHeadersItem])- , _gdId :: !(Maybe Text)- , _gdTotalResults :: !(Maybe (Textual Int32))- , _gdDataLastRefreshed :: !(Maybe (Textual Int64))- , _gdDataTable :: !(Maybe GaDataDataTable)- , _gdContainsSampledData :: !(Maybe Bool)- , _gdTotalsForAllResults :: !(Maybe GaDataTotalsForAllResults)- , _gdPreviousLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GaData' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gdNextLink'------ * 'gdSampleSpace'------ * 'gdItemsPerPage'------ * 'gdProFileInfo'------ * 'gdKind'------ * 'gdSampleSize'------ * 'gdRows'------ * 'gdSelfLink'------ * 'gdQuery'------ * 'gdColumnHeaders'------ * 'gdId'------ * 'gdTotalResults'------ * 'gdDataLastRefreshed'------ * 'gdDataTable'------ * 'gdContainsSampledData'------ * 'gdTotalsForAllResults'------ * 'gdPreviousLink'-gaData- :: GaData-gaData =- GaData'- { _gdNextLink = Nothing- , _gdSampleSpace = Nothing- , _gdItemsPerPage = Nothing- , _gdProFileInfo = Nothing- , _gdKind = "analytics#gaData"- , _gdSampleSize = Nothing- , _gdRows = Nothing- , _gdSelfLink = Nothing- , _gdQuery = Nothing- , _gdColumnHeaders = Nothing- , _gdId = Nothing- , _gdTotalResults = Nothing- , _gdDataLastRefreshed = Nothing- , _gdDataTable = Nothing- , _gdContainsSampledData = Nothing- , _gdTotalsForAllResults = Nothing- , _gdPreviousLink = Nothing- }---- | Link to next page for this Analytics data query.-gdNextLink :: Lens' GaData (Maybe Text)-gdNextLink- = lens _gdNextLink (\ s a -> s{_gdNextLink = a})---- | Total size of the sample space from which the samples were selected.-gdSampleSpace :: Lens' GaData (Maybe Int64)-gdSampleSpace- = lens _gdSampleSpace- (\ s a -> s{_gdSampleSpace = a})- . mapping _Coerce---- | The maximum number of rows the response can contain, regardless of the--- actual number of rows returned. Its value ranges from 1 to 10,000 with a--- value of 1000 by default, or otherwise specified by the max-results--- query parameter.-gdItemsPerPage :: Lens' GaData (Maybe Int32)-gdItemsPerPage- = lens _gdItemsPerPage- (\ s a -> s{_gdItemsPerPage = a})- . mapping _Coerce---- | Information for the view (profile), for which the Analytics data was--- requested.-gdProFileInfo :: Lens' GaData (Maybe GaDataProFileInfo)-gdProFileInfo- = lens _gdProFileInfo- (\ s a -> s{_gdProFileInfo = a})---- | Resource type.-gdKind :: Lens' GaData Text-gdKind = lens _gdKind (\ s a -> s{_gdKind = a})---- | The number of samples used to calculate the result.-gdSampleSize :: Lens' GaData (Maybe Int64)-gdSampleSize- = lens _gdSampleSize (\ s a -> s{_gdSampleSize = a})- . mapping _Coerce---- | Analytics data rows, where each row contains a list of dimension values--- followed by the metric values. The order of dimensions and metrics is--- same as specified in the request.-gdRows :: Lens' GaData [[Text]]-gdRows- = lens _gdRows (\ s a -> s{_gdRows = a}) . _Default .- _Coerce---- | Link to this page.-gdSelfLink :: Lens' GaData (Maybe Text)-gdSelfLink- = lens _gdSelfLink (\ s a -> s{_gdSelfLink = a})---- | Analytics data request query parameters.-gdQuery :: Lens' GaData (Maybe GaDataQuery)-gdQuery = lens _gdQuery (\ s a -> s{_gdQuery = a})---- | Column headers that list dimension names followed by the metric names.--- The order of dimensions and metrics is same as specified in the request.-gdColumnHeaders :: Lens' GaData [GaDataColumnHeadersItem]-gdColumnHeaders- = lens _gdColumnHeaders- (\ s a -> s{_gdColumnHeaders = a})- . _Default- . _Coerce---- | Unique ID for this data response.-gdId :: Lens' GaData (Maybe Text)-gdId = lens _gdId (\ s a -> s{_gdId = a})---- | The total number of rows for the query, regardless of the number of rows--- in the response.-gdTotalResults :: Lens' GaData (Maybe Int32)-gdTotalResults- = lens _gdTotalResults- (\ s a -> s{_gdTotalResults = a})- . mapping _Coerce---- | The last refreshed time in seconds for Analytics data.-gdDataLastRefreshed :: Lens' GaData (Maybe Int64)-gdDataLastRefreshed- = lens _gdDataLastRefreshed- (\ s a -> s{_gdDataLastRefreshed = a})- . mapping _Coerce--gdDataTable :: Lens' GaData (Maybe GaDataDataTable)-gdDataTable- = lens _gdDataTable (\ s a -> s{_gdDataTable = a})---- | Determines if Analytics data contains samples.-gdContainsSampledData :: Lens' GaData (Maybe Bool)-gdContainsSampledData- = lens _gdContainsSampledData- (\ s a -> s{_gdContainsSampledData = a})---- | Total values for the requested metrics over all the results, not just--- the results returned in this response. The order of the metric totals is--- same as the metric order specified in the request.-gdTotalsForAllResults :: Lens' GaData (Maybe GaDataTotalsForAllResults)-gdTotalsForAllResults- = lens _gdTotalsForAllResults- (\ s a -> s{_gdTotalsForAllResults = a})---- | Link to previous page for this Analytics data query.-gdPreviousLink :: Lens' GaData (Maybe Text)-gdPreviousLink- = lens _gdPreviousLink- (\ s a -> s{_gdPreviousLink = a})--instance FromJSON GaData where- parseJSON- = withObject "GaData"- (\ o ->- GaData' <$>- (o .:? "nextLink") <*> (o .:? "sampleSpace") <*>- (o .:? "itemsPerPage")- <*> (o .:? "profileInfo")- <*> (o .:? "kind" .!= "analytics#gaData")- <*> (o .:? "sampleSize")- <*> (o .:? "rows" .!= mempty)- <*> (o .:? "selfLink")- <*> (o .:? "query")- <*> (o .:? "columnHeaders" .!= mempty)- <*> (o .:? "id")- <*> (o .:? "totalResults")- <*> (o .:? "dataLastRefreshed")- <*> (o .:? "dataTable")- <*> (o .:? "containsSampledData")- <*> (o .:? "totalsForAllResults")- <*> (o .:? "previousLink"))--instance ToJSON GaData where- toJSON GaData'{..}- = object- (catMaybes- [("nextLink" .=) <$> _gdNextLink,- ("sampleSpace" .=) <$> _gdSampleSpace,- ("itemsPerPage" .=) <$> _gdItemsPerPage,- ("profileInfo" .=) <$> _gdProFileInfo,- Just ("kind" .= _gdKind),- ("sampleSize" .=) <$> _gdSampleSize,- ("rows" .=) <$> _gdRows,- ("selfLink" .=) <$> _gdSelfLink,- ("query" .=) <$> _gdQuery,- ("columnHeaders" .=) <$> _gdColumnHeaders,- ("id" .=) <$> _gdId,- ("totalResults" .=) <$> _gdTotalResults,- ("dataLastRefreshed" .=) <$> _gdDataLastRefreshed,- ("dataTable" .=) <$> _gdDataTable,- ("containsSampledData" .=) <$>- _gdContainsSampledData,- ("totalsForAllResults" .=) <$>- _gdTotalsForAllResults,- ("previousLink" .=) <$> _gdPreviousLink])---- | Total values for the requested metrics over all the results, not just--- the results returned in this response. The order of the metric totals is--- same as the metric order specified in the request.------ /See:/ 'realtimeDataTotalsForAllResults' smart constructor.-newtype RealtimeDataTotalsForAllResults = RealtimeDataTotalsForAllResults'- { _rdtfarAddtional :: HashMap Text Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'RealtimeDataTotalsForAllResults' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rdtfarAddtional'-realtimeDataTotalsForAllResults- :: HashMap Text Text -- ^ 'rdtfarAddtional'- -> RealtimeDataTotalsForAllResults-realtimeDataTotalsForAllResults pRdtfarAddtional_ =- RealtimeDataTotalsForAllResults'- { _rdtfarAddtional = _Coerce # pRdtfarAddtional_- }---- | Key-value pair for the total value of a metric. Key is the metric name--- and the value is the total value for that metric.-rdtfarAddtional :: Lens' RealtimeDataTotalsForAllResults (HashMap Text Text)-rdtfarAddtional- = lens _rdtfarAddtional- (\ s a -> s{_rdtfarAddtional = a})- . _Coerce--instance FromJSON RealtimeDataTotalsForAllResults- where- parseJSON- = withObject "RealtimeDataTotalsForAllResults"- (\ o ->- RealtimeDataTotalsForAllResults' <$>- (parseJSONObject o))--instance ToJSON RealtimeDataTotalsForAllResults where- toJSON = toJSON . _rdtfarAddtional---- | JSON template for an Analytics custom data source.------ /See:/ 'customDataSource' smart constructor.-data CustomDataSource = CustomDataSource'- { _cParentLink :: !(Maybe CustomDataSourceParentLink)- , _cWebPropertyId :: !(Maybe Text)- , _cChildLink :: !(Maybe CustomDataSourceChildLink)- , _cKind :: !Text- , _cCreated :: !(Maybe DateTime')- , _cUploadType :: !(Maybe Text)- , _cSchema :: !(Maybe [Text])- , _cImportBehavior :: !(Maybe Text)- , _cSelfLink :: !(Maybe Text)- , _cAccountId :: !(Maybe Text)- , _cName :: !(Maybe Text)- , _cId :: !(Maybe Text)- , _cUpdated :: !(Maybe DateTime')- , _cType :: !(Maybe Text)- , _cDescription :: !(Maybe Text)- , _cProFilesLinked :: !(Maybe [Text])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'CustomDataSource' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cParentLink'------ * 'cWebPropertyId'------ * 'cChildLink'------ * 'cKind'------ * 'cCreated'------ * 'cUploadType'------ * 'cSchema'------ * 'cImportBehavior'------ * 'cSelfLink'------ * 'cAccountId'------ * 'cName'------ * 'cId'------ * 'cUpdated'------ * 'cType'------ * 'cDescription'------ * 'cProFilesLinked'-customDataSource- :: CustomDataSource-customDataSource =- CustomDataSource'- { _cParentLink = Nothing- , _cWebPropertyId = Nothing- , _cChildLink = Nothing- , _cKind = "analytics#customDataSource"- , _cCreated = Nothing- , _cUploadType = Nothing- , _cSchema = Nothing- , _cImportBehavior = Nothing- , _cSelfLink = Nothing- , _cAccountId = Nothing- , _cName = Nothing- , _cId = Nothing- , _cUpdated = Nothing- , _cType = Nothing- , _cDescription = Nothing- , _cProFilesLinked = Nothing- }---- | Parent link for this custom data source. Points to the web property to--- which this custom data source belongs.-cParentLink :: Lens' CustomDataSource (Maybe CustomDataSourceParentLink)-cParentLink- = lens _cParentLink (\ s a -> s{_cParentLink = a})---- | Web property ID of the form UA-XXXXX-YY to which this custom data source--- belongs.-cWebPropertyId :: Lens' CustomDataSource (Maybe Text)-cWebPropertyId- = lens _cWebPropertyId- (\ s a -> s{_cWebPropertyId = a})--cChildLink :: Lens' CustomDataSource (Maybe CustomDataSourceChildLink)-cChildLink- = lens _cChildLink (\ s a -> s{_cChildLink = a})---- | Resource type for Analytics custom data source.-cKind :: Lens' CustomDataSource Text-cKind = lens _cKind (\ s a -> s{_cKind = a})---- | Time this custom data source was created.-cCreated :: Lens' CustomDataSource (Maybe UTCTime)-cCreated- = lens _cCreated (\ s a -> s{_cCreated = a}) .- mapping _DateTime---- | Upload type of the custom data source.-cUploadType :: Lens' CustomDataSource (Maybe Text)-cUploadType- = lens _cUploadType (\ s a -> s{_cUploadType = a})---- | Collection of schema headers of the custom data source.-cSchema :: Lens' CustomDataSource [Text]-cSchema- = lens _cSchema (\ s a -> s{_cSchema = a}) . _Default- . _Coerce--cImportBehavior :: Lens' CustomDataSource (Maybe Text)-cImportBehavior- = lens _cImportBehavior- (\ s a -> s{_cImportBehavior = a})---- | Link for this Analytics custom data source.-cSelfLink :: Lens' CustomDataSource (Maybe Text)-cSelfLink- = lens _cSelfLink (\ s a -> s{_cSelfLink = a})---- | Account ID to which this custom data source belongs.-cAccountId :: Lens' CustomDataSource (Maybe Text)-cAccountId- = lens _cAccountId (\ s a -> s{_cAccountId = a})---- | Name of this custom data source.-cName :: Lens' CustomDataSource (Maybe Text)-cName = lens _cName (\ s a -> s{_cName = a})---- | Custom data source ID.-cId :: Lens' CustomDataSource (Maybe Text)-cId = lens _cId (\ s a -> s{_cId = a})---- | Time this custom data source was last modified.-cUpdated :: Lens' CustomDataSource (Maybe UTCTime)-cUpdated- = lens _cUpdated (\ s a -> s{_cUpdated = a}) .- mapping _DateTime---- | Type of the custom data source.-cType :: Lens' CustomDataSource (Maybe Text)-cType = lens _cType (\ s a -> s{_cType = a})---- | Description of custom data source.-cDescription :: Lens' CustomDataSource (Maybe Text)-cDescription- = lens _cDescription (\ s a -> s{_cDescription = a})---- | IDs of views (profiles) linked to the custom data source.-cProFilesLinked :: Lens' CustomDataSource [Text]-cProFilesLinked- = lens _cProFilesLinked- (\ s a -> s{_cProFilesLinked = a})- . _Default- . _Coerce--instance FromJSON CustomDataSource where- parseJSON- = withObject "CustomDataSource"- (\ o ->- CustomDataSource' <$>- (o .:? "parentLink") <*> (o .:? "webPropertyId") <*>- (o .:? "childLink")- <*> (o .:? "kind" .!= "analytics#customDataSource")- <*> (o .:? "created")- <*> (o .:? "uploadType")- <*> (o .:? "schema" .!= mempty)- <*> (o .:? "importBehavior")- <*> (o .:? "selfLink")- <*> (o .:? "accountId")- <*> (o .:? "name")- <*> (o .:? "id")- <*> (o .:? "updated")- <*> (o .:? "type")- <*> (o .:? "description")- <*> (o .:? "profilesLinked" .!= mempty))--instance ToJSON CustomDataSource where- toJSON CustomDataSource'{..}- = object- (catMaybes- [("parentLink" .=) <$> _cParentLink,- ("webPropertyId" .=) <$> _cWebPropertyId,- ("childLink" .=) <$> _cChildLink,- Just ("kind" .= _cKind),- ("created" .=) <$> _cCreated,- ("uploadType" .=) <$> _cUploadType,- ("schema" .=) <$> _cSchema,- ("importBehavior" .=) <$> _cImportBehavior,- ("selfLink" .=) <$> _cSelfLink,- ("accountId" .=) <$> _cAccountId,- ("name" .=) <$> _cName, ("id" .=) <$> _cId,- ("updated" .=) <$> _cUpdated, ("type" .=) <$> _cType,- ("description" .=) <$> _cDescription,- ("profilesLinked" .=) <$> _cProFilesLinked])---- | JSON template for an Analytics account tree requests. The account tree--- request is used in the provisioning api to create an account, property,--- and view (profile). It contains the basic information required to make--- these fields.------ /See:/ 'accountTreeRequest' smart constructor.-data AccountTreeRequest = AccountTreeRequest'- { _atrAccountSettings :: !(Maybe AccountTreeRequestAccountSettings)- , _atrWebPropertyName :: !(Maybe Text)- , _atrKind :: !Text- , _atrAccountName :: !(Maybe Text)- , _atrProFileName :: !(Maybe Text)- , _atrWebsiteURL :: !(Maybe Text)- , _atrTimezone :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'AccountTreeRequest' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'atrAccountSettings'------ * 'atrWebPropertyName'------ * 'atrKind'------ * 'atrAccountName'------ * 'atrProFileName'------ * 'atrWebsiteURL'------ * 'atrTimezone'-accountTreeRequest- :: AccountTreeRequest-accountTreeRequest =- AccountTreeRequest'- { _atrAccountSettings = Nothing- , _atrWebPropertyName = Nothing- , _atrKind = "analytics#accountTreeRequest"- , _atrAccountName = Nothing- , _atrProFileName = Nothing- , _atrWebsiteURL = Nothing- , _atrTimezone = Nothing- }--atrAccountSettings :: Lens' AccountTreeRequest (Maybe AccountTreeRequestAccountSettings)-atrAccountSettings- = lens _atrAccountSettings- (\ s a -> s{_atrAccountSettings = a})--atrWebPropertyName :: Lens' AccountTreeRequest (Maybe Text)-atrWebPropertyName- = lens _atrWebPropertyName- (\ s a -> s{_atrWebPropertyName = a})---- | Resource type for account ticket.-atrKind :: Lens' AccountTreeRequest Text-atrKind = lens _atrKind (\ s a -> s{_atrKind = a})--atrAccountName :: Lens' AccountTreeRequest (Maybe Text)-atrAccountName- = lens _atrAccountName- (\ s a -> s{_atrAccountName = a})--atrProFileName :: Lens' AccountTreeRequest (Maybe Text)-atrProFileName- = lens _atrProFileName- (\ s a -> s{_atrProFileName = a})--atrWebsiteURL :: Lens' AccountTreeRequest (Maybe Text)-atrWebsiteURL- = lens _atrWebsiteURL- (\ s a -> s{_atrWebsiteURL = a})--atrTimezone :: Lens' AccountTreeRequest (Maybe Text)-atrTimezone- = lens _atrTimezone (\ s a -> s{_atrTimezone = a})--instance FromJSON AccountTreeRequest where- parseJSON- = withObject "AccountTreeRequest"- (\ o ->- AccountTreeRequest' <$>- (o .:? "accountSettings") <*>- (o .:? "webpropertyName")- <*> (o .:? "kind" .!= "analytics#accountTreeRequest")- <*> (o .:? "accountName")- <*> (o .:? "profileName")- <*> (o .:? "websiteUrl")- <*> (o .:? "timezone"))--instance ToJSON AccountTreeRequest where- toJSON AccountTreeRequest'{..}- = object- (catMaybes- [("accountSettings" .=) <$> _atrAccountSettings,- ("webpropertyName" .=) <$> _atrWebPropertyName,- Just ("kind" .= _atrKind),- ("accountName" .=) <$> _atrAccountName,- ("profileName" .=) <$> _atrProFileName,- ("websiteUrl" .=) <$> _atrWebsiteURL,- ("timezone" .=) <$> _atrTimezone])---- | JSON template for a web property reference.------ /See:/ 'webPropertyRef' smart constructor.-data WebPropertyRef = WebPropertyRef'- { _wprKind :: !Text- , _wprHref :: !(Maybe Text)- , _wprAccountId :: !(Maybe Text)- , _wprName :: !(Maybe Text)- , _wprInternalWebPropertyId :: !(Maybe Text)- , _wprId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'WebPropertyRef' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'wprKind'------ * 'wprHref'------ * 'wprAccountId'------ * 'wprName'------ * 'wprInternalWebPropertyId'------ * 'wprId'-webPropertyRef- :: WebPropertyRef-webPropertyRef =- WebPropertyRef'- { _wprKind = "analytics#webPropertyRef"- , _wprHref = Nothing- , _wprAccountId = Nothing- , _wprName = Nothing- , _wprInternalWebPropertyId = Nothing- , _wprId = Nothing- }---- | Analytics web property reference.-wprKind :: Lens' WebPropertyRef Text-wprKind = lens _wprKind (\ s a -> s{_wprKind = a})---- | Link for this web property.-wprHref :: Lens' WebPropertyRef (Maybe Text)-wprHref = lens _wprHref (\ s a -> s{_wprHref = a})---- | Account ID to which this web property belongs.-wprAccountId :: Lens' WebPropertyRef (Maybe Text)-wprAccountId- = lens _wprAccountId (\ s a -> s{_wprAccountId = a})---- | Name of this web property.-wprName :: Lens' WebPropertyRef (Maybe Text)-wprName = lens _wprName (\ s a -> s{_wprName = a})---- | Internal ID for this web property.-wprInternalWebPropertyId :: Lens' WebPropertyRef (Maybe Text)-wprInternalWebPropertyId- = lens _wprInternalWebPropertyId- (\ s a -> s{_wprInternalWebPropertyId = a})---- | Web property ID of the form UA-XXXXX-YY.-wprId :: Lens' WebPropertyRef (Maybe Text)-wprId = lens _wprId (\ s a -> s{_wprId = a})--instance FromJSON WebPropertyRef where- parseJSON- = withObject "WebPropertyRef"- (\ o ->- WebPropertyRef' <$>- (o .:? "kind" .!= "analytics#webPropertyRef") <*>- (o .:? "href")- <*> (o .:? "accountId")- <*> (o .:? "name")- <*> (o .:? "internalWebPropertyId")- <*> (o .:? "id"))--instance ToJSON WebPropertyRef where- toJSON WebPropertyRef'{..}- = object- (catMaybes- [Just ("kind" .= _wprKind), ("href" .=) <$> _wprHref,- ("accountId" .=) <$> _wprAccountId,- ("name" .=) <$> _wprName,- ("internalWebPropertyId" .=) <$>- _wprInternalWebPropertyId,- ("id" .=) <$> _wprId])---- | JSON template for an Analytics Remarketing Audience Foreign Link.------ /See:/ 'linkedForeignAccount' smart constructor.-data LinkedForeignAccount = LinkedForeignAccount'- { _lfaStatus :: !(Maybe Text)- , _lfaWebPropertyId :: !(Maybe Text)- , _lfaKind :: !Text- , _lfaEligibleForSearch :: !(Maybe Bool)- , _lfaAccountId :: !(Maybe Text)- , _lfaRemarketingAudienceId :: !(Maybe Text)- , _lfaLinkedAccountId :: !(Maybe Text)- , _lfaInternalWebPropertyId :: !(Maybe Text)- , _lfaId :: !(Maybe Text)- , _lfaType :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'LinkedForeignAccount' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lfaStatus'------ * 'lfaWebPropertyId'------ * 'lfaKind'------ * 'lfaEligibleForSearch'------ * 'lfaAccountId'------ * 'lfaRemarketingAudienceId'------ * 'lfaLinkedAccountId'------ * 'lfaInternalWebPropertyId'------ * 'lfaId'------ * 'lfaType'-linkedForeignAccount- :: LinkedForeignAccount-linkedForeignAccount =- LinkedForeignAccount'- { _lfaStatus = Nothing- , _lfaWebPropertyId = Nothing- , _lfaKind = "analytics#linkedForeignAccount"- , _lfaEligibleForSearch = Nothing- , _lfaAccountId = Nothing- , _lfaRemarketingAudienceId = Nothing- , _lfaLinkedAccountId = Nothing- , _lfaInternalWebPropertyId = Nothing- , _lfaId = Nothing- , _lfaType = Nothing- }---- | The status of this foreign account link.-lfaStatus :: Lens' LinkedForeignAccount (Maybe Text)-lfaStatus- = lens _lfaStatus (\ s a -> s{_lfaStatus = a})---- | Web property ID of the form UA-XXXXX-YY to which this linked foreign--- account belongs.-lfaWebPropertyId :: Lens' LinkedForeignAccount (Maybe Text)-lfaWebPropertyId- = lens _lfaWebPropertyId- (\ s a -> s{_lfaWebPropertyId = a})---- | Resource type for linked foreign account.-lfaKind :: Lens' LinkedForeignAccount Text-lfaKind = lens _lfaKind (\ s a -> s{_lfaKind = a})---- | Boolean indicating whether this is eligible for search.-lfaEligibleForSearch :: Lens' LinkedForeignAccount (Maybe Bool)-lfaEligibleForSearch- = lens _lfaEligibleForSearch- (\ s a -> s{_lfaEligibleForSearch = a})---- | Account ID to which this linked foreign account belongs.-lfaAccountId :: Lens' LinkedForeignAccount (Maybe Text)-lfaAccountId- = lens _lfaAccountId (\ s a -> s{_lfaAccountId = a})---- | Remarketing audience ID to which this linked foreign account belongs.-lfaRemarketingAudienceId :: Lens' LinkedForeignAccount (Maybe Text)-lfaRemarketingAudienceId- = lens _lfaRemarketingAudienceId- (\ s a -> s{_lfaRemarketingAudienceId = a})---- | The foreign account ID. For example the an AdWords \`linkedAccountId\`--- has the following format XXX-XXX-XXXX.-lfaLinkedAccountId :: Lens' LinkedForeignAccount (Maybe Text)-lfaLinkedAccountId- = lens _lfaLinkedAccountId- (\ s a -> s{_lfaLinkedAccountId = a})---- | Internal ID for the web property to which this linked foreign account--- belongs.-lfaInternalWebPropertyId :: Lens' LinkedForeignAccount (Maybe Text)-lfaInternalWebPropertyId- = lens _lfaInternalWebPropertyId- (\ s a -> s{_lfaInternalWebPropertyId = a})---- | Entity ad account link ID.-lfaId :: Lens' LinkedForeignAccount (Maybe Text)-lfaId = lens _lfaId (\ s a -> s{_lfaId = a})---- | The type of the foreign account. For example, \`ADWORDS_LINKS\`,--- \`DBM_LINKS\`, \`MCC_LINKS\` or \`OPTIMIZE\`.-lfaType :: Lens' LinkedForeignAccount (Maybe Text)-lfaType = lens _lfaType (\ s a -> s{_lfaType = a})--instance FromJSON LinkedForeignAccount where- parseJSON- = withObject "LinkedForeignAccount"- (\ o ->- LinkedForeignAccount' <$>- (o .:? "status") <*> (o .:? "webPropertyId") <*>- (o .:? "kind" .!= "analytics#linkedForeignAccount")- <*> (o .:? "eligibleForSearch")- <*> (o .:? "accountId")- <*> (o .:? "remarketingAudienceId")- <*> (o .:? "linkedAccountId")- <*> (o .:? "internalWebPropertyId")- <*> (o .:? "id")- <*> (o .:? "type"))--instance ToJSON LinkedForeignAccount where- toJSON LinkedForeignAccount'{..}- = object- (catMaybes- [("status" .=) <$> _lfaStatus,- ("webPropertyId" .=) <$> _lfaWebPropertyId,- Just ("kind" .= _lfaKind),- ("eligibleForSearch" .=) <$> _lfaEligibleForSearch,- ("accountId" .=) <$> _lfaAccountId,- ("remarketingAudienceId" .=) <$>- _lfaRemarketingAudienceId,- ("linkedAccountId" .=) <$> _lfaLinkedAccountId,- ("internalWebPropertyId" .=) <$>- _lfaInternalWebPropertyId,- ("id" .=) <$> _lfaId, ("type" .=) <$> _lfaType])---- | A goal collection lists Analytics goals to which the user has access.--- Each view (profile) can have a set of goals. Each resource in the Goal--- collection corresponds to a single Analytics goal.------ /See:/ 'goals' smart constructor.-data Goals = Goals'- { _gNextLink :: !(Maybe Text)- , _gItemsPerPage :: !(Maybe (Textual Int32))- , _gKind :: !Text- , _gUsername :: !(Maybe Text)- , _gItems :: !(Maybe [Goal])- , _gTotalResults :: !(Maybe (Textual Int32))- , _gStartIndex :: !(Maybe (Textual Int32))- , _gPreviousLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Goals' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gNextLink'------ * 'gItemsPerPage'------ * 'gKind'------ * 'gUsername'------ * 'gItems'------ * 'gTotalResults'------ * 'gStartIndex'------ * 'gPreviousLink'-goals- :: Goals-goals =- Goals'- { _gNextLink = Nothing- , _gItemsPerPage = Nothing- , _gKind = "analytics#goals"- , _gUsername = Nothing- , _gItems = Nothing- , _gTotalResults = Nothing- , _gStartIndex = Nothing- , _gPreviousLink = Nothing- }---- | Link to next page for this goal collection.-gNextLink :: Lens' Goals (Maybe Text)-gNextLink- = lens _gNextLink (\ s a -> s{_gNextLink = a})---- | The maximum number of resources the response can contain, regardless of--- the actual number of resources returned. Its value ranges from 1 to 1000--- with a value of 1000 by default, or otherwise specified by the--- max-results query parameter.-gItemsPerPage :: Lens' Goals (Maybe Int32)-gItemsPerPage- = lens _gItemsPerPage- (\ s a -> s{_gItemsPerPage = a})- . mapping _Coerce---- | Collection type.-gKind :: Lens' Goals Text-gKind = lens _gKind (\ s a -> s{_gKind = a})---- | Email ID of the authenticated user-gUsername :: Lens' Goals (Maybe Text)-gUsername- = lens _gUsername (\ s a -> s{_gUsername = a})---- | A list of goals.-gItems :: Lens' Goals [Goal]-gItems- = lens _gItems (\ s a -> s{_gItems = a}) . _Default .- _Coerce---- | The total number of results for the query, regardless of the number of--- resources in the result.-gTotalResults :: Lens' Goals (Maybe Int32)-gTotalResults- = lens _gTotalResults- (\ s a -> s{_gTotalResults = a})- . mapping _Coerce---- | The starting index of the resources, which is 1 by default or otherwise--- specified by the start-index query parameter.-gStartIndex :: Lens' Goals (Maybe Int32)-gStartIndex- = lens _gStartIndex (\ s a -> s{_gStartIndex = a}) .- mapping _Coerce---- | Link to previous page for this goal collection.-gPreviousLink :: Lens' Goals (Maybe Text)-gPreviousLink- = lens _gPreviousLink- (\ s a -> s{_gPreviousLink = a})--instance FromJSON Goals where- parseJSON- = withObject "Goals"- (\ o ->- Goals' <$>- (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>- (o .:? "kind" .!= "analytics#goals")- <*> (o .:? "username")- <*> (o .:? "items" .!= mempty)- <*> (o .:? "totalResults")- <*> (o .:? "startIndex")- <*> (o .:? "previousLink"))--instance ToJSON Goals where- toJSON Goals'{..}- = object- (catMaybes- [("nextLink" .=) <$> _gNextLink,- ("itemsPerPage" .=) <$> _gItemsPerPage,- Just ("kind" .= _gKind),- ("username" .=) <$> _gUsername,- ("items" .=) <$> _gItems,- ("totalResults" .=) <$> _gTotalResults,- ("startIndex" .=) <$> _gStartIndex,- ("previousLink" .=) <$> _gPreviousLink])---- | A union object representing a dimension or metric value. Only one of--- \"primitiveValue\" or \"conversionPathValue\" attribute will be--- populated.------ /See:/ 'mcfDataRowsItemItem' smart constructor.-data McfDataRowsItemItem = McfDataRowsItemItem'- { _mdriiPrimitiveValue :: !(Maybe Text)- , _mdriiConversionPathValue :: !(Maybe [McfDataRowsItemItemConversionPathValueItem])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'McfDataRowsItemItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'mdriiPrimitiveValue'------ * 'mdriiConversionPathValue'-mcfDataRowsItemItem- :: McfDataRowsItemItem-mcfDataRowsItemItem =- McfDataRowsItemItem'- { _mdriiPrimitiveValue = Nothing- , _mdriiConversionPathValue = Nothing- }---- | A primitive dimension value. A primitive metric value.-mdriiPrimitiveValue :: Lens' McfDataRowsItemItem (Maybe Text)-mdriiPrimitiveValue- = lens _mdriiPrimitiveValue- (\ s a -> s{_mdriiPrimitiveValue = a})---- | A conversion path dimension value, containing a list of interactions--- with their attributes.-mdriiConversionPathValue :: Lens' McfDataRowsItemItem [McfDataRowsItemItemConversionPathValueItem]-mdriiConversionPathValue- = lens _mdriiConversionPathValue- (\ s a -> s{_mdriiConversionPathValue = a})- . _Default- . _Coerce--instance FromJSON McfDataRowsItemItem where- parseJSON- = withObject "McfDataRowsItemItem"- (\ o ->- McfDataRowsItemItem' <$>- (o .:? "primitiveValue") <*>- (o .:? "conversionPathValue" .!= mempty))--instance ToJSON McfDataRowsItemItem where- toJSON McfDataRowsItemItem'{..}- = object- (catMaybes- [("primitiveValue" .=) <$> _mdriiPrimitiveValue,- ("conversionPathValue" .=) <$>- _mdriiConversionPathValue])---- | Permissions the user has for this account.------ /See:/ 'accountPermissions' smart constructor.-newtype AccountPermissions = AccountPermissions'- { _apEffective :: Maybe [Text]- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'AccountPermissions' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'apEffective'-accountPermissions- :: AccountPermissions-accountPermissions =- AccountPermissions'- { _apEffective = Nothing- }---- | All the permissions that the user has for this account. These include--- any implied permissions (e.g., EDIT implies VIEW).-apEffective :: Lens' AccountPermissions [Text]-apEffective- = lens _apEffective (\ s a -> s{_apEffective = a}) .- _Default- . _Coerce--instance FromJSON AccountPermissions where- parseJSON- = withObject "AccountPermissions"- (\ o ->- AccountPermissions' <$>- (o .:? "effective" .!= mempty))--instance ToJSON AccountPermissions where- toJSON AccountPermissions'{..}- = object- (catMaybes [("effective" .=) <$> _apEffective])---- | Entity for this link. It can be an account, a web property, or a view--- (profile).------ /See:/ 'entityUserLinkEntity' smart constructor.-data EntityUserLinkEntity = EntityUserLinkEntity'- { _euleProFileRef :: !(Maybe ProFileRef)- , _euleAccountRef :: !(Maybe AccountRef)- , _euleWebPropertyRef :: !(Maybe WebPropertyRef)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'EntityUserLinkEntity' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'euleProFileRef'------ * 'euleAccountRef'------ * 'euleWebPropertyRef'-entityUserLinkEntity- :: EntityUserLinkEntity-entityUserLinkEntity =- EntityUserLinkEntity'- { _euleProFileRef = Nothing- , _euleAccountRef = Nothing- , _euleWebPropertyRef = Nothing- }---- | View (Profile) for this link.-euleProFileRef :: Lens' EntityUserLinkEntity (Maybe ProFileRef)-euleProFileRef- = lens _euleProFileRef- (\ s a -> s{_euleProFileRef = a})---- | Account for this link.-euleAccountRef :: Lens' EntityUserLinkEntity (Maybe AccountRef)-euleAccountRef- = lens _euleAccountRef- (\ s a -> s{_euleAccountRef = a})---- | Web property for this link.-euleWebPropertyRef :: Lens' EntityUserLinkEntity (Maybe WebPropertyRef)-euleWebPropertyRef- = lens _euleWebPropertyRef- (\ s a -> s{_euleWebPropertyRef = a})--instance FromJSON EntityUserLinkEntity where- parseJSON- = withObject "EntityUserLinkEntity"- (\ o ->- EntityUserLinkEntity' <$>- (o .:? "profileRef") <*> (o .:? "accountRef") <*>- (o .:? "webPropertyRef"))--instance ToJSON EntityUserLinkEntity where- toJSON EntityUserLinkEntity'{..}- = object- (catMaybes- [("profileRef" .=) <$> _euleProFileRef,- ("accountRef" .=) <$> _euleAccountRef,- ("webPropertyRef" .=) <$> _euleWebPropertyRef])---- | JSON template for Analytics account entry.------ /See:/ 'account' smart constructor.-data Account = Account'- { _accChildLink :: !(Maybe AccountChildLink)- , _accKind :: !Text- , _accCreated :: !(Maybe DateTime')- , _accSelfLink :: !(Maybe Text)- , _accName :: !(Maybe Text)- , _accStarred :: !(Maybe Bool)- , _accId :: !(Maybe Text)- , _accUpdated :: !(Maybe DateTime')- , _accPermissions :: !(Maybe AccountPermissions)- } 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:------ * 'accChildLink'------ * 'accKind'------ * 'accCreated'------ * 'accSelfLink'------ * 'accName'------ * 'accStarred'------ * 'accId'------ * 'accUpdated'------ * 'accPermissions'-account- :: Account-account =- Account'- { _accChildLink = Nothing- , _accKind = "analytics#account"- , _accCreated = Nothing- , _accSelfLink = Nothing- , _accName = Nothing- , _accStarred = Nothing- , _accId = Nothing- , _accUpdated = Nothing- , _accPermissions = Nothing- }---- | Child link for an account entry. Points to the list of web properties--- for this account.-accChildLink :: Lens' Account (Maybe AccountChildLink)-accChildLink- = lens _accChildLink (\ s a -> s{_accChildLink = a})---- | Resource type for Analytics account.-accKind :: Lens' Account Text-accKind = lens _accKind (\ s a -> s{_accKind = a})---- | Time the account was created.-accCreated :: Lens' Account (Maybe UTCTime)-accCreated- = lens _accCreated (\ s a -> s{_accCreated = a}) .- mapping _DateTime---- | Link for this account.-accSelfLink :: Lens' Account (Maybe Text)-accSelfLink- = lens _accSelfLink (\ s a -> s{_accSelfLink = a})---- | Account name.-accName :: Lens' Account (Maybe Text)-accName = lens _accName (\ s a -> s{_accName = a})---- | Indicates whether this account is starred or not.-accStarred :: Lens' Account (Maybe Bool)-accStarred- = lens _accStarred (\ s a -> s{_accStarred = a})---- | Account ID.-accId :: Lens' Account (Maybe Text)-accId = lens _accId (\ s a -> s{_accId = a})---- | Time the account was last modified.-accUpdated :: Lens' Account (Maybe UTCTime)-accUpdated- = lens _accUpdated (\ s a -> s{_accUpdated = a}) .- mapping _DateTime---- | Permissions the user has for this account.-accPermissions :: Lens' Account (Maybe AccountPermissions)-accPermissions- = lens _accPermissions- (\ s a -> s{_accPermissions = a})--instance FromJSON Account where- parseJSON- = withObject "Account"- (\ o ->- Account' <$>- (o .:? "childLink") <*>- (o .:? "kind" .!= "analytics#account")- <*> (o .:? "created")- <*> (o .:? "selfLink")- <*> (o .:? "name")- <*> (o .:? "starred")- <*> (o .:? "id")- <*> (o .:? "updated")- <*> (o .:? "permissions"))--instance ToJSON Account where- toJSON Account'{..}- = object- (catMaybes- [("childLink" .=) <$> _accChildLink,- Just ("kind" .= _accKind),- ("created" .=) <$> _accCreated,- ("selfLink" .=) <$> _accSelfLink,- ("name" .=) <$> _accName,- ("starred" .=) <$> _accStarred, ("id" .=) <$> _accId,- ("updated" .=) <$> _accUpdated,- ("permissions" .=) <$> _accPermissions])---- | JSON template for Analytics experiment resource.------ /See:/ 'experiment' smart constructor.-data Experiment = Experiment'- { _expParentLink :: !(Maybe ExperimentParentLink)- , _expEqualWeighting :: !(Maybe Bool)- , _expStatus :: !(Maybe Text)- , _expWebPropertyId :: !(Maybe Text)- , _expStartTime :: !(Maybe DateTime')- , _expSnippet :: !(Maybe Text)- , _expKind :: !Text- , _expCreated :: !(Maybe DateTime')- , _expReasonExperimentEnded :: !(Maybe Text)- , _expTrafficCoverage :: !(Maybe (Textual Double))- , _expEditableInGaUi :: !(Maybe Bool)- , _expMinimumExperimentLengthInDays :: !(Maybe (Textual Int32))- , _expProFileId :: !(Maybe Text)- , _expOptimizationType :: !(Maybe Text)- , _expSelfLink :: !(Maybe Text)- , _expAccountId :: !(Maybe Text)- , _expName :: !(Maybe Text)- , _expWinnerFound :: !(Maybe Bool)- , _expEndTime :: !(Maybe DateTime')- , _expVariations :: !(Maybe [ExperimentVariationsItem])- , _expInternalWebPropertyId :: !(Maybe Text)- , _expId :: !(Maybe Text)- , _expUpdated :: !(Maybe DateTime')- , _expRewriteVariationURLsAsOriginal :: !(Maybe Bool)- , _expObjectiveMetric :: !(Maybe Text)- , _expWinnerConfidenceLevel :: !(Maybe (Textual Double))- , _expServingFramework :: !(Maybe Text)- , _expDescription :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Experiment' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'expParentLink'------ * 'expEqualWeighting'------ * 'expStatus'------ * 'expWebPropertyId'------ * 'expStartTime'------ * 'expSnippet'------ * 'expKind'------ * 'expCreated'------ * 'expReasonExperimentEnded'------ * 'expTrafficCoverage'------ * 'expEditableInGaUi'------ * 'expMinimumExperimentLengthInDays'------ * 'expProFileId'------ * 'expOptimizationType'------ * 'expSelfLink'------ * 'expAccountId'------ * 'expName'------ * 'expWinnerFound'------ * 'expEndTime'------ * 'expVariations'------ * 'expInternalWebPropertyId'------ * 'expId'------ * 'expUpdated'------ * 'expRewriteVariationURLsAsOriginal'------ * 'expObjectiveMetric'------ * 'expWinnerConfidenceLevel'------ * 'expServingFramework'------ * 'expDescription'-experiment- :: Experiment-experiment =- Experiment'- { _expParentLink = Nothing- , _expEqualWeighting = Nothing- , _expStatus = Nothing- , _expWebPropertyId = Nothing- , _expStartTime = Nothing- , _expSnippet = Nothing- , _expKind = "analytics#experiment"- , _expCreated = Nothing- , _expReasonExperimentEnded = Nothing- , _expTrafficCoverage = Nothing- , _expEditableInGaUi = Nothing- , _expMinimumExperimentLengthInDays = Nothing- , _expProFileId = Nothing- , _expOptimizationType = Nothing- , _expSelfLink = Nothing- , _expAccountId = Nothing- , _expName = Nothing- , _expWinnerFound = Nothing- , _expEndTime = Nothing- , _expVariations = Nothing- , _expInternalWebPropertyId = Nothing- , _expId = Nothing- , _expUpdated = Nothing- , _expRewriteVariationURLsAsOriginal = Nothing- , _expObjectiveMetric = Nothing- , _expWinnerConfidenceLevel = Nothing- , _expServingFramework = Nothing- , _expDescription = Nothing- }---- | Parent link for an experiment. Points to the view (profile) to which--- this experiment belongs.-expParentLink :: Lens' Experiment (Maybe ExperimentParentLink)-expParentLink- = lens _expParentLink- (\ s a -> s{_expParentLink = a})---- | Boolean specifying whether to distribute traffic evenly across all--- variations. If the value is False, content experiments follows the--- default behavior of adjusting traffic dynamically based on variation--- performance. Optional -- defaults to False. This field may not be--- changed for an experiment whose status is ENDED.-expEqualWeighting :: Lens' Experiment (Maybe Bool)-expEqualWeighting- = lens _expEqualWeighting- (\ s a -> s{_expEqualWeighting = a})---- | Experiment status. Possible values: \"DRAFT\", \"READY_TO_RUN\",--- \"RUNNING\", \"ENDED\". Experiments can be created in the \"DRAFT\",--- \"READY_TO_RUN\" or \"RUNNING\" state. This field is required when--- creating an experiment.-expStatus :: Lens' Experiment (Maybe Text)-expStatus- = lens _expStatus (\ s a -> s{_expStatus = a})---- | Web property ID to which this experiment belongs. The web property ID is--- of the form UA-XXXXX-YY. This field is read-only.-expWebPropertyId :: Lens' Experiment (Maybe Text)-expWebPropertyId- = lens _expWebPropertyId- (\ s a -> s{_expWebPropertyId = a})---- | The starting time of the experiment (the time the status changed from--- READY_TO_RUN to RUNNING). This field is present only if the experiment--- has started. This field is read-only.-expStartTime :: Lens' Experiment (Maybe UTCTime)-expStartTime- = lens _expStartTime (\ s a -> s{_expStartTime = a})- . mapping _DateTime---- | The snippet of code to include on the control page(s). This field is--- read-only.-expSnippet :: Lens' Experiment (Maybe Text)-expSnippet- = lens _expSnippet (\ s a -> s{_expSnippet = a})---- | Resource type for an Analytics experiment. This field is read-only.-expKind :: Lens' Experiment Text-expKind = lens _expKind (\ s a -> s{_expKind = a})---- | Time the experiment was created. This field is read-only.-expCreated :: Lens' Experiment (Maybe UTCTime)-expCreated- = lens _expCreated (\ s a -> s{_expCreated = a}) .- mapping _DateTime---- | Why the experiment ended. Possible values: \"STOPPED_BY_USER\",--- \"WINNER_FOUND\", \"EXPERIMENT_EXPIRED\", \"ENDED_WITH_NO_WINNER\",--- \"GOAL_OBJECTIVE_CHANGED\". \"ENDED_WITH_NO_WINNER\" means that the--- experiment didn\'t expire but no winner was projected to be found. If--- the experiment status is changed via the API to ENDED this field is set--- to STOPPED_BY_USER. This field is read-only.-expReasonExperimentEnded :: Lens' Experiment (Maybe Text)-expReasonExperimentEnded- = lens _expReasonExperimentEnded- (\ s a -> s{_expReasonExperimentEnded = a})---- | A floating-point number in (0, 1]. Specifies the fraction of the traffic--- that participates in the experiment. Can be changed for a running--- experiment. This field may not be changed for an experiments whose--- status is ENDED.-expTrafficCoverage :: Lens' Experiment (Maybe Double)-expTrafficCoverage- = lens _expTrafficCoverage- (\ s a -> s{_expTrafficCoverage = a})- . mapping _Coerce---- | If true, the end user will be able to edit the experiment via the Google--- Analytics user interface.-expEditableInGaUi :: Lens' Experiment (Maybe Bool)-expEditableInGaUi- = lens _expEditableInGaUi- (\ s a -> s{_expEditableInGaUi = a})---- | An integer number in [3, 90]. Specifies the minimum length of the--- experiment. Can be changed for a running experiment. This field may not--- be changed for an experiments whose status is ENDED.-expMinimumExperimentLengthInDays :: Lens' Experiment (Maybe Int32)-expMinimumExperimentLengthInDays- = lens _expMinimumExperimentLengthInDays- (\ s a -> s{_expMinimumExperimentLengthInDays = a})- . mapping _Coerce---- | View (Profile) ID to which this experiment belongs. This field is--- read-only.-expProFileId :: Lens' Experiment (Maybe Text)-expProFileId- = lens _expProFileId (\ s a -> s{_expProFileId = a})---- | Whether the objectiveMetric should be minimized or maximized. Possible--- values: \"MAXIMUM\", \"MINIMUM\". Optional--defaults to \"MAXIMUM\".--- Cannot be specified without objectiveMetric. Cannot be modified when--- status is \"RUNNING\" or \"ENDED\".-expOptimizationType :: Lens' Experiment (Maybe Text)-expOptimizationType- = lens _expOptimizationType- (\ s a -> s{_expOptimizationType = a})---- | Link for this experiment. This field is read-only.-expSelfLink :: Lens' Experiment (Maybe Text)-expSelfLink- = lens _expSelfLink (\ s a -> s{_expSelfLink = a})---- | Account ID to which this experiment belongs. This field is read-only.-expAccountId :: Lens' Experiment (Maybe Text)-expAccountId- = lens _expAccountId (\ s a -> s{_expAccountId = a})---- | Experiment name. This field may not be changed for an experiment whose--- status is ENDED. This field is required when creating an experiment.-expName :: Lens' Experiment (Maybe Text)-expName = lens _expName (\ s a -> s{_expName = a})---- | Boolean specifying whether a winner has been found for this experiment.--- This field is read-only.-expWinnerFound :: Lens' Experiment (Maybe Bool)-expWinnerFound- = lens _expWinnerFound- (\ s a -> s{_expWinnerFound = a})---- | The ending time of the experiment (the time the status changed from--- RUNNING to ENDED). This field is present only if the experiment has--- ended. This field is read-only.-expEndTime :: Lens' Experiment (Maybe UTCTime)-expEndTime- = lens _expEndTime (\ s a -> s{_expEndTime = a}) .- mapping _DateTime---- | Array of variations. The first variation in the array is the original.--- The number of variations may not change once an experiment is in the--- RUNNING state. At least two variations are required before status can be--- set to RUNNING.-expVariations :: Lens' Experiment [ExperimentVariationsItem]-expVariations- = lens _expVariations- (\ s a -> s{_expVariations = a})- . _Default- . _Coerce---- | Internal ID for the web property to which this experiment belongs. This--- field is read-only.-expInternalWebPropertyId :: Lens' Experiment (Maybe Text)-expInternalWebPropertyId- = lens _expInternalWebPropertyId- (\ s a -> s{_expInternalWebPropertyId = a})---- | Experiment ID. Required for patch and update. Disallowed for create.-expId :: Lens' Experiment (Maybe Text)-expId = lens _expId (\ s a -> s{_expId = a})---- | Time the experiment was last modified. This field is read-only.-expUpdated :: Lens' Experiment (Maybe UTCTime)-expUpdated- = lens _expUpdated (\ s a -> s{_expUpdated = a}) .- mapping _DateTime---- | Boolean specifying whether variations URLS are rewritten to match those--- of the original. This field may not be changed for an experiments whose--- status is ENDED.-expRewriteVariationURLsAsOriginal :: Lens' Experiment (Maybe Bool)-expRewriteVariationURLsAsOriginal- = lens _expRewriteVariationURLsAsOriginal- (\ s a -> s{_expRewriteVariationURLsAsOriginal = a})---- | The metric that the experiment is optimizing. Valid values:--- \"ga:goal(n)Completions\", \"ga:adsenseAdsClicks\",--- \"ga:adsenseAdsViewed\", \"ga:adsenseRevenue\", \"ga:bounces\",--- \"ga:pageviews\", \"ga:sessionDuration\", \"ga:transactions\",--- \"ga:transactionRevenue\". This field is required if status is--- \"RUNNING\" and servingFramework is one of \"REDIRECT\" or \"API\".-expObjectiveMetric :: Lens' Experiment (Maybe Text)-expObjectiveMetric- = lens _expObjectiveMetric- (\ s a -> s{_expObjectiveMetric = a})---- | A floating-point number in (0, 1). Specifies the necessary confidence--- level to choose a winner. This field may not be changed for an--- experiments whose status is ENDED.-expWinnerConfidenceLevel :: Lens' Experiment (Maybe Double)-expWinnerConfidenceLevel- = lens _expWinnerConfidenceLevel- (\ s a -> s{_expWinnerConfidenceLevel = a})- . mapping _Coerce---- | The framework used to serve the experiment variations and evaluate the--- results. One of: - REDIRECT: Google Analytics redirects traffic to--- different variation pages, reports the chosen variation and evaluates--- the results. - API: Google Analytics chooses and reports the variation--- to serve and evaluates the results; the caller is responsible for--- serving the selected variation. - EXTERNAL: The variations will be--- served externally and the chosen variation reported to Google Analytics.--- The caller is responsible for serving the selected variation and--- evaluating the results.-expServingFramework :: Lens' Experiment (Maybe Text)-expServingFramework- = lens _expServingFramework- (\ s a -> s{_expServingFramework = a})---- | Notes about this experiment.-expDescription :: Lens' Experiment (Maybe Text)-expDescription- = lens _expDescription- (\ s a -> s{_expDescription = a})--instance FromJSON Experiment where- parseJSON- = withObject "Experiment"- (\ o ->- Experiment' <$>- (o .:? "parentLink") <*> (o .:? "equalWeighting") <*>- (o .:? "status")- <*> (o .:? "webPropertyId")- <*> (o .:? "startTime")- <*> (o .:? "snippet")- <*> (o .:? "kind" .!= "analytics#experiment")- <*> (o .:? "created")- <*> (o .:? "reasonExperimentEnded")- <*> (o .:? "trafficCoverage")- <*> (o .:? "editableInGaUi")- <*> (o .:? "minimumExperimentLengthInDays")- <*> (o .:? "profileId")- <*> (o .:? "optimizationType")- <*> (o .:? "selfLink")- <*> (o .:? "accountId")- <*> (o .:? "name")- <*> (o .:? "winnerFound")- <*> (o .:? "endTime")- <*> (o .:? "variations" .!= mempty)- <*> (o .:? "internalWebPropertyId")- <*> (o .:? "id")- <*> (o .:? "updated")- <*> (o .:? "rewriteVariationUrlsAsOriginal")- <*> (o .:? "objectiveMetric")- <*> (o .:? "winnerConfidenceLevel")- <*> (o .:? "servingFramework")- <*> (o .:? "description"))--instance ToJSON Experiment where- toJSON Experiment'{..}- = object- (catMaybes- [("parentLink" .=) <$> _expParentLink,- ("equalWeighting" .=) <$> _expEqualWeighting,- ("status" .=) <$> _expStatus,- ("webPropertyId" .=) <$> _expWebPropertyId,- ("startTime" .=) <$> _expStartTime,- ("snippet" .=) <$> _expSnippet,- Just ("kind" .= _expKind),- ("created" .=) <$> _expCreated,- ("reasonExperimentEnded" .=) <$>- _expReasonExperimentEnded,- ("trafficCoverage" .=) <$> _expTrafficCoverage,- ("editableInGaUi" .=) <$> _expEditableInGaUi,- ("minimumExperimentLengthInDays" .=) <$>- _expMinimumExperimentLengthInDays,- ("profileId" .=) <$> _expProFileId,- ("optimizationType" .=) <$> _expOptimizationType,- ("selfLink" .=) <$> _expSelfLink,- ("accountId" .=) <$> _expAccountId,- ("name" .=) <$> _expName,- ("winnerFound" .=) <$> _expWinnerFound,- ("endTime" .=) <$> _expEndTime,- ("variations" .=) <$> _expVariations,- ("internalWebPropertyId" .=) <$>- _expInternalWebPropertyId,- ("id" .=) <$> _expId, ("updated" .=) <$> _expUpdated,- ("rewriteVariationUrlsAsOriginal" .=) <$>- _expRewriteVariationURLsAsOriginal,- ("objectiveMetric" .=) <$> _expObjectiveMetric,- ("winnerConfidenceLevel" .=) <$>- _expWinnerConfidenceLevel,- ("servingFramework" .=) <$> _expServingFramework,- ("description" .=) <$> _expDescription])---- | An entity user link collection provides a list of Analytics ACL links--- Each resource in this collection corresponds to a single link.------ /See:/ 'entityUserLinks' smart constructor.-data EntityUserLinks = EntityUserLinks'- { _eulNextLink :: !(Maybe Text)- , _eulItemsPerPage :: !(Maybe (Textual Int32))- , _eulKind :: !Text- , _eulItems :: !(Maybe [EntityUserLink])- , _eulTotalResults :: !(Maybe (Textual Int32))- , _eulStartIndex :: !(Maybe (Textual Int32))- , _eulPreviousLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'EntityUserLinks' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'eulNextLink'------ * 'eulItemsPerPage'------ * 'eulKind'------ * 'eulItems'------ * 'eulTotalResults'------ * 'eulStartIndex'------ * 'eulPreviousLink'-entityUserLinks- :: EntityUserLinks-entityUserLinks =- EntityUserLinks'- { _eulNextLink = Nothing- , _eulItemsPerPage = Nothing- , _eulKind = "analytics#entityUserLinks"- , _eulItems = Nothing- , _eulTotalResults = Nothing- , _eulStartIndex = Nothing- , _eulPreviousLink = Nothing- }---- | Next link for this account collection.-eulNextLink :: Lens' EntityUserLinks (Maybe Text)-eulNextLink- = lens _eulNextLink (\ s a -> s{_eulNextLink = a})---- | The maximum number of entries the response can contain, regardless of--- the actual number of entries returned. Its value ranges from 1 to 1000--- with a value of 1000 by default, or otherwise specified by the--- max-results query parameter.-eulItemsPerPage :: Lens' EntityUserLinks (Maybe Int32)-eulItemsPerPage- = lens _eulItemsPerPage- (\ s a -> s{_eulItemsPerPage = a})- . mapping _Coerce---- | Collection type.-eulKind :: Lens' EntityUserLinks Text-eulKind = lens _eulKind (\ s a -> s{_eulKind = a})---- | A list of entity user links.-eulItems :: Lens' EntityUserLinks [EntityUserLink]-eulItems- = lens _eulItems (\ s a -> s{_eulItems = a}) .- _Default- . _Coerce---- | The total number of results for the query, regardless of the number of--- results in the response.-eulTotalResults :: Lens' EntityUserLinks (Maybe Int32)-eulTotalResults- = lens _eulTotalResults- (\ s a -> s{_eulTotalResults = a})- . mapping _Coerce---- | The starting index of the entries, which is 1 by default or otherwise--- specified by the start-index query parameter.-eulStartIndex :: Lens' EntityUserLinks (Maybe Int32)-eulStartIndex- = lens _eulStartIndex- (\ s a -> s{_eulStartIndex = a})- . mapping _Coerce---- | Previous link for this account collection.-eulPreviousLink :: Lens' EntityUserLinks (Maybe Text)-eulPreviousLink- = lens _eulPreviousLink- (\ s a -> s{_eulPreviousLink = a})--instance FromJSON EntityUserLinks where- parseJSON- = withObject "EntityUserLinks"- (\ o ->- EntityUserLinks' <$>- (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>- (o .:? "kind" .!= "analytics#entityUserLinks")- <*> (o .:? "items" .!= mempty)- <*> (o .:? "totalResults")- <*> (o .:? "startIndex")- <*> (o .:? "previousLink"))--instance ToJSON EntityUserLinks where- toJSON EntityUserLinks'{..}- = object- (catMaybes- [("nextLink" .=) <$> _eulNextLink,- ("itemsPerPage" .=) <$> _eulItemsPerPage,- Just ("kind" .= _eulKind),- ("items" .=) <$> _eulItems,- ("totalResults" .=) <$> _eulTotalResults,- ("startIndex" .=) <$> _eulStartIndex,- ("previousLink" .=) <$> _eulPreviousLink])---- | JSON template for an AdWords account.------ /See:/ 'adWordsAccount' smart constructor.-data AdWordsAccount = AdWordsAccount'- { _awaAutoTaggingEnabled :: !(Maybe Bool)- , _awaKind :: !Text- , _awaCustomerId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'AdWordsAccount' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'awaAutoTaggingEnabled'------ * 'awaKind'------ * 'awaCustomerId'-adWordsAccount- :: AdWordsAccount-adWordsAccount =- AdWordsAccount'- { _awaAutoTaggingEnabled = Nothing- , _awaKind = "analytics#adWordsAccount"- , _awaCustomerId = Nothing- }---- | True if auto-tagging is enabled on the AdWords account. Read-only after--- the insert operation.-awaAutoTaggingEnabled :: Lens' AdWordsAccount (Maybe Bool)-awaAutoTaggingEnabled- = lens _awaAutoTaggingEnabled- (\ s a -> s{_awaAutoTaggingEnabled = a})---- | Resource type for AdWords account.-awaKind :: Lens' AdWordsAccount Text-awaKind = lens _awaKind (\ s a -> s{_awaKind = a})---- | Customer ID. This field is required when creating an AdWords link.-awaCustomerId :: Lens' AdWordsAccount (Maybe Text)-awaCustomerId- = lens _awaCustomerId- (\ s a -> s{_awaCustomerId = a})--instance FromJSON AdWordsAccount where- parseJSON- = withObject "AdWordsAccount"- (\ o ->- AdWordsAccount' <$>- (o .:? "autoTaggingEnabled") <*>- (o .:? "kind" .!= "analytics#adWordsAccount")- <*> (o .:? "customerId"))--instance ToJSON AdWordsAccount where- toJSON AdWordsAccount'{..}- = object- (catMaybes- [("autoTaggingEnabled" .=) <$>- _awaAutoTaggingEnabled,- Just ("kind" .= _awaKind),- ("customerId" .=) <$> _awaCustomerId])---- | JSON template for a profile filter link.------ /See:/ 'filterRef' smart constructor.-data FilterRef = FilterRef'- { _frKind :: !Text- , _frHref :: !(Maybe Text)- , _frAccountId :: !(Maybe Text)- , _frName :: !(Maybe Text)- , _frId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'FilterRef' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'frKind'------ * 'frHref'------ * 'frAccountId'------ * 'frName'------ * 'frId'-filterRef- :: FilterRef-filterRef =- FilterRef'- { _frKind = "analytics#filterRef"- , _frHref = Nothing- , _frAccountId = Nothing- , _frName = Nothing- , _frId = Nothing- }---- | Kind value for filter reference.-frKind :: Lens' FilterRef Text-frKind = lens _frKind (\ s a -> s{_frKind = a})---- | Link for this filter.-frHref :: Lens' FilterRef (Maybe Text)-frHref = lens _frHref (\ s a -> s{_frHref = a})---- | Account ID to which this filter belongs.-frAccountId :: Lens' FilterRef (Maybe Text)-frAccountId- = lens _frAccountId (\ s a -> s{_frAccountId = a})---- | Name of this filter.-frName :: Lens' FilterRef (Maybe Text)-frName = lens _frName (\ s a -> s{_frName = a})---- | Filter ID.-frId :: Lens' FilterRef (Maybe Text)-frId = lens _frId (\ s a -> s{_frId = a})--instance FromJSON FilterRef where- parseJSON- = withObject "FilterRef"- (\ o ->- FilterRef' <$>- (o .:? "kind" .!= "analytics#filterRef") <*>- (o .:? "href")- <*> (o .:? "accountId")- <*> (o .:? "name")- <*> (o .:? "id"))--instance ToJSON FilterRef where- toJSON FilterRef'{..}- = object- (catMaybes- [Just ("kind" .= _frKind), ("href" .=) <$> _frHref,- ("accountId" .=) <$> _frAccountId,- ("name" .=) <$> _frName, ("id" .=) <$> _frId])---- | Details for the goal of the type VISIT_TIME_ON_SITE.------ /See:/ 'goalVisitTimeOnSiteDetails' smart constructor.-data GoalVisitTimeOnSiteDetails = GoalVisitTimeOnSiteDetails'- { _gvtosdComparisonValue :: !(Maybe (Textual Int64))- , _gvtosdComparisonType :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoalVisitTimeOnSiteDetails' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gvtosdComparisonValue'------ * 'gvtosdComparisonType'-goalVisitTimeOnSiteDetails- :: GoalVisitTimeOnSiteDetails-goalVisitTimeOnSiteDetails =- GoalVisitTimeOnSiteDetails'- { _gvtosdComparisonValue = Nothing- , _gvtosdComparisonType = Nothing- }---- | Value used for this comparison.-gvtosdComparisonValue :: Lens' GoalVisitTimeOnSiteDetails (Maybe Int64)-gvtosdComparisonValue- = lens _gvtosdComparisonValue- (\ s a -> s{_gvtosdComparisonValue = a})- . mapping _Coerce---- | Type of comparison. Possible values are LESS_THAN or GREATER_THAN.-gvtosdComparisonType :: Lens' GoalVisitTimeOnSiteDetails (Maybe Text)-gvtosdComparisonType- = lens _gvtosdComparisonType- (\ s a -> s{_gvtosdComparisonType = a})--instance FromJSON GoalVisitTimeOnSiteDetails where- parseJSON- = withObject "GoalVisitTimeOnSiteDetails"- (\ o ->- GoalVisitTimeOnSiteDetails' <$>- (o .:? "comparisonValue") <*>- (o .:? "comparisonType"))--instance ToJSON GoalVisitTimeOnSiteDetails where- toJSON GoalVisitTimeOnSiteDetails'{..}- = object- (catMaybes- [("comparisonValue" .=) <$> _gvtosdComparisonValue,- ("comparisonType" .=) <$> _gvtosdComparisonType])---- | A web property collection lists Analytics web properties to which the--- user has access. Each resource in the collection corresponds to a single--- Analytics web property.------ /See:/ 'webProperties' smart constructor.-data WebProperties = WebProperties'- { _wpNextLink :: !(Maybe Text)- , _wpItemsPerPage :: !(Maybe (Textual Int32))- , _wpKind :: !Text- , _wpUsername :: !(Maybe Text)- , _wpItems :: !(Maybe [WebProperty])- , _wpTotalResults :: !(Maybe (Textual Int32))- , _wpStartIndex :: !(Maybe (Textual Int32))- , _wpPreviousLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'WebProperties' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'wpNextLink'------ * 'wpItemsPerPage'------ * 'wpKind'------ * 'wpUsername'------ * 'wpItems'------ * 'wpTotalResults'------ * 'wpStartIndex'------ * 'wpPreviousLink'-webProperties- :: WebProperties-webProperties =- WebProperties'- { _wpNextLink = Nothing- , _wpItemsPerPage = Nothing- , _wpKind = "analytics#webproperties"- , _wpUsername = Nothing- , _wpItems = Nothing- , _wpTotalResults = Nothing- , _wpStartIndex = Nothing- , _wpPreviousLink = Nothing- }---- | Link to next page for this web property collection.-wpNextLink :: Lens' WebProperties (Maybe Text)-wpNextLink- = lens _wpNextLink (\ s a -> s{_wpNextLink = a})---- | The maximum number of resources the response can contain, regardless of--- the actual number of resources returned. Its value ranges from 1 to 1000--- with a value of 1000 by default, or otherwise specified by the--- max-results query parameter.-wpItemsPerPage :: Lens' WebProperties (Maybe Int32)-wpItemsPerPage- = lens _wpItemsPerPage- (\ s a -> s{_wpItemsPerPage = a})- . mapping _Coerce---- | Collection type.-wpKind :: Lens' WebProperties Text-wpKind = lens _wpKind (\ s a -> s{_wpKind = a})---- | Email ID of the authenticated user-wpUsername :: Lens' WebProperties (Maybe Text)-wpUsername- = lens _wpUsername (\ s a -> s{_wpUsername = a})---- | A list of web properties.-wpItems :: Lens' WebProperties [WebProperty]-wpItems- = lens _wpItems (\ s a -> s{_wpItems = a}) . _Default- . _Coerce---- | The total number of results for the query, regardless of the number of--- results in the response.-wpTotalResults :: Lens' WebProperties (Maybe Int32)-wpTotalResults- = lens _wpTotalResults- (\ s a -> s{_wpTotalResults = a})- . mapping _Coerce---- | The starting index of the resources, which is 1 by default or otherwise--- specified by the start-index query parameter.-wpStartIndex :: Lens' WebProperties (Maybe Int32)-wpStartIndex- = lens _wpStartIndex (\ s a -> s{_wpStartIndex = a})- . mapping _Coerce---- | Link to previous page for this web property collection.-wpPreviousLink :: Lens' WebProperties (Maybe Text)-wpPreviousLink- = lens _wpPreviousLink- (\ s a -> s{_wpPreviousLink = a})--instance FromJSON WebProperties where- parseJSON- = withObject "WebProperties"- (\ o ->- WebProperties' <$>- (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>- (o .:? "kind" .!= "analytics#webproperties")- <*> (o .:? "username")- <*> (o .:? "items" .!= mempty)- <*> (o .:? "totalResults")- <*> (o .:? "startIndex")- <*> (o .:? "previousLink"))--instance ToJSON WebProperties where- toJSON WebProperties'{..}- = object- (catMaybes- [("nextLink" .=) <$> _wpNextLink,- ("itemsPerPage" .=) <$> _wpItemsPerPage,- Just ("kind" .= _wpKind),- ("username" .=) <$> _wpUsername,- ("items" .=) <$> _wpItems,- ("totalResults" .=) <$> _wpTotalResults,- ("startIndex" .=) <$> _wpStartIndex,- ("previousLink" .=) <$> _wpPreviousLink])---- | A custom metric collection lists Analytics custom metrics to which the--- user has access. Each resource in the collection corresponds to a single--- Analytics custom metric.------ /See:/ 'customMetrics' smart constructor.-data CustomMetrics = CustomMetrics'- { _cmNextLink :: !(Maybe Text)- , _cmItemsPerPage :: !(Maybe (Textual Int32))- , _cmKind :: !Text- , _cmUsername :: !(Maybe Text)- , _cmItems :: !(Maybe [CustomMetric])- , _cmTotalResults :: !(Maybe (Textual Int32))- , _cmStartIndex :: !(Maybe (Textual Int32))- , _cmPreviousLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'CustomMetrics' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cmNextLink'------ * 'cmItemsPerPage'------ * 'cmKind'------ * 'cmUsername'------ * 'cmItems'------ * 'cmTotalResults'------ * 'cmStartIndex'------ * 'cmPreviousLink'-customMetrics- :: CustomMetrics-customMetrics =- CustomMetrics'- { _cmNextLink = Nothing- , _cmItemsPerPage = Nothing- , _cmKind = "analytics#customMetrics"- , _cmUsername = Nothing- , _cmItems = Nothing- , _cmTotalResults = Nothing- , _cmStartIndex = Nothing- , _cmPreviousLink = Nothing- }---- | Link to next page for this custom metric collection.-cmNextLink :: Lens' CustomMetrics (Maybe Text)-cmNextLink- = lens _cmNextLink (\ s a -> s{_cmNextLink = a})---- | The maximum number of resources the response can contain, regardless of--- the actual number of resources returned. Its value ranges from 1 to 1000--- with a value of 1000 by default, or otherwise specified by the--- max-results query parameter.-cmItemsPerPage :: Lens' CustomMetrics (Maybe Int32)-cmItemsPerPage- = lens _cmItemsPerPage- (\ s a -> s{_cmItemsPerPage = a})- . mapping _Coerce---- | Collection type.-cmKind :: Lens' CustomMetrics Text-cmKind = lens _cmKind (\ s a -> s{_cmKind = a})---- | Email ID of the authenticated user-cmUsername :: Lens' CustomMetrics (Maybe Text)-cmUsername- = lens _cmUsername (\ s a -> s{_cmUsername = a})---- | Collection of custom metrics.-cmItems :: Lens' CustomMetrics [CustomMetric]-cmItems- = lens _cmItems (\ s a -> s{_cmItems = a}) . _Default- . _Coerce---- | The total number of results for the query, regardless of the number of--- results in the response.-cmTotalResults :: Lens' CustomMetrics (Maybe Int32)-cmTotalResults- = lens _cmTotalResults- (\ s a -> s{_cmTotalResults = a})- . mapping _Coerce---- | The starting index of the resources, which is 1 by default or otherwise--- specified by the start-index query parameter.-cmStartIndex :: Lens' CustomMetrics (Maybe Int32)-cmStartIndex- = lens _cmStartIndex (\ s a -> s{_cmStartIndex = a})- . mapping _Coerce---- | Link to previous page for this custom metric collection.-cmPreviousLink :: Lens' CustomMetrics (Maybe Text)-cmPreviousLink- = lens _cmPreviousLink- (\ s a -> s{_cmPreviousLink = a})--instance FromJSON CustomMetrics where- parseJSON- = withObject "CustomMetrics"- (\ o ->- CustomMetrics' <$>- (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>- (o .:? "kind" .!= "analytics#customMetrics")- <*> (o .:? "username")- <*> (o .:? "items" .!= mempty)- <*> (o .:? "totalResults")- <*> (o .:? "startIndex")- <*> (o .:? "previousLink"))--instance ToJSON CustomMetrics where- toJSON CustomMetrics'{..}- = object- (catMaybes- [("nextLink" .=) <$> _cmNextLink,- ("itemsPerPage" .=) <$> _cmItemsPerPage,- Just ("kind" .= _cmKind),- ("username" .=) <$> _cmUsername,- ("items" .=) <$> _cmItems,- ("totalResults" .=) <$> _cmTotalResults,- ("startIndex" .=) <$> _cmStartIndex,- ("previousLink" .=) <$> _cmPreviousLink])---- | Details for the filter of the type ADVANCED.------ /See:/ 'filterAdvancedDetails' smart constructor.-data FilterAdvancedDetails = FilterAdvancedDetails'- { _fadExtractA :: !(Maybe Text)- , _fadFieldARequired :: !(Maybe Bool)- , _fadFieldA :: !(Maybe Text)- , _fadFieldBIndex :: !(Maybe (Textual Int32))- , _fadOutputToField :: !(Maybe Text)- , _fadOutputConstructor :: !(Maybe Text)- , _fadExtractB :: !(Maybe Text)- , _fadFieldAIndex :: !(Maybe (Textual Int32))- , _fadCaseSensitive :: !(Maybe Bool)- , _fadOutputToFieldIndex :: !(Maybe (Textual Int32))- , _fadFieldB :: !(Maybe Text)- , _fadFieldBRequired :: !(Maybe Bool)- , _fadOverrideOutputField :: !(Maybe Bool)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'FilterAdvancedDetails' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'fadExtractA'------ * 'fadFieldARequired'------ * 'fadFieldA'------ * 'fadFieldBIndex'------ * 'fadOutputToField'------ * 'fadOutputConstructor'------ * 'fadExtractB'------ * 'fadFieldAIndex'------ * 'fadCaseSensitive'------ * 'fadOutputToFieldIndex'------ * 'fadFieldB'------ * 'fadFieldBRequired'------ * 'fadOverrideOutputField'-filterAdvancedDetails- :: FilterAdvancedDetails-filterAdvancedDetails =- FilterAdvancedDetails'- { _fadExtractA = Nothing- , _fadFieldARequired = Nothing- , _fadFieldA = Nothing- , _fadFieldBIndex = Nothing- , _fadOutputToField = Nothing- , _fadOutputConstructor = Nothing- , _fadExtractB = Nothing- , _fadFieldAIndex = Nothing- , _fadCaseSensitive = Nothing- , _fadOutputToFieldIndex = Nothing- , _fadFieldB = Nothing- , _fadFieldBRequired = Nothing- , _fadOverrideOutputField = Nothing- }---- | Expression to extract from field A.-fadExtractA :: Lens' FilterAdvancedDetails (Maybe Text)-fadExtractA- = lens _fadExtractA (\ s a -> s{_fadExtractA = a})---- | Indicates if field A is required to match.-fadFieldARequired :: Lens' FilterAdvancedDetails (Maybe Bool)-fadFieldARequired- = lens _fadFieldARequired- (\ s a -> s{_fadFieldARequired = a})---- | Field A.-fadFieldA :: Lens' FilterAdvancedDetails (Maybe Text)-fadFieldA- = lens _fadFieldA (\ s a -> s{_fadFieldA = a})---- | The Index of the custom dimension. Required if field is a--- CUSTOM_DIMENSION.-fadFieldBIndex :: Lens' FilterAdvancedDetails (Maybe Int32)-fadFieldBIndex- = lens _fadFieldBIndex- (\ s a -> s{_fadFieldBIndex = a})- . mapping _Coerce---- | Output field.-fadOutputToField :: Lens' FilterAdvancedDetails (Maybe Text)-fadOutputToField- = lens _fadOutputToField- (\ s a -> s{_fadOutputToField = a})---- | Expression used to construct the output value.-fadOutputConstructor :: Lens' FilterAdvancedDetails (Maybe Text)-fadOutputConstructor- = lens _fadOutputConstructor- (\ s a -> s{_fadOutputConstructor = a})---- | Expression to extract from field B.-fadExtractB :: Lens' FilterAdvancedDetails (Maybe Text)-fadExtractB- = lens _fadExtractB (\ s a -> s{_fadExtractB = a})---- | The Index of the custom dimension. Required if field is a--- CUSTOM_DIMENSION.-fadFieldAIndex :: Lens' FilterAdvancedDetails (Maybe Int32)-fadFieldAIndex- = lens _fadFieldAIndex- (\ s a -> s{_fadFieldAIndex = a})- . mapping _Coerce---- | Indicates if the filter expressions are case sensitive.-fadCaseSensitive :: Lens' FilterAdvancedDetails (Maybe Bool)-fadCaseSensitive- = lens _fadCaseSensitive- (\ s a -> s{_fadCaseSensitive = a})---- | The Index of the custom dimension. Required if field is a--- CUSTOM_DIMENSION.-fadOutputToFieldIndex :: Lens' FilterAdvancedDetails (Maybe Int32)-fadOutputToFieldIndex- = lens _fadOutputToFieldIndex- (\ s a -> s{_fadOutputToFieldIndex = a})- . mapping _Coerce---- | Field B.-fadFieldB :: Lens' FilterAdvancedDetails (Maybe Text)-fadFieldB- = lens _fadFieldB (\ s a -> s{_fadFieldB = a})---- | Indicates if field B is required to match.-fadFieldBRequired :: Lens' FilterAdvancedDetails (Maybe Bool)-fadFieldBRequired- = lens _fadFieldBRequired- (\ s a -> s{_fadFieldBRequired = a})---- | Indicates if the existing value of the output field, if any, should be--- overridden by the output expression.-fadOverrideOutputField :: Lens' FilterAdvancedDetails (Maybe Bool)-fadOverrideOutputField- = lens _fadOverrideOutputField- (\ s a -> s{_fadOverrideOutputField = a})--instance FromJSON FilterAdvancedDetails where- parseJSON- = withObject "FilterAdvancedDetails"- (\ o ->- FilterAdvancedDetails' <$>- (o .:? "extractA") <*> (o .:? "fieldARequired") <*>- (o .:? "fieldA")- <*> (o .:? "fieldBIndex")- <*> (o .:? "outputToField")- <*> (o .:? "outputConstructor")- <*> (o .:? "extractB")- <*> (o .:? "fieldAIndex")- <*> (o .:? "caseSensitive")- <*> (o .:? "outputToFieldIndex")- <*> (o .:? "fieldB")- <*> (o .:? "fieldBRequired")- <*> (o .:? "overrideOutputField"))--instance ToJSON FilterAdvancedDetails where- toJSON FilterAdvancedDetails'{..}- = object- (catMaybes- [("extractA" .=) <$> _fadExtractA,- ("fieldARequired" .=) <$> _fadFieldARequired,- ("fieldA" .=) <$> _fadFieldA,- ("fieldBIndex" .=) <$> _fadFieldBIndex,- ("outputToField" .=) <$> _fadOutputToField,- ("outputConstructor" .=) <$> _fadOutputConstructor,- ("extractB" .=) <$> _fadExtractB,- ("fieldAIndex" .=) <$> _fadFieldAIndex,- ("caseSensitive" .=) <$> _fadCaseSensitive,- ("outputToFieldIndex" .=) <$> _fadOutputToFieldIndex,- ("fieldB" .=) <$> _fadFieldB,- ("fieldBRequired" .=) <$> _fadFieldBRequired,- ("overrideOutputField" .=) <$>- _fadOverrideOutputField])---- | JSON template for an Analytics account tree response. The account tree--- response is used in the provisioning api to return the result of--- creating an account, property, and view (profile).------ /See:/ 'accountTreeResponse' smart constructor.-data AccountTreeResponse = AccountTreeResponse'- { _atrtAccountSettings :: !(Maybe AccountTreeResponseAccountSettings)- , _atrtKind :: !Text- , _atrtProFile :: !(Maybe ProFile)- , _atrtAccount :: !(Maybe Account)- , _atrtWebProperty :: !(Maybe WebProperty)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'AccountTreeResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'atrtAccountSettings'------ * 'atrtKind'------ * 'atrtProFile'------ * 'atrtAccount'------ * 'atrtWebProperty'-accountTreeResponse- :: AccountTreeResponse-accountTreeResponse =- AccountTreeResponse'- { _atrtAccountSettings = Nothing- , _atrtKind = "analytics#accountTreeResponse"- , _atrtProFile = Nothing- , _atrtAccount = Nothing- , _atrtWebProperty = Nothing- }--atrtAccountSettings :: Lens' AccountTreeResponse (Maybe AccountTreeResponseAccountSettings)-atrtAccountSettings- = lens _atrtAccountSettings- (\ s a -> s{_atrtAccountSettings = a})---- | Resource type for account ticket.-atrtKind :: Lens' AccountTreeResponse Text-atrtKind = lens _atrtKind (\ s a -> s{_atrtKind = a})---- | View (Profile) for the account.-atrtProFile :: Lens' AccountTreeResponse (Maybe ProFile)-atrtProFile- = lens _atrtProFile (\ s a -> s{_atrtProFile = a})---- | The account created.-atrtAccount :: Lens' AccountTreeResponse (Maybe Account)-atrtAccount- = lens _atrtAccount (\ s a -> s{_atrtAccount = a})---- | Web property for the account.-atrtWebProperty :: Lens' AccountTreeResponse (Maybe WebProperty)-atrtWebProperty- = lens _atrtWebProperty- (\ s a -> s{_atrtWebProperty = a})--instance FromJSON AccountTreeResponse where- parseJSON- = withObject "AccountTreeResponse"- (\ o ->- AccountTreeResponse' <$>- (o .:? "accountSettings") <*>- (o .:? "kind" .!= "analytics#accountTreeResponse")- <*> (o .:? "profile")- <*> (o .:? "account")- <*> (o .:? "webproperty"))--instance ToJSON AccountTreeResponse where- toJSON AccountTreeResponse'{..}- = object- (catMaybes- [("accountSettings" .=) <$> _atrtAccountSettings,- Just ("kind" .= _atrtKind),- ("profile" .=) <$> _atrtProFile,- ("account" .=) <$> _atrtAccount,- ("webproperty" .=) <$> _atrtWebProperty])---- | Details for the filter of the type UPPER.------ /See:/ 'filterUppercaseDetails' smart constructor.-data FilterUppercaseDetails = FilterUppercaseDetails'- { _fudFieldIndex :: !(Maybe (Textual Int32))- , _fudField :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'FilterUppercaseDetails' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'fudFieldIndex'------ * 'fudField'-filterUppercaseDetails- :: FilterUppercaseDetails-filterUppercaseDetails =- FilterUppercaseDetails'- { _fudFieldIndex = Nothing- , _fudField = Nothing- }---- | The Index of the custom dimension. Required if field is a--- CUSTOM_DIMENSION.-fudFieldIndex :: Lens' FilterUppercaseDetails (Maybe Int32)-fudFieldIndex- = lens _fudFieldIndex- (\ s a -> s{_fudFieldIndex = a})- . mapping _Coerce---- | Field to use in the filter.-fudField :: Lens' FilterUppercaseDetails (Maybe Text)-fudField = lens _fudField (\ s a -> s{_fudField = a})--instance FromJSON FilterUppercaseDetails where- parseJSON- = withObject "FilterUppercaseDetails"- (\ o ->- FilterUppercaseDetails' <$>- (o .:? "fieldIndex") <*> (o .:? "field"))--instance ToJSON FilterUppercaseDetails where- toJSON FilterUppercaseDetails'{..}- = object- (catMaybes- [("fieldIndex" .=) <$> _fudFieldIndex,- ("field" .=) <$> _fudField])------- /See:/ 'customDataSourceChildLink' smart constructor.-data CustomDataSourceChildLink = CustomDataSourceChildLink'- { _cdsclHref :: !(Maybe Text)- , _cdsclType :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'CustomDataSourceChildLink' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cdsclHref'------ * 'cdsclType'-customDataSourceChildLink- :: CustomDataSourceChildLink-customDataSourceChildLink =- CustomDataSourceChildLink'- { _cdsclHref = Nothing- , _cdsclType = Nothing- }---- | Link to the list of daily uploads for this custom data source. Link to--- the list of uploads for this custom data source.-cdsclHref :: Lens' CustomDataSourceChildLink (Maybe Text)-cdsclHref- = lens _cdsclHref (\ s a -> s{_cdsclHref = a})---- | Value is \"analytics#dailyUploads\". Value is \"analytics#uploads\".-cdsclType :: Lens' CustomDataSourceChildLink (Maybe Text)-cdsclType- = lens _cdsclType (\ s a -> s{_cdsclType = a})--instance FromJSON CustomDataSourceChildLink where- parseJSON- = withObject "CustomDataSourceChildLink"- (\ o ->- CustomDataSourceChildLink' <$>- (o .:? "href") <*> (o .:? "type"))--instance ToJSON CustomDataSourceChildLink where- toJSON CustomDataSourceChildLink'{..}- = object- (catMaybes- [("href" .=) <$> _cdsclHref,- ("type" .=) <$> _cdsclType])---- | JSON template for an Analytics Remarketing Include Conditions.------ /See:/ 'includeConditions' smart constructor.-data IncludeConditions = IncludeConditions'- { _icKind :: !Text- , _icDaysToLookBack :: !(Maybe (Textual Int32))- , _icMembershipDurationDays :: !(Maybe (Textual Int32))- , _icSegment :: !(Maybe Text)- , _icIsSmartList :: !(Maybe Bool)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'IncludeConditions' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'icKind'------ * 'icDaysToLookBack'------ * 'icMembershipDurationDays'------ * 'icSegment'------ * 'icIsSmartList'-includeConditions- :: IncludeConditions-includeConditions =- IncludeConditions'- { _icKind = "analytics#includeConditions"- , _icDaysToLookBack = Nothing- , _icMembershipDurationDays = Nothing- , _icSegment = Nothing- , _icIsSmartList = Nothing- }---- | Resource type for include conditions.-icKind :: Lens' IncludeConditions Text-icKind = lens _icKind (\ s a -> s{_icKind = a})---- | The look-back window lets you specify a time frame for evaluating the--- behavior that qualifies users for your audience. For example, if your--- filters include users from Central Asia, and Transactions Greater than--- 2, and you set the look-back window to 14 days, then any user from--- Central Asia whose cumulative transactions exceed 2 during the last 14--- days is added to the audience.-icDaysToLookBack :: Lens' IncludeConditions (Maybe Int32)-icDaysToLookBack- = lens _icDaysToLookBack- (\ s a -> s{_icDaysToLookBack = a})- . mapping _Coerce---- | Number of days (in the range 1 to 540) a user remains in the audience.-icMembershipDurationDays :: Lens' IncludeConditions (Maybe Int32)-icMembershipDurationDays- = lens _icMembershipDurationDays- (\ s a -> s{_icMembershipDurationDays = a})- . mapping _Coerce---- | The segment condition that will cause a user to be added to an audience.-icSegment :: Lens' IncludeConditions (Maybe Text)-icSegment- = lens _icSegment (\ s a -> s{_icSegment = a})---- | Boolean indicating whether this segment is a smart list.--- https:\/\/support.google.com\/analytics\/answer\/4628577-icIsSmartList :: Lens' IncludeConditions (Maybe Bool)-icIsSmartList- = lens _icIsSmartList- (\ s a -> s{_icIsSmartList = a})--instance FromJSON IncludeConditions where- parseJSON- = withObject "IncludeConditions"- (\ o ->- IncludeConditions' <$>- (o .:? "kind" .!= "analytics#includeConditions") <*>- (o .:? "daysToLookBack")- <*> (o .:? "membershipDurationDays")- <*> (o .:? "segment")- <*> (o .:? "isSmartList"))--instance ToJSON IncludeConditions where- toJSON IncludeConditions'{..}- = object- (catMaybes- [Just ("kind" .= _icKind),- ("daysToLookBack" .=) <$> _icDaysToLookBack,- ("membershipDurationDays" .=) <$>- _icMembershipDurationDays,- ("segment" .=) <$> _icSegment,- ("isSmartList" .=) <$> _icIsSmartList])---- | Parent link for this filter. Points to the account to which this filter--- belongs.------ /See:/ 'filterParentLink' smart constructor.-data FilterParentLink = FilterParentLink'- { _fplHref :: !(Maybe Text)- , _fplType :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'FilterParentLink' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'fplHref'------ * 'fplType'-filterParentLink- :: FilterParentLink-filterParentLink =- FilterParentLink'- { _fplHref = Nothing- , _fplType = "analytics#account"- }---- | Link to the account to which this filter belongs.-fplHref :: Lens' FilterParentLink (Maybe Text)-fplHref = lens _fplHref (\ s a -> s{_fplHref = a})---- | Value is \"analytics#account\".-fplType :: Lens' FilterParentLink Text-fplType = lens _fplType (\ s a -> s{_fplType = a})--instance FromJSON FilterParentLink where- parseJSON- = withObject "FilterParentLink"- (\ o ->- FilterParentLink' <$>- (o .:? "href") <*>- (o .:? "type" .!= "analytics#account"))--instance ToJSON FilterParentLink where- toJSON FilterParentLink'{..}- = object- (catMaybes- [("href" .=) <$> _fplHref,- Just ("type" .= _fplType)])---- | JSON template for a hash Client Id request resource.------ /See:/ 'hashClientIdRequest' smart constructor.-data HashClientIdRequest = HashClientIdRequest'- { _hClientId :: !(Maybe Text)- , _hWebPropertyId :: !(Maybe Text)- , _hKind :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'HashClientIdRequest' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'hClientId'------ * 'hWebPropertyId'------ * 'hKind'-hashClientIdRequest- :: HashClientIdRequest-hashClientIdRequest =- HashClientIdRequest'- { _hClientId = Nothing- , _hWebPropertyId = Nothing- , _hKind = "analytics#hashClientIdRequest"- }--hClientId :: Lens' HashClientIdRequest (Maybe Text)-hClientId- = lens _hClientId (\ s a -> s{_hClientId = a})--hWebPropertyId :: Lens' HashClientIdRequest (Maybe Text)-hWebPropertyId- = lens _hWebPropertyId- (\ s a -> s{_hWebPropertyId = a})--hKind :: Lens' HashClientIdRequest Text-hKind = lens _hKind (\ s a -> s{_hKind = a})--instance FromJSON HashClientIdRequest where- parseJSON- = withObject "HashClientIdRequest"- (\ o ->- HashClientIdRequest' <$>- (o .:? "clientId") <*> (o .:? "webPropertyId") <*>- (o .:? "kind" .!= "analytics#hashClientIdRequest"))--instance ToJSON HashClientIdRequest where- toJSON HashClientIdRequest'{..}- = object- (catMaybes- [("clientId" .=) <$> _hClientId,- ("webPropertyId" .=) <$> _hWebPropertyId,- Just ("kind" .= _hKind)])---- | Real time data for a given view (profile).------ /See:/ 'realtimeData' smart constructor.-data RealtimeData = RealtimeData'- { _rdProFileInfo :: !(Maybe RealtimeDataProFileInfo)- , _rdKind :: !Text- , _rdRows :: !(Maybe [[Text]])- , _rdSelfLink :: !(Maybe Text)- , _rdQuery :: !(Maybe RealtimeDataQuery)- , _rdColumnHeaders :: !(Maybe [RealtimeDataColumnHeadersItem])- , _rdId :: !(Maybe Text)- , _rdTotalResults :: !(Maybe (Textual Int32))- , _rdTotalsForAllResults :: !(Maybe RealtimeDataTotalsForAllResults)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'RealtimeData' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rdProFileInfo'------ * 'rdKind'------ * 'rdRows'------ * 'rdSelfLink'------ * 'rdQuery'------ * 'rdColumnHeaders'------ * 'rdId'------ * 'rdTotalResults'------ * 'rdTotalsForAllResults'-realtimeData- :: RealtimeData-realtimeData =- RealtimeData'- { _rdProFileInfo = Nothing- , _rdKind = "analytics#realtimeData"- , _rdRows = Nothing- , _rdSelfLink = Nothing- , _rdQuery = Nothing- , _rdColumnHeaders = Nothing- , _rdId = Nothing- , _rdTotalResults = Nothing- , _rdTotalsForAllResults = Nothing- }---- | Information for the view (profile), for which the real time data was--- requested.-rdProFileInfo :: Lens' RealtimeData (Maybe RealtimeDataProFileInfo)-rdProFileInfo- = lens _rdProFileInfo- (\ s a -> s{_rdProFileInfo = a})---- | Resource type.-rdKind :: Lens' RealtimeData Text-rdKind = lens _rdKind (\ s a -> s{_rdKind = a})---- | Real time data rows, where each row contains a list of dimension values--- followed by the metric values. The order of dimensions and metrics is--- same as specified in the request.-rdRows :: Lens' RealtimeData [[Text]]-rdRows- = lens _rdRows (\ s a -> s{_rdRows = a}) . _Default .- _Coerce---- | Link to this page.-rdSelfLink :: Lens' RealtimeData (Maybe Text)-rdSelfLink- = lens _rdSelfLink (\ s a -> s{_rdSelfLink = a})---- | Real time data request query parameters.-rdQuery :: Lens' RealtimeData (Maybe RealtimeDataQuery)-rdQuery = lens _rdQuery (\ s a -> s{_rdQuery = a})---- | Column headers that list dimension names followed by the metric names.--- The order of dimensions and metrics is same as specified in the request.-rdColumnHeaders :: Lens' RealtimeData [RealtimeDataColumnHeadersItem]-rdColumnHeaders- = lens _rdColumnHeaders- (\ s a -> s{_rdColumnHeaders = a})- . _Default- . _Coerce---- | Unique ID for this data response.-rdId :: Lens' RealtimeData (Maybe Text)-rdId = lens _rdId (\ s a -> s{_rdId = a})---- | The total number of rows for the query, regardless of the number of rows--- in the response.-rdTotalResults :: Lens' RealtimeData (Maybe Int32)-rdTotalResults- = lens _rdTotalResults- (\ s a -> s{_rdTotalResults = a})- . mapping _Coerce---- | Total values for the requested metrics over all the results, not just--- the results returned in this response. The order of the metric totals is--- same as the metric order specified in the request.-rdTotalsForAllResults :: Lens' RealtimeData (Maybe RealtimeDataTotalsForAllResults)-rdTotalsForAllResults- = lens _rdTotalsForAllResults- (\ s a -> s{_rdTotalsForAllResults = a})--instance FromJSON RealtimeData where- parseJSON- = withObject "RealtimeData"- (\ o ->- RealtimeData' <$>- (o .:? "profileInfo") <*>- (o .:? "kind" .!= "analytics#realtimeData")- <*> (o .:? "rows" .!= mempty)- <*> (o .:? "selfLink")- <*> (o .:? "query")- <*> (o .:? "columnHeaders" .!= mempty)- <*> (o .:? "id")- <*> (o .:? "totalResults")- <*> (o .:? "totalsForAllResults"))--instance ToJSON RealtimeData where- toJSON RealtimeData'{..}- = object- (catMaybes- [("profileInfo" .=) <$> _rdProFileInfo,- Just ("kind" .= _rdKind), ("rows" .=) <$> _rdRows,- ("selfLink" .=) <$> _rdSelfLink,- ("query" .=) <$> _rdQuery,- ("columnHeaders" .=) <$> _rdColumnHeaders,- ("id" .=) <$> _rdId,- ("totalResults" .=) <$> _rdTotalResults,- ("totalsForAllResults" .=) <$>- _rdTotalsForAllResults])---- | JSON template for Analytics Custom Metric.------ /See:/ 'customMetric' smart constructor.-data CustomMetric = CustomMetric'- { _cusParentLink :: !(Maybe CustomMetricParentLink)- , _cusWebPropertyId :: !(Maybe Text)- , _cusKind :: !Text- , _cusMaxValue :: !(Maybe Text)- , _cusCreated :: !(Maybe DateTime')- , _cusMinValue :: !(Maybe Text)- , _cusActive :: !(Maybe Bool)- , _cusSelfLink :: !(Maybe Text)- , _cusAccountId :: !(Maybe Text)- , _cusName :: !(Maybe Text)- , _cusScope :: !(Maybe Text)- , _cusId :: !(Maybe Text)- , _cusUpdated :: !(Maybe DateTime')- , _cusType :: !(Maybe Text)- , _cusIndex :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'CustomMetric' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cusParentLink'------ * 'cusWebPropertyId'------ * 'cusKind'------ * 'cusMaxValue'------ * 'cusCreated'------ * 'cusMinValue'------ * 'cusActive'------ * 'cusSelfLink'------ * 'cusAccountId'------ * 'cusName'------ * 'cusScope'------ * 'cusId'------ * 'cusUpdated'------ * 'cusType'------ * 'cusIndex'-customMetric- :: CustomMetric-customMetric =- CustomMetric'- { _cusParentLink = Nothing- , _cusWebPropertyId = Nothing- , _cusKind = "analytics#customMetric"- , _cusMaxValue = Nothing- , _cusCreated = Nothing- , _cusMinValue = Nothing- , _cusActive = Nothing- , _cusSelfLink = Nothing- , _cusAccountId = Nothing- , _cusName = Nothing- , _cusScope = Nothing- , _cusId = Nothing- , _cusUpdated = Nothing- , _cusType = Nothing- , _cusIndex = Nothing- }---- | Parent link for the custom metric. Points to the property to which the--- custom metric belongs.-cusParentLink :: Lens' CustomMetric (Maybe CustomMetricParentLink)-cusParentLink- = lens _cusParentLink- (\ s a -> s{_cusParentLink = a})---- | Property ID.-cusWebPropertyId :: Lens' CustomMetric (Maybe Text)-cusWebPropertyId- = lens _cusWebPropertyId- (\ s a -> s{_cusWebPropertyId = a})---- | Kind value for a custom metric. Set to \"analytics#customMetric\". It is--- a read-only field.-cusKind :: Lens' CustomMetric Text-cusKind = lens _cusKind (\ s a -> s{_cusKind = a})---- | Max value of custom metric.-cusMaxValue :: Lens' CustomMetric (Maybe Text)-cusMaxValue- = lens _cusMaxValue (\ s a -> s{_cusMaxValue = a})---- | Time the custom metric was created.-cusCreated :: Lens' CustomMetric (Maybe UTCTime)-cusCreated- = lens _cusCreated (\ s a -> s{_cusCreated = a}) .- mapping _DateTime---- | Min value of custom metric.-cusMinValue :: Lens' CustomMetric (Maybe Text)-cusMinValue- = lens _cusMinValue (\ s a -> s{_cusMinValue = a})---- | Boolean indicating whether the custom metric is active.-cusActive :: Lens' CustomMetric (Maybe Bool)-cusActive- = lens _cusActive (\ s a -> s{_cusActive = a})---- | Link for the custom metric-cusSelfLink :: Lens' CustomMetric (Maybe Text)-cusSelfLink- = lens _cusSelfLink (\ s a -> s{_cusSelfLink = a})---- | Account ID.-cusAccountId :: Lens' CustomMetric (Maybe Text)-cusAccountId- = lens _cusAccountId (\ s a -> s{_cusAccountId = a})---- | Name of the custom metric.-cusName :: Lens' CustomMetric (Maybe Text)-cusName = lens _cusName (\ s a -> s{_cusName = a})---- | Scope of the custom metric: HIT or PRODUCT.-cusScope :: Lens' CustomMetric (Maybe Text)-cusScope = lens _cusScope (\ s a -> s{_cusScope = a})---- | Custom metric ID.-cusId :: Lens' CustomMetric (Maybe Text)-cusId = lens _cusId (\ s a -> s{_cusId = a})---- | Time the custom metric was last modified.-cusUpdated :: Lens' CustomMetric (Maybe UTCTime)-cusUpdated- = lens _cusUpdated (\ s a -> s{_cusUpdated = a}) .- mapping _DateTime---- | Data type of custom metric.-cusType :: Lens' CustomMetric (Maybe Text)-cusType = lens _cusType (\ s a -> s{_cusType = a})---- | Index of the custom metric.-cusIndex :: Lens' CustomMetric (Maybe Int32)-cusIndex- = lens _cusIndex (\ s a -> s{_cusIndex = a}) .- mapping _Coerce--instance FromJSON CustomMetric where- parseJSON- = withObject "CustomMetric"- (\ o ->- CustomMetric' <$>- (o .:? "parentLink") <*> (o .:? "webPropertyId") <*>- (o .:? "kind" .!= "analytics#customMetric")- <*> (o .:? "max_value")- <*> (o .:? "created")- <*> (o .:? "min_value")- <*> (o .:? "active")- <*> (o .:? "selfLink")- <*> (o .:? "accountId")- <*> (o .:? "name")- <*> (o .:? "scope")- <*> (o .:? "id")- <*> (o .:? "updated")- <*> (o .:? "type")- <*> (o .:? "index"))--instance ToJSON CustomMetric where- toJSON CustomMetric'{..}- = object- (catMaybes- [("parentLink" .=) <$> _cusParentLink,- ("webPropertyId" .=) <$> _cusWebPropertyId,- Just ("kind" .= _cusKind),- ("max_value" .=) <$> _cusMaxValue,- ("created" .=) <$> _cusCreated,- ("min_value" .=) <$> _cusMinValue,- ("active" .=) <$> _cusActive,- ("selfLink" .=) <$> _cusSelfLink,- ("accountId" .=) <$> _cusAccountId,- ("name" .=) <$> _cusName, ("scope" .=) <$> _cusScope,- ("id" .=) <$> _cusId, ("updated" .=) <$> _cusUpdated,- ("type" .=) <$> _cusType,- ("index" .=) <$> _cusIndex])---- | JSON template for an Analytics ProfileSummary. ProfileSummary returns--- basic information (i.e., summary) for a profile.------ /See:/ 'proFileSummary' smart constructor.-data ProFileSummary = ProFileSummary'- { _pfsKind :: !Text- , _pfsName :: !(Maybe Text)- , _pfsStarred :: !(Maybe Bool)- , _pfsId :: !(Maybe Text)- , _pfsType :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ProFileSummary' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pfsKind'------ * 'pfsName'------ * 'pfsStarred'------ * 'pfsId'------ * 'pfsType'-proFileSummary- :: ProFileSummary-proFileSummary =- ProFileSummary'- { _pfsKind = "analytics#profileSummary"- , _pfsName = Nothing- , _pfsStarred = Nothing- , _pfsId = Nothing- , _pfsType = Nothing- }---- | Resource type for Analytics ProfileSummary.-pfsKind :: Lens' ProFileSummary Text-pfsKind = lens _pfsKind (\ s a -> s{_pfsKind = a})---- | View (profile) name.-pfsName :: Lens' ProFileSummary (Maybe Text)-pfsName = lens _pfsName (\ s a -> s{_pfsName = a})---- | Indicates whether this view (profile) is starred or not.-pfsStarred :: Lens' ProFileSummary (Maybe Bool)-pfsStarred- = lens _pfsStarred (\ s a -> s{_pfsStarred = a})---- | View (profile) ID.-pfsId :: Lens' ProFileSummary (Maybe Text)-pfsId = lens _pfsId (\ s a -> s{_pfsId = a})---- | View (Profile) type. Supported types: WEB or APP.-pfsType :: Lens' ProFileSummary (Maybe Text)-pfsType = lens _pfsType (\ s a -> s{_pfsType = a})--instance FromJSON ProFileSummary where- parseJSON- = withObject "ProFileSummary"- (\ o ->- ProFileSummary' <$>- (o .:? "kind" .!= "analytics#profileSummary") <*>- (o .:? "name")- <*> (o .:? "starred")- <*> (o .:? "id")- <*> (o .:? "type"))--instance ToJSON ProFileSummary where- toJSON ProFileSummary'{..}- = object- (catMaybes- [Just ("kind" .= _pfsKind), ("name" .=) <$> _pfsName,- ("starred" .=) <$> _pfsStarred, ("id" .=) <$> _pfsId,- ("type" .=) <$> _pfsType])---- | Parent link for the custom dimension. Points to the property to which--- the custom dimension belongs.------ /See:/ 'customDimensionParentLink' smart constructor.-data CustomDimensionParentLink = CustomDimensionParentLink'- { _cdplHref :: !(Maybe Text)- , _cdplType :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'CustomDimensionParentLink' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cdplHref'------ * 'cdplType'-customDimensionParentLink- :: CustomDimensionParentLink-customDimensionParentLink =- CustomDimensionParentLink'- { _cdplHref = Nothing- , _cdplType = "analytics#webproperty"- }---- | Link to the property to which the custom dimension belongs.-cdplHref :: Lens' CustomDimensionParentLink (Maybe Text)-cdplHref = lens _cdplHref (\ s a -> s{_cdplHref = a})---- | Type of the parent link. Set to \"analytics#webproperty\".-cdplType :: Lens' CustomDimensionParentLink Text-cdplType = lens _cdplType (\ s a -> s{_cdplType = a})--instance FromJSON CustomDimensionParentLink where- parseJSON- = withObject "CustomDimensionParentLink"- (\ o ->- CustomDimensionParentLink' <$>- (o .:? "href") <*>- (o .:? "type" .!= "analytics#webproperty"))--instance ToJSON CustomDimensionParentLink where- toJSON CustomDimensionParentLink'{..}- = object- (catMaybes- [("href" .=) <$> _cdplHref,- Just ("type" .= _cdplType)])---- | JSON template for an Analytics web property.------ /See:/ 'webProperty' smart constructor.-data WebProperty = WebProperty'- { _wParentLink :: !(Maybe WebPropertyParentLink)- , _wChildLink :: !(Maybe WebPropertyChildLink)- , _wDefaultProFileId :: !(Maybe (Textual Int64))- , _wKind :: !Text- , _wCreated :: !(Maybe DateTime')- , _wDataRetentionTtl :: !(Maybe Text)- , _wDataRetentionResetOnNewActivity :: !(Maybe Bool)- , _wSelfLink :: !(Maybe Text)- , _wAccountId :: !(Maybe Text)- , _wName :: !(Maybe Text)- , _wStarred :: !(Maybe Bool)- , _wInternalWebPropertyId :: !(Maybe Text)- , _wId :: !(Maybe Text)- , _wUpdated :: !(Maybe DateTime')- , _wProFileCount :: !(Maybe (Textual Int32))- , _wPermissions :: !(Maybe WebPropertyPermissions)- , _wWebsiteURL :: !(Maybe Text)- , _wIndustryVertical :: !(Maybe Text)- , _wLevel :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'WebProperty' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'wParentLink'------ * 'wChildLink'------ * 'wDefaultProFileId'------ * 'wKind'------ * 'wCreated'------ * 'wDataRetentionTtl'------ * 'wDataRetentionResetOnNewActivity'------ * 'wSelfLink'------ * 'wAccountId'------ * 'wName'------ * 'wStarred'------ * 'wInternalWebPropertyId'------ * 'wId'------ * 'wUpdated'------ * 'wProFileCount'------ * 'wPermissions'------ * 'wWebsiteURL'------ * 'wIndustryVertical'------ * 'wLevel'-webProperty- :: WebProperty-webProperty =- WebProperty'- { _wParentLink = Nothing- , _wChildLink = Nothing- , _wDefaultProFileId = Nothing- , _wKind = "analytics#webproperty"- , _wCreated = Nothing- , _wDataRetentionTtl = Nothing- , _wDataRetentionResetOnNewActivity = Nothing- , _wSelfLink = Nothing- , _wAccountId = Nothing- , _wName = Nothing- , _wStarred = Nothing- , _wInternalWebPropertyId = Nothing- , _wId = Nothing- , _wUpdated = Nothing- , _wProFileCount = Nothing- , _wPermissions = Nothing- , _wWebsiteURL = Nothing- , _wIndustryVertical = Nothing- , _wLevel = Nothing- }---- | Parent link for this web property. Points to the account to which this--- web property belongs.-wParentLink :: Lens' WebProperty (Maybe WebPropertyParentLink)-wParentLink- = lens _wParentLink (\ s a -> s{_wParentLink = a})---- | Child link for this web property. Points to the list of views (profiles)--- for this web property.-wChildLink :: Lens' WebProperty (Maybe WebPropertyChildLink)-wChildLink- = lens _wChildLink (\ s a -> s{_wChildLink = a})---- | Default view (profile) ID.-wDefaultProFileId :: Lens' WebProperty (Maybe Int64)-wDefaultProFileId- = lens _wDefaultProFileId- (\ s a -> s{_wDefaultProFileId = a})- . mapping _Coerce---- | Resource type for Analytics WebProperty.-wKind :: Lens' WebProperty Text-wKind = lens _wKind (\ s a -> s{_wKind = a})---- | Time this web property was created.-wCreated :: Lens' WebProperty (Maybe UTCTime)-wCreated- = lens _wCreated (\ s a -> s{_wCreated = a}) .- mapping _DateTime---- | The length of time for which user and event data is retained. This--- property cannot be set on insert.-wDataRetentionTtl :: Lens' WebProperty (Maybe Text)-wDataRetentionTtl- = lens _wDataRetentionTtl- (\ s a -> s{_wDataRetentionTtl = a})---- | Set to true to reset the retention period of the user identifier with--- each new event from that user (thus setting the expiration date to--- current time plus retention period). Set to false to delete data--- associated with the user identifer automatically after the rentention--- period. This property cannot be set on insert.-wDataRetentionResetOnNewActivity :: Lens' WebProperty (Maybe Bool)-wDataRetentionResetOnNewActivity- = lens _wDataRetentionResetOnNewActivity- (\ s a -> s{_wDataRetentionResetOnNewActivity = a})---- | Link for this web property.-wSelfLink :: Lens' WebProperty (Maybe Text)-wSelfLink- = lens _wSelfLink (\ s a -> s{_wSelfLink = a})---- | Account ID to which this web property belongs.-wAccountId :: Lens' WebProperty (Maybe Text)-wAccountId- = lens _wAccountId (\ s a -> s{_wAccountId = a})---- | Name of this web property.-wName :: Lens' WebProperty (Maybe Text)-wName = lens _wName (\ s a -> s{_wName = a})---- | Indicates whether this web property is starred or not.-wStarred :: Lens' WebProperty (Maybe Bool)-wStarred = lens _wStarred (\ s a -> s{_wStarred = a})---- | Internal ID for this web property.-wInternalWebPropertyId :: Lens' WebProperty (Maybe Text)-wInternalWebPropertyId- = lens _wInternalWebPropertyId- (\ s a -> s{_wInternalWebPropertyId = a})---- | Web property ID of the form UA-XXXXX-YY.-wId :: Lens' WebProperty (Maybe Text)-wId = lens _wId (\ s a -> s{_wId = a})---- | Time this web property was last modified.-wUpdated :: Lens' WebProperty (Maybe UTCTime)-wUpdated- = lens _wUpdated (\ s a -> s{_wUpdated = a}) .- mapping _DateTime---- | View (Profile) count for this web property.-wProFileCount :: Lens' WebProperty (Maybe Int32)-wProFileCount- = lens _wProFileCount- (\ s a -> s{_wProFileCount = a})- . mapping _Coerce---- | Permissions the user has for this web property.-wPermissions :: Lens' WebProperty (Maybe WebPropertyPermissions)-wPermissions- = lens _wPermissions (\ s a -> s{_wPermissions = a})---- | Website url for this web property.-wWebsiteURL :: Lens' WebProperty (Maybe Text)-wWebsiteURL- = lens _wWebsiteURL (\ s a -> s{_wWebsiteURL = a})---- | The industry vertical\/category selected for this web property.-wIndustryVertical :: Lens' WebProperty (Maybe Text)-wIndustryVertical- = lens _wIndustryVertical- (\ s a -> s{_wIndustryVertical = a})---- | Level for this web property. Possible values are STANDARD or PREMIUM.-wLevel :: Lens' WebProperty (Maybe Text)-wLevel = lens _wLevel (\ s a -> s{_wLevel = a})--instance FromJSON WebProperty where- parseJSON- = withObject "WebProperty"- (\ o ->- WebProperty' <$>- (o .:? "parentLink") <*> (o .:? "childLink") <*>- (o .:? "defaultProfileId")- <*> (o .:? "kind" .!= "analytics#webproperty")- <*> (o .:? "created")- <*> (o .:? "dataRetentionTtl")- <*> (o .:? "dataRetentionResetOnNewActivity")- <*> (o .:? "selfLink")- <*> (o .:? "accountId")- <*> (o .:? "name")- <*> (o .:? "starred")- <*> (o .:? "internalWebPropertyId")- <*> (o .:? "id")- <*> (o .:? "updated")- <*> (o .:? "profileCount")- <*> (o .:? "permissions")- <*> (o .:? "websiteUrl")- <*> (o .:? "industryVertical")- <*> (o .:? "level"))--instance ToJSON WebProperty where- toJSON WebProperty'{..}- = object- (catMaybes- [("parentLink" .=) <$> _wParentLink,- ("childLink" .=) <$> _wChildLink,- ("defaultProfileId" .=) <$> _wDefaultProFileId,- Just ("kind" .= _wKind),- ("created" .=) <$> _wCreated,- ("dataRetentionTtl" .=) <$> _wDataRetentionTtl,- ("dataRetentionResetOnNewActivity" .=) <$>- _wDataRetentionResetOnNewActivity,- ("selfLink" .=) <$> _wSelfLink,- ("accountId" .=) <$> _wAccountId,- ("name" .=) <$> _wName, ("starred" .=) <$> _wStarred,- ("internalWebPropertyId" .=) <$>- _wInternalWebPropertyId,- ("id" .=) <$> _wId, ("updated" .=) <$> _wUpdated,- ("profileCount" .=) <$> _wProFileCount,- ("permissions" .=) <$> _wPermissions,- ("websiteUrl" .=) <$> _wWebsiteURL,- ("industryVertical" .=) <$> _wIndustryVertical,- ("level" .=) <$> _wLevel])---- | Permissions the user has for this web property.------ /See:/ 'webPropertyPermissions' smart constructor.-newtype WebPropertyPermissions = WebPropertyPermissions'- { _wppEffective :: Maybe [Text]- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'WebPropertyPermissions' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'wppEffective'-webPropertyPermissions- :: WebPropertyPermissions-webPropertyPermissions =- WebPropertyPermissions'- { _wppEffective = Nothing- }---- | All the permissions that the user has for this web property. These--- include any implied permissions (e.g., EDIT implies VIEW) or inherited--- permissions from the parent account.-wppEffective :: Lens' WebPropertyPermissions [Text]-wppEffective- = lens _wppEffective (\ s a -> s{_wppEffective = a})- . _Default- . _Coerce--instance FromJSON WebPropertyPermissions where- parseJSON- = withObject "WebPropertyPermissions"- (\ o ->- WebPropertyPermissions' <$>- (o .:? "effective" .!= mempty))--instance ToJSON WebPropertyPermissions where- toJSON WebPropertyPermissions'{..}- = object- (catMaybes [("effective" .=) <$> _wppEffective])---- | JSON template for an Analytics Entity-User Link. Returns permissions--- that a user has for an entity.------ /See:/ 'entityUserLink' smart constructor.-data EntityUserLink = EntityUserLink'- { _euluKind :: !Text- , _euluUserRef :: !(Maybe UserRef)- , _euluSelfLink :: !(Maybe Text)- , _euluId :: !(Maybe Text)- , _euluPermissions :: !(Maybe EntityUserLinkPermissions)- , _euluEntity :: !(Maybe EntityUserLinkEntity)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'EntityUserLink' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'euluKind'------ * 'euluUserRef'------ * 'euluSelfLink'------ * 'euluId'------ * 'euluPermissions'------ * 'euluEntity'-entityUserLink- :: EntityUserLink-entityUserLink =- EntityUserLink'- { _euluKind = "analytics#entityUserLink"- , _euluUserRef = Nothing- , _euluSelfLink = Nothing- , _euluId = Nothing- , _euluPermissions = Nothing- , _euluEntity = Nothing- }---- | Resource type for entity user link.-euluKind :: Lens' EntityUserLink Text-euluKind = lens _euluKind (\ s a -> s{_euluKind = a})---- | User reference.-euluUserRef :: Lens' EntityUserLink (Maybe UserRef)-euluUserRef- = lens _euluUserRef (\ s a -> s{_euluUserRef = a})---- | Self link for this resource.-euluSelfLink :: Lens' EntityUserLink (Maybe Text)-euluSelfLink- = lens _euluSelfLink (\ s a -> s{_euluSelfLink = a})---- | Entity user link ID-euluId :: Lens' EntityUserLink (Maybe Text)-euluId = lens _euluId (\ s a -> s{_euluId = a})---- | Permissions the user has for this entity.-euluPermissions :: Lens' EntityUserLink (Maybe EntityUserLinkPermissions)-euluPermissions- = lens _euluPermissions- (\ s a -> s{_euluPermissions = a})---- | Entity for this link. It can be an account, a web property, or a view--- (profile).-euluEntity :: Lens' EntityUserLink (Maybe EntityUserLinkEntity)-euluEntity- = lens _euluEntity (\ s a -> s{_euluEntity = a})--instance FromJSON EntityUserLink where- parseJSON- = withObject "EntityUserLink"- (\ o ->- EntityUserLink' <$>- (o .:? "kind" .!= "analytics#entityUserLink") <*>- (o .:? "userRef")- <*> (o .:? "selfLink")- <*> (o .:? "id")- <*> (o .:? "permissions")- <*> (o .:? "entity"))--instance ToJSON EntityUserLink where- toJSON EntityUserLink'{..}- = object- (catMaybes- [Just ("kind" .= _euluKind),- ("userRef" .=) <$> _euluUserRef,- ("selfLink" .=) <$> _euluSelfLink,- ("id" .=) <$> _euluId,- ("permissions" .=) <$> _euluPermissions,- ("entity" .=) <$> _euluEntity])---- | Parent link for this custom data source. Points to the web property to--- which this custom data source belongs.------ /See:/ 'customDataSourceParentLink' smart constructor.-data CustomDataSourceParentLink = CustomDataSourceParentLink'- { _cdsplHref :: !(Maybe Text)- , _cdsplType :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'CustomDataSourceParentLink' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cdsplHref'------ * 'cdsplType'-customDataSourceParentLink- :: CustomDataSourceParentLink-customDataSourceParentLink =- CustomDataSourceParentLink'- { _cdsplHref = Nothing- , _cdsplType = "analytics#webproperty"- }---- | Link to the web property to which this custom data source belongs.-cdsplHref :: Lens' CustomDataSourceParentLink (Maybe Text)-cdsplHref- = lens _cdsplHref (\ s a -> s{_cdsplHref = a})---- | Value is \"analytics#webproperty\".-cdsplType :: Lens' CustomDataSourceParentLink Text-cdsplType- = lens _cdsplType (\ s a -> s{_cdsplType = a})--instance FromJSON CustomDataSourceParentLink where- parseJSON- = withObject "CustomDataSourceParentLink"- (\ o ->- CustomDataSourceParentLink' <$>- (o .:? "href") <*>- (o .:? "type" .!= "analytics#webproperty"))--instance ToJSON CustomDataSourceParentLink where- toJSON CustomDataSourceParentLink'{..}- = object- (catMaybes- [("href" .=) <$> _cdsplHref,- Just ("type" .= _cdsplType)])------- /See:/ 'goalEventDetailsEventConditionsItem' smart constructor.-data GoalEventDetailsEventConditionsItem = GoalEventDetailsEventConditionsItem'- { _gedeciMatchType :: !(Maybe Text)- , _gedeciExpression :: !(Maybe Text)- , _gedeciComparisonValue :: !(Maybe (Textual Int64))- , _gedeciType :: !(Maybe Text)- , _gedeciComparisonType :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoalEventDetailsEventConditionsItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gedeciMatchType'------ * 'gedeciExpression'------ * 'gedeciComparisonValue'------ * 'gedeciType'------ * 'gedeciComparisonType'-goalEventDetailsEventConditionsItem- :: GoalEventDetailsEventConditionsItem-goalEventDetailsEventConditionsItem =- GoalEventDetailsEventConditionsItem'- { _gedeciMatchType = Nothing- , _gedeciExpression = Nothing- , _gedeciComparisonValue = Nothing- , _gedeciType = Nothing- , _gedeciComparisonType = Nothing- }---- | Type of the match to be performed. Possible values are REGEXP,--- BEGINS_WITH, or EXACT.-gedeciMatchType :: Lens' GoalEventDetailsEventConditionsItem (Maybe Text)-gedeciMatchType- = lens _gedeciMatchType- (\ s a -> s{_gedeciMatchType = a})---- | Expression used for this match.-gedeciExpression :: Lens' GoalEventDetailsEventConditionsItem (Maybe Text)-gedeciExpression- = lens _gedeciExpression- (\ s a -> s{_gedeciExpression = a})---- | Value used for this comparison.-gedeciComparisonValue :: Lens' GoalEventDetailsEventConditionsItem (Maybe Int64)-gedeciComparisonValue- = lens _gedeciComparisonValue- (\ s a -> s{_gedeciComparisonValue = a})- . mapping _Coerce---- | Type of this event condition. Possible values are CATEGORY, ACTION,--- LABEL, or VALUE.-gedeciType :: Lens' GoalEventDetailsEventConditionsItem (Maybe Text)-gedeciType- = lens _gedeciType (\ s a -> s{_gedeciType = a})---- | Type of comparison. Possible values are LESS_THAN, GREATER_THAN or--- EQUAL.-gedeciComparisonType :: Lens' GoalEventDetailsEventConditionsItem (Maybe Text)-gedeciComparisonType- = lens _gedeciComparisonType- (\ s a -> s{_gedeciComparisonType = a})--instance FromJSON GoalEventDetailsEventConditionsItem- where- parseJSON- = withObject "GoalEventDetailsEventConditionsItem"- (\ o ->- GoalEventDetailsEventConditionsItem' <$>- (o .:? "matchType") <*> (o .:? "expression") <*>- (o .:? "comparisonValue")- <*> (o .:? "type")- <*> (o .:? "comparisonType"))--instance ToJSON GoalEventDetailsEventConditionsItem- where- toJSON GoalEventDetailsEventConditionsItem'{..}- = object- (catMaybes- [("matchType" .=) <$> _gedeciMatchType,- ("expression" .=) <$> _gedeciExpression,- ("comparisonValue" .=) <$> _gedeciComparisonValue,- ("type" .=) <$> _gedeciType,- ("comparisonType" .=) <$> _gedeciComparisonType])------- /See:/ 'accountTreeRequestAccountSettings' smart constructor.-data AccountTreeRequestAccountSettings = AccountTreeRequestAccountSettings'- { _atrasShareWithSpeciaLists :: !(Maybe Bool)- , _atrasShareWithSupport :: !(Maybe Bool)- , _atrasShareAnonymouslyWithOthers :: !(Maybe Bool)- , _atrasShareWithGoogleProducts :: !(Maybe Bool)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'AccountTreeRequestAccountSettings' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'atrasShareWithSpeciaLists'------ * 'atrasShareWithSupport'------ * 'atrasShareAnonymouslyWithOthers'------ * 'atrasShareWithGoogleProducts'-accountTreeRequestAccountSettings- :: AccountTreeRequestAccountSettings-accountTreeRequestAccountSettings =- AccountTreeRequestAccountSettings'- { _atrasShareWithSpeciaLists = Nothing- , _atrasShareWithSupport = Nothing- , _atrasShareAnonymouslyWithOthers = Nothing- , _atrasShareWithGoogleProducts = Nothing- }--atrasShareWithSpeciaLists :: Lens' AccountTreeRequestAccountSettings (Maybe Bool)-atrasShareWithSpeciaLists- = lens _atrasShareWithSpeciaLists- (\ s a -> s{_atrasShareWithSpeciaLists = a})--atrasShareWithSupport :: Lens' AccountTreeRequestAccountSettings (Maybe Bool)-atrasShareWithSupport- = lens _atrasShareWithSupport- (\ s a -> s{_atrasShareWithSupport = a})--atrasShareAnonymouslyWithOthers :: Lens' AccountTreeRequestAccountSettings (Maybe Bool)-atrasShareAnonymouslyWithOthers- = lens _atrasShareAnonymouslyWithOthers- (\ s a -> s{_atrasShareAnonymouslyWithOthers = a})--atrasShareWithGoogleProducts :: Lens' AccountTreeRequestAccountSettings (Maybe Bool)-atrasShareWithGoogleProducts- = lens _atrasShareWithGoogleProducts- (\ s a -> s{_atrasShareWithGoogleProducts = a})--instance FromJSON AccountTreeRequestAccountSettings- where- parseJSON- = withObject "AccountTreeRequestAccountSettings"- (\ o ->- AccountTreeRequestAccountSettings' <$>- (o .:? "shareWithSpecialists") <*>- (o .:? "shareWithSupport")- <*> (o .:? "shareAnonymouslyWithOthers")- <*> (o .:? "shareWithGoogleProducts"))--instance ToJSON AccountTreeRequestAccountSettings- where- toJSON AccountTreeRequestAccountSettings'{..}- = object- (catMaybes- [("shareWithSpecialists" .=) <$>- _atrasShareWithSpeciaLists,- ("shareWithSupport" .=) <$> _atrasShareWithSupport,- ("shareAnonymouslyWithOthers" .=) <$>- _atrasShareAnonymouslyWithOthers,- ("shareWithGoogleProducts" .=) <$>- _atrasShareWithGoogleProducts])---- | Analytics data request query parameters.------ /See:/ 'mcfDataQuery' smart constructor.-data McfDataQuery = McfDataQuery'- { _mdqMetrics :: !(Maybe [Text])- , _mdqSamplingLevel :: !(Maybe Text)- , _mdqFilters :: !(Maybe Text)- , _mdqIds :: !(Maybe Text)- , _mdqEndDate :: !(Maybe Text)- , _mdqSort :: !(Maybe [Text])- , _mdqDimensions :: !(Maybe Text)- , _mdqStartIndex :: !(Maybe (Textual Int32))- , _mdqMaxResults :: !(Maybe (Textual Int32))- , _mdqSegment :: !(Maybe Text)- , _mdqStartDate :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'McfDataQuery' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'mdqMetrics'------ * 'mdqSamplingLevel'------ * 'mdqFilters'------ * 'mdqIds'------ * 'mdqEndDate'------ * 'mdqSort'------ * 'mdqDimensions'------ * 'mdqStartIndex'------ * 'mdqMaxResults'------ * 'mdqSegment'------ * 'mdqStartDate'-mcfDataQuery- :: McfDataQuery-mcfDataQuery =- McfDataQuery'- { _mdqMetrics = Nothing- , _mdqSamplingLevel = Nothing- , _mdqFilters = Nothing- , _mdqIds = Nothing- , _mdqEndDate = Nothing- , _mdqSort = Nothing- , _mdqDimensions = Nothing- , _mdqStartIndex = Nothing- , _mdqMaxResults = Nothing- , _mdqSegment = Nothing- , _mdqStartDate = Nothing- }---- | List of analytics metrics.-mdqMetrics :: Lens' McfDataQuery [Text]-mdqMetrics- = lens _mdqMetrics (\ s a -> s{_mdqMetrics = a}) .- _Default- . _Coerce---- | Desired sampling level-mdqSamplingLevel :: Lens' McfDataQuery (Maybe Text)-mdqSamplingLevel- = lens _mdqSamplingLevel- (\ s a -> s{_mdqSamplingLevel = a})---- | Comma-separated list of dimension or metric filters.-mdqFilters :: Lens' McfDataQuery (Maybe Text)-mdqFilters- = lens _mdqFilters (\ s a -> s{_mdqFilters = a})---- | Unique table ID.-mdqIds :: Lens' McfDataQuery (Maybe Text)-mdqIds = lens _mdqIds (\ s a -> s{_mdqIds = a})---- | End date.-mdqEndDate :: Lens' McfDataQuery (Maybe Text)-mdqEndDate- = lens _mdqEndDate (\ s a -> s{_mdqEndDate = a})---- | List of dimensions or metrics based on which Analytics data is sorted.-mdqSort :: Lens' McfDataQuery [Text]-mdqSort- = lens _mdqSort (\ s a -> s{_mdqSort = a}) . _Default- . _Coerce---- | List of analytics dimensions.-mdqDimensions :: Lens' McfDataQuery (Maybe Text)-mdqDimensions- = lens _mdqDimensions- (\ s a -> s{_mdqDimensions = a})---- | Start index.-mdqStartIndex :: Lens' McfDataQuery (Maybe Int32)-mdqStartIndex- = lens _mdqStartIndex- (\ s a -> s{_mdqStartIndex = a})- . mapping _Coerce---- | Maximum results per page.-mdqMaxResults :: Lens' McfDataQuery (Maybe Int32)-mdqMaxResults- = lens _mdqMaxResults- (\ s a -> s{_mdqMaxResults = a})- . mapping _Coerce---- | Analytics advanced segment.-mdqSegment :: Lens' McfDataQuery (Maybe Text)-mdqSegment- = lens _mdqSegment (\ s a -> s{_mdqSegment = a})---- | Start date.-mdqStartDate :: Lens' McfDataQuery (Maybe Text)-mdqStartDate- = lens _mdqStartDate (\ s a -> s{_mdqStartDate = a})--instance FromJSON McfDataQuery where- parseJSON- = withObject "McfDataQuery"- (\ o ->- McfDataQuery' <$>- (o .:? "metrics" .!= mempty) <*>- (o .:? "samplingLevel")- <*> (o .:? "filters")- <*> (o .:? "ids")- <*> (o .:? "end-date")- <*> (o .:? "sort" .!= mempty)- <*> (o .:? "dimensions")- <*> (o .:? "start-index")- <*> (o .:? "max-results")- <*> (o .:? "segment")- <*> (o .:? "start-date"))--instance ToJSON McfDataQuery where- toJSON McfDataQuery'{..}- = object- (catMaybes- [("metrics" .=) <$> _mdqMetrics,- ("samplingLevel" .=) <$> _mdqSamplingLevel,- ("filters" .=) <$> _mdqFilters,- ("ids" .=) <$> _mdqIds,- ("end-date" .=) <$> _mdqEndDate,- ("sort" .=) <$> _mdqSort,- ("dimensions" .=) <$> _mdqDimensions,- ("start-index" .=) <$> _mdqStartIndex,- ("max-results" .=) <$> _mdqMaxResults,- ("segment" .=) <$> _mdqSegment,- ("start-date" .=) <$> _mdqStartDate])---- | JSON template for Analytics goal resource.------ /See:/ 'goal' smart constructor.-data Goal = Goal'- { _goaParentLink :: !(Maybe GoalParentLink)- , _goaWebPropertyId :: !(Maybe Text)- , _goaKind :: !Text- , _goaCreated :: !(Maybe DateTime')- , _goaValue :: !(Maybe (Textual Double))- , _goaProFileId :: !(Maybe Text)- , _goaEventDetails :: !(Maybe GoalEventDetails)- , _goaActive :: !(Maybe Bool)- , _goaSelfLink :: !(Maybe Text)- , _goaVisitTimeOnSiteDetails :: !(Maybe GoalVisitTimeOnSiteDetails)- , _goaAccountId :: !(Maybe Text)- , _goaName :: !(Maybe Text)- , _goaInternalWebPropertyId :: !(Maybe Text)- , _goaId :: !(Maybe Text)- , _goaURLDestinationDetails :: !(Maybe GoalURLDestinationDetails)- , _goaVisitNumPagesDetails :: !(Maybe GoalVisitNumPagesDetails)- , _goaUpdated :: !(Maybe DateTime')- , _goaType :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Goal' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'goaParentLink'------ * 'goaWebPropertyId'------ * 'goaKind'------ * 'goaCreated'------ * 'goaValue'------ * 'goaProFileId'------ * 'goaEventDetails'------ * 'goaActive'------ * 'goaSelfLink'------ * 'goaVisitTimeOnSiteDetails'------ * 'goaAccountId'------ * 'goaName'------ * 'goaInternalWebPropertyId'------ * 'goaId'------ * 'goaURLDestinationDetails'------ * 'goaVisitNumPagesDetails'------ * 'goaUpdated'------ * 'goaType'-goal- :: Goal-goal =- Goal'- { _goaParentLink = Nothing- , _goaWebPropertyId = Nothing- , _goaKind = "analytics#goal"- , _goaCreated = Nothing- , _goaValue = Nothing- , _goaProFileId = Nothing- , _goaEventDetails = Nothing- , _goaActive = Nothing- , _goaSelfLink = Nothing- , _goaVisitTimeOnSiteDetails = Nothing- , _goaAccountId = Nothing- , _goaName = Nothing- , _goaInternalWebPropertyId = Nothing- , _goaId = Nothing- , _goaURLDestinationDetails = Nothing- , _goaVisitNumPagesDetails = Nothing- , _goaUpdated = Nothing- , _goaType = Nothing- }---- | Parent link for a goal. Points to the view (profile) to which this goal--- belongs.-goaParentLink :: Lens' Goal (Maybe GoalParentLink)-goaParentLink- = lens _goaParentLink- (\ s a -> s{_goaParentLink = a})---- | Web property ID to which this goal belongs. The web property ID is of--- the form UA-XXXXX-YY.-goaWebPropertyId :: Lens' Goal (Maybe Text)-goaWebPropertyId- = lens _goaWebPropertyId- (\ s a -> s{_goaWebPropertyId = a})---- | Resource type for an Analytics goal.-goaKind :: Lens' Goal Text-goaKind = lens _goaKind (\ s a -> s{_goaKind = a})---- | Time this goal was created.-goaCreated :: Lens' Goal (Maybe UTCTime)-goaCreated- = lens _goaCreated (\ s a -> s{_goaCreated = a}) .- mapping _DateTime---- | Goal value.-goaValue :: Lens' Goal (Maybe Double)-goaValue- = lens _goaValue (\ s a -> s{_goaValue = a}) .- mapping _Coerce---- | View (Profile) ID to which this goal belongs.-goaProFileId :: Lens' Goal (Maybe Text)-goaProFileId- = lens _goaProFileId (\ s a -> s{_goaProFileId = a})---- | Details for the goal of the type EVENT.-goaEventDetails :: Lens' Goal (Maybe GoalEventDetails)-goaEventDetails- = lens _goaEventDetails- (\ s a -> s{_goaEventDetails = a})---- | Determines whether this goal is active.-goaActive :: Lens' Goal (Maybe Bool)-goaActive- = lens _goaActive (\ s a -> s{_goaActive = a})---- | Link for this goal.-goaSelfLink :: Lens' Goal (Maybe Text)-goaSelfLink- = lens _goaSelfLink (\ s a -> s{_goaSelfLink = a})---- | Details for the goal of the type VISIT_TIME_ON_SITE.-goaVisitTimeOnSiteDetails :: Lens' Goal (Maybe GoalVisitTimeOnSiteDetails)-goaVisitTimeOnSiteDetails- = lens _goaVisitTimeOnSiteDetails- (\ s a -> s{_goaVisitTimeOnSiteDetails = a})---- | Account ID to which this goal belongs.-goaAccountId :: Lens' Goal (Maybe Text)-goaAccountId- = lens _goaAccountId (\ s a -> s{_goaAccountId = a})---- | Goal name.-goaName :: Lens' Goal (Maybe Text)-goaName = lens _goaName (\ s a -> s{_goaName = a})---- | Internal ID for the web property to which this goal belongs.-goaInternalWebPropertyId :: Lens' Goal (Maybe Text)-goaInternalWebPropertyId- = lens _goaInternalWebPropertyId- (\ s a -> s{_goaInternalWebPropertyId = a})---- | Goal ID.-goaId :: Lens' Goal (Maybe Text)-goaId = lens _goaId (\ s a -> s{_goaId = a})---- | Details for the goal of the type URL_DESTINATION.-goaURLDestinationDetails :: Lens' Goal (Maybe GoalURLDestinationDetails)-goaURLDestinationDetails- = lens _goaURLDestinationDetails- (\ s a -> s{_goaURLDestinationDetails = a})---- | Details for the goal of the type VISIT_NUM_PAGES.-goaVisitNumPagesDetails :: Lens' Goal (Maybe GoalVisitNumPagesDetails)-goaVisitNumPagesDetails- = lens _goaVisitNumPagesDetails- (\ s a -> s{_goaVisitNumPagesDetails = a})---- | Time this goal was last modified.-goaUpdated :: Lens' Goal (Maybe UTCTime)-goaUpdated- = lens _goaUpdated (\ s a -> s{_goaUpdated = a}) .- mapping _DateTime---- | Goal type. Possible values are URL_DESTINATION, VISIT_TIME_ON_SITE,--- VISIT_NUM_PAGES, AND EVENT.-goaType :: Lens' Goal (Maybe Text)-goaType = lens _goaType (\ s a -> s{_goaType = a})--instance FromJSON Goal where- parseJSON- = withObject "Goal"- (\ o ->- Goal' <$>- (o .:? "parentLink") <*> (o .:? "webPropertyId") <*>- (o .:? "kind" .!= "analytics#goal")- <*> (o .:? "created")- <*> (o .:? "value")- <*> (o .:? "profileId")- <*> (o .:? "eventDetails")- <*> (o .:? "active")- <*> (o .:? "selfLink")- <*> (o .:? "visitTimeOnSiteDetails")- <*> (o .:? "accountId")- <*> (o .:? "name")- <*> (o .:? "internalWebPropertyId")- <*> (o .:? "id")- <*> (o .:? "urlDestinationDetails")- <*> (o .:? "visitNumPagesDetails")- <*> (o .:? "updated")- <*> (o .:? "type"))--instance ToJSON Goal where- toJSON Goal'{..}- = object- (catMaybes- [("parentLink" .=) <$> _goaParentLink,- ("webPropertyId" .=) <$> _goaWebPropertyId,- Just ("kind" .= _goaKind),- ("created" .=) <$> _goaCreated,- ("value" .=) <$> _goaValue,- ("profileId" .=) <$> _goaProFileId,- ("eventDetails" .=) <$> _goaEventDetails,- ("active" .=) <$> _goaActive,- ("selfLink" .=) <$> _goaSelfLink,- ("visitTimeOnSiteDetails" .=) <$>- _goaVisitTimeOnSiteDetails,- ("accountId" .=) <$> _goaAccountId,- ("name" .=) <$> _goaName,- ("internalWebPropertyId" .=) <$>- _goaInternalWebPropertyId,- ("id" .=) <$> _goaId,- ("urlDestinationDetails" .=) <$>- _goaURLDestinationDetails,- ("visitNumPagesDetails" .=) <$>- _goaVisitNumPagesDetails,- ("updated" .=) <$> _goaUpdated,- ("type" .=) <$> _goaType])---- | JSON template for an Analytics account ticket. The account ticket--- consists of the ticket ID and the basic information for the account,--- property and profile.------ /See:/ 'accountTicket' smart constructor.-data AccountTicket = AccountTicket'- { _atRedirectURI :: !(Maybe Text)- , _atKind :: !Text- , _atProFile :: !(Maybe ProFile)- , _atAccount :: !(Maybe Account)- , _atWebProperty :: !(Maybe WebProperty)- , _atId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'AccountTicket' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'atRedirectURI'------ * 'atKind'------ * 'atProFile'------ * 'atAccount'------ * 'atWebProperty'------ * 'atId'-accountTicket- :: AccountTicket-accountTicket =- AccountTicket'- { _atRedirectURI = Nothing- , _atKind = "analytics#accountTicket"- , _atProFile = Nothing- , _atAccount = Nothing- , _atWebProperty = Nothing- , _atId = Nothing- }---- | Redirect URI where the user will be sent after accepting Terms of--- Service. Must be configured in APIs console as a callback URL.-atRedirectURI :: Lens' AccountTicket (Maybe Text)-atRedirectURI- = lens _atRedirectURI- (\ s a -> s{_atRedirectURI = a})---- | Resource type for account ticket.-atKind :: Lens' AccountTicket Text-atKind = lens _atKind (\ s a -> s{_atKind = a})---- | View (Profile) for the account.-atProFile :: Lens' AccountTicket (Maybe ProFile)-atProFile- = lens _atProFile (\ s a -> s{_atProFile = a})---- | Account for this ticket.-atAccount :: Lens' AccountTicket (Maybe Account)-atAccount- = lens _atAccount (\ s a -> s{_atAccount = a})---- | Web property for the account.-atWebProperty :: Lens' AccountTicket (Maybe WebProperty)-atWebProperty- = lens _atWebProperty- (\ s a -> s{_atWebProperty = a})---- | Account ticket ID used to access the account ticket.-atId :: Lens' AccountTicket (Maybe Text)-atId = lens _atId (\ s a -> s{_atId = a})--instance FromJSON AccountTicket where- parseJSON- = withObject "AccountTicket"- (\ o ->- AccountTicket' <$>- (o .:? "redirectUri") <*>- (o .:? "kind" .!= "analytics#accountTicket")- <*> (o .:? "profile")- <*> (o .:? "account")- <*> (o .:? "webproperty")- <*> (o .:? "id"))--instance ToJSON AccountTicket where- toJSON AccountTicket'{..}- = object- (catMaybes- [("redirectUri" .=) <$> _atRedirectURI,- Just ("kind" .= _atKind),- ("profile" .=) <$> _atProFile,- ("account" .=) <$> _atAccount,- ("webproperty" .=) <$> _atWebProperty,- ("id" .=) <$> _atId])---- | JSON template for an Analytics AccountSummary. An AccountSummary is a--- lightweight tree comprised of properties\/profiles.------ /See:/ 'accountSummary' smart constructor.-data AccountSummary = AccountSummary'- { _assKind :: !Text- , _assWebProperties :: !(Maybe [WebPropertySummary])- , _assName :: !(Maybe Text)- , _assStarred :: !(Maybe Bool)- , _assId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'AccountSummary' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'assKind'------ * 'assWebProperties'------ * 'assName'------ * 'assStarred'------ * 'assId'-accountSummary- :: AccountSummary-accountSummary =- AccountSummary'- { _assKind = "analytics#accountSummary"- , _assWebProperties = Nothing- , _assName = Nothing- , _assStarred = Nothing- , _assId = Nothing- }---- | Resource type for Analytics AccountSummary.-assKind :: Lens' AccountSummary Text-assKind = lens _assKind (\ s a -> s{_assKind = a})---- | List of web properties under this account.-assWebProperties :: Lens' AccountSummary [WebPropertySummary]-assWebProperties- = lens _assWebProperties- (\ s a -> s{_assWebProperties = a})- . _Default- . _Coerce---- | Account name.-assName :: Lens' AccountSummary (Maybe Text)-assName = lens _assName (\ s a -> s{_assName = a})---- | Indicates whether this account is starred or not.-assStarred :: Lens' AccountSummary (Maybe Bool)-assStarred- = lens _assStarred (\ s a -> s{_assStarred = a})---- | Account ID.-assId :: Lens' AccountSummary (Maybe Text)-assId = lens _assId (\ s a -> s{_assId = a})--instance FromJSON AccountSummary where- parseJSON- = withObject "AccountSummary"- (\ o ->- AccountSummary' <$>- (o .:? "kind" .!= "analytics#accountSummary") <*>- (o .:? "webProperties" .!= mempty)- <*> (o .:? "name")- <*> (o .:? "starred")- <*> (o .:? "id"))--instance ToJSON AccountSummary where- toJSON AccountSummary'{..}- = object- (catMaybes- [Just ("kind" .= _assKind),- ("webProperties" .=) <$> _assWebProperties,- ("name" .=) <$> _assName,- ("starred" .=) <$> _assStarred,- ("id" .=) <$> _assId])---- | Real time data request query parameters.------ /See:/ 'realtimeDataQuery' smart constructor.-data RealtimeDataQuery = RealtimeDataQuery'- { _rdqMetrics :: !(Maybe [Text])- , _rdqFilters :: !(Maybe Text)- , _rdqIds :: !(Maybe Text)- , _rdqSort :: !(Maybe [Text])- , _rdqDimensions :: !(Maybe Text)- , _rdqMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'RealtimeDataQuery' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rdqMetrics'------ * 'rdqFilters'------ * 'rdqIds'------ * 'rdqSort'------ * 'rdqDimensions'------ * 'rdqMaxResults'-realtimeDataQuery- :: RealtimeDataQuery-realtimeDataQuery =- RealtimeDataQuery'- { _rdqMetrics = Nothing- , _rdqFilters = Nothing- , _rdqIds = Nothing- , _rdqSort = Nothing- , _rdqDimensions = Nothing- , _rdqMaxResults = Nothing- }---- | List of real time metrics.-rdqMetrics :: Lens' RealtimeDataQuery [Text]-rdqMetrics- = lens _rdqMetrics (\ s a -> s{_rdqMetrics = a}) .- _Default- . _Coerce---- | Comma-separated list of dimension or metric filters.-rdqFilters :: Lens' RealtimeDataQuery (Maybe Text)-rdqFilters- = lens _rdqFilters (\ s a -> s{_rdqFilters = a})---- | Unique table ID.-rdqIds :: Lens' RealtimeDataQuery (Maybe Text)-rdqIds = lens _rdqIds (\ s a -> s{_rdqIds = a})---- | List of dimensions or metrics based on which real time data is sorted.-rdqSort :: Lens' RealtimeDataQuery [Text]-rdqSort- = lens _rdqSort (\ s a -> s{_rdqSort = a}) . _Default- . _Coerce---- | List of real time dimensions.-rdqDimensions :: Lens' RealtimeDataQuery (Maybe Text)-rdqDimensions- = lens _rdqDimensions- (\ s a -> s{_rdqDimensions = a})---- | Maximum results per page.-rdqMaxResults :: Lens' RealtimeDataQuery (Maybe Int32)-rdqMaxResults- = lens _rdqMaxResults- (\ s a -> s{_rdqMaxResults = a})- . mapping _Coerce--instance FromJSON RealtimeDataQuery where- parseJSON- = withObject "RealtimeDataQuery"- (\ o ->- RealtimeDataQuery' <$>- (o .:? "metrics" .!= mempty) <*> (o .:? "filters")- <*> (o .:? "ids")- <*> (o .:? "sort" .!= mempty)- <*> (o .:? "dimensions")- <*> (o .:? "max-results"))--instance ToJSON RealtimeDataQuery where- toJSON RealtimeDataQuery'{..}- = object- (catMaybes- [("metrics" .=) <$> _rdqMetrics,- ("filters" .=) <$> _rdqFilters,- ("ids" .=) <$> _rdqIds, ("sort" .=) <$> _rdqSort,- ("dimensions" .=) <$> _rdqDimensions,- ("max-results" .=) <$> _rdqMaxResults])---- | Lists columns (dimensions and metrics) for a particular report type.------ /See:/ 'columns' smart constructor.-data Columns = Columns'- { _colEtag :: !(Maybe Text)- , _colKind :: !Text- , _colItems :: !(Maybe [Column])- , _colTotalResults :: !(Maybe (Textual Int32))- , _colAttributeNames :: !(Maybe [Text])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Columns' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'colEtag'------ * 'colKind'------ * 'colItems'------ * 'colTotalResults'------ * 'colAttributeNames'-columns- :: Columns-columns =- Columns'- { _colEtag = Nothing- , _colKind = "analytics#columns"- , _colItems = Nothing- , _colTotalResults = Nothing- , _colAttributeNames = Nothing- }---- | Etag of collection. This etag can be compared with the last response--- etag to check if response has changed.-colEtag :: Lens' Columns (Maybe Text)-colEtag = lens _colEtag (\ s a -> s{_colEtag = a})---- | Collection type.-colKind :: Lens' Columns Text-colKind = lens _colKind (\ s a -> s{_colKind = a})---- | List of columns for a report type.-colItems :: Lens' Columns [Column]-colItems- = lens _colItems (\ s a -> s{_colItems = a}) .- _Default- . _Coerce---- | Total number of columns returned in the response.-colTotalResults :: Lens' Columns (Maybe Int32)-colTotalResults- = lens _colTotalResults- (\ s a -> s{_colTotalResults = a})- . mapping _Coerce---- | List of attributes names returned by columns.-colAttributeNames :: Lens' Columns [Text]-colAttributeNames- = lens _colAttributeNames- (\ s a -> s{_colAttributeNames = a})- . _Default- . _Coerce--instance FromJSON Columns where- parseJSON- = withObject "Columns"- (\ o ->- Columns' <$>- (o .:? "etag") <*>- (o .:? "kind" .!= "analytics#columns")- <*> (o .:? "items" .!= mempty)- <*> (o .:? "totalResults")- <*> (o .:? "attributeNames" .!= mempty))--instance ToJSON Columns where- toJSON Columns'{..}- = object- (catMaybes- [("etag" .=) <$> _colEtag, Just ("kind" .= _colKind),- ("items" .=) <$> _colItems,- ("totalResults" .=) <$> _colTotalResults,- ("attributeNames" .=) <$> _colAttributeNames])---- | Details for the filter of the type LOWER.------ /See:/ 'filterLowercaseDetails' smart constructor.-data FilterLowercaseDetails = FilterLowercaseDetails'- { _fldFieldIndex :: !(Maybe (Textual Int32))- , _fldField :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'FilterLowercaseDetails' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'fldFieldIndex'------ * 'fldField'-filterLowercaseDetails- :: FilterLowercaseDetails-filterLowercaseDetails =- FilterLowercaseDetails'- { _fldFieldIndex = Nothing- , _fldField = Nothing- }---- | The Index of the custom dimension. Required if field is a--- CUSTOM_DIMENSION.-fldFieldIndex :: Lens' FilterLowercaseDetails (Maybe Int32)-fldFieldIndex- = lens _fldFieldIndex- (\ s a -> s{_fldFieldIndex = a})- . mapping _Coerce---- | Field to use in the filter.-fldField :: Lens' FilterLowercaseDetails (Maybe Text)-fldField = lens _fldField (\ s a -> s{_fldField = a})--instance FromJSON FilterLowercaseDetails where- parseJSON- = withObject "FilterLowercaseDetails"- (\ o ->- FilterLowercaseDetails' <$>- (o .:? "fieldIndex") <*> (o .:? "field"))--instance ToJSON FilterLowercaseDetails where- toJSON FilterLowercaseDetails'{..}- = object- (catMaybes- [("fieldIndex" .=) <$> _fldFieldIndex,- ("field" .=) <$> _fldField])---- | JSON template for an Analytics account filter.------ /See:/ 'filter'' smart constructor.-data Filter = Filter'- { _filParentLink :: !(Maybe FilterParentLink)- , _filAdvancedDetails :: !(Maybe FilterAdvancedDetails)- , _filUppercaseDetails :: !(Maybe FilterUppercaseDetails)- , _filLowercaseDetails :: !(Maybe FilterLowercaseDetails)- , _filKind :: !Text- , _filCreated :: !(Maybe DateTime')- , _filIncludeDetails :: !(Maybe FilterExpression)- , _filExcludeDetails :: !(Maybe FilterExpression)- , _filSelfLink :: !(Maybe Text)- , _filAccountId :: !(Maybe Text)- , _filName :: !(Maybe Text)- , _filId :: !(Maybe Text)- , _filUpdated :: !(Maybe DateTime')- , _filType :: !(Maybe Text)- , _filSearchAndReplaceDetails :: !(Maybe FilterSearchAndReplaceDetails)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Filter' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'filParentLink'------ * 'filAdvancedDetails'------ * 'filUppercaseDetails'------ * 'filLowercaseDetails'------ * 'filKind'------ * 'filCreated'------ * 'filIncludeDetails'------ * 'filExcludeDetails'------ * 'filSelfLink'------ * 'filAccountId'------ * 'filName'------ * 'filId'------ * 'filUpdated'------ * 'filType'------ * 'filSearchAndReplaceDetails'-filter'- :: Filter-filter' =- Filter'- { _filParentLink = Nothing- , _filAdvancedDetails = Nothing- , _filUppercaseDetails = Nothing- , _filLowercaseDetails = Nothing- , _filKind = "analytics#filter"- , _filCreated = Nothing- , _filIncludeDetails = Nothing- , _filExcludeDetails = Nothing- , _filSelfLink = Nothing- , _filAccountId = Nothing- , _filName = Nothing- , _filId = Nothing- , _filUpdated = Nothing- , _filType = Nothing- , _filSearchAndReplaceDetails = Nothing- }---- | Parent link for this filter. Points to the account to which this filter--- belongs.-filParentLink :: Lens' Filter (Maybe FilterParentLink)-filParentLink- = lens _filParentLink- (\ s a -> s{_filParentLink = a})---- | Details for the filter of the type ADVANCED.-filAdvancedDetails :: Lens' Filter (Maybe FilterAdvancedDetails)-filAdvancedDetails- = lens _filAdvancedDetails- (\ s a -> s{_filAdvancedDetails = a})---- | Details for the filter of the type UPPER.-filUppercaseDetails :: Lens' Filter (Maybe FilterUppercaseDetails)-filUppercaseDetails- = lens _filUppercaseDetails- (\ s a -> s{_filUppercaseDetails = a})---- | Details for the filter of the type LOWER.-filLowercaseDetails :: Lens' Filter (Maybe FilterLowercaseDetails)-filLowercaseDetails- = lens _filLowercaseDetails- (\ s a -> s{_filLowercaseDetails = a})---- | Resource type for Analytics filter.-filKind :: Lens' Filter Text-filKind = lens _filKind (\ s a -> s{_filKind = a})---- | Time this filter was created.-filCreated :: Lens' Filter (Maybe UTCTime)-filCreated- = lens _filCreated (\ s a -> s{_filCreated = a}) .- mapping _DateTime---- | Details for the filter of the type INCLUDE.-filIncludeDetails :: Lens' Filter (Maybe FilterExpression)-filIncludeDetails- = lens _filIncludeDetails- (\ s a -> s{_filIncludeDetails = a})---- | Details for the filter of the type EXCLUDE.-filExcludeDetails :: Lens' Filter (Maybe FilterExpression)-filExcludeDetails- = lens _filExcludeDetails- (\ s a -> s{_filExcludeDetails = a})---- | Link for this filter.-filSelfLink :: Lens' Filter (Maybe Text)-filSelfLink- = lens _filSelfLink (\ s a -> s{_filSelfLink = a})---- | Account ID to which this filter belongs.-filAccountId :: Lens' Filter (Maybe Text)-filAccountId- = lens _filAccountId (\ s a -> s{_filAccountId = a})---- | Name of this filter.-filName :: Lens' Filter (Maybe Text)-filName = lens _filName (\ s a -> s{_filName = a})---- | Filter ID.-filId :: Lens' Filter (Maybe Text)-filId = lens _filId (\ s a -> s{_filId = a})---- | Time this filter was last modified.-filUpdated :: Lens' Filter (Maybe UTCTime)-filUpdated- = lens _filUpdated (\ s a -> s{_filUpdated = a}) .- mapping _DateTime---- | Type of this filter. Possible values are INCLUDE, EXCLUDE, LOWERCASE,--- UPPERCASE, SEARCH_AND_REPLACE and ADVANCED.-filType :: Lens' Filter (Maybe Text)-filType = lens _filType (\ s a -> s{_filType = a})---- | Details for the filter of the type SEARCH_AND_REPLACE.-filSearchAndReplaceDetails :: Lens' Filter (Maybe FilterSearchAndReplaceDetails)-filSearchAndReplaceDetails- = lens _filSearchAndReplaceDetails- (\ s a -> s{_filSearchAndReplaceDetails = a})--instance FromJSON Filter where- parseJSON- = withObject "Filter"- (\ o ->- Filter' <$>- (o .:? "parentLink") <*> (o .:? "advancedDetails")- <*> (o .:? "uppercaseDetails")- <*> (o .:? "lowercaseDetails")- <*> (o .:? "kind" .!= "analytics#filter")- <*> (o .:? "created")- <*> (o .:? "includeDetails")- <*> (o .:? "excludeDetails")- <*> (o .:? "selfLink")- <*> (o .:? "accountId")- <*> (o .:? "name")- <*> (o .:? "id")- <*> (o .:? "updated")- <*> (o .:? "type")- <*> (o .:? "searchAndReplaceDetails"))--instance ToJSON Filter where- toJSON Filter'{..}- = object- (catMaybes- [("parentLink" .=) <$> _filParentLink,- ("advancedDetails" .=) <$> _filAdvancedDetails,- ("uppercaseDetails" .=) <$> _filUppercaseDetails,- ("lowercaseDetails" .=) <$> _filLowercaseDetails,- Just ("kind" .= _filKind),- ("created" .=) <$> _filCreated,- ("includeDetails" .=) <$> _filIncludeDetails,- ("excludeDetails" .=) <$> _filExcludeDetails,- ("selfLink" .=) <$> _filSelfLink,- ("accountId" .=) <$> _filAccountId,- ("name" .=) <$> _filName, ("id" .=) <$> _filId,- ("updated" .=) <$> _filUpdated,- ("type" .=) <$> _filType,- ("searchAndReplaceDetails" .=) <$>- _filSearchAndReplaceDetails])---- | Upload collection lists Analytics uploads to which the user has access.--- Each custom data source can have a set of uploads. Each resource in the--- upload collection corresponds to a single Analytics data upload.------ /See:/ 'uploads' smart constructor.-data Uploads = Uploads'- { _uplNextLink :: !(Maybe Text)- , _uplItemsPerPage :: !(Maybe (Textual Int32))- , _uplKind :: !Text- , _uplItems :: !(Maybe [Upload])- , _uplTotalResults :: !(Maybe (Textual Int32))- , _uplStartIndex :: !(Maybe (Textual Int32))- , _uplPreviousLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Uploads' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'uplNextLink'------ * 'uplItemsPerPage'------ * 'uplKind'------ * 'uplItems'------ * 'uplTotalResults'------ * 'uplStartIndex'------ * 'uplPreviousLink'-uploads- :: Uploads-uploads =- Uploads'- { _uplNextLink = Nothing- , _uplItemsPerPage = Nothing- , _uplKind = "analytics#uploads"- , _uplItems = Nothing- , _uplTotalResults = Nothing- , _uplStartIndex = Nothing- , _uplPreviousLink = Nothing- }---- | Link to next page for this upload collection.-uplNextLink :: Lens' Uploads (Maybe Text)-uplNextLink- = lens _uplNextLink (\ s a -> s{_uplNextLink = a})---- | The maximum number of resources the response can contain, regardless of--- the actual number of resources returned. Its value ranges from 1 to 1000--- with a value of 1000 by default, or otherwise specified by the--- max-results query parameter.-uplItemsPerPage :: Lens' Uploads (Maybe Int32)-uplItemsPerPage- = lens _uplItemsPerPage- (\ s a -> s{_uplItemsPerPage = a})- . mapping _Coerce---- | Collection type.-uplKind :: Lens' Uploads Text-uplKind = lens _uplKind (\ s a -> s{_uplKind = a})---- | A list of uploads.-uplItems :: Lens' Uploads [Upload]-uplItems- = lens _uplItems (\ s a -> s{_uplItems = a}) .- _Default- . _Coerce---- | The total number of results for the query, regardless of the number of--- resources in the result.-uplTotalResults :: Lens' Uploads (Maybe Int32)-uplTotalResults- = lens _uplTotalResults- (\ s a -> s{_uplTotalResults = a})- . mapping _Coerce---- | The starting index of the resources, which is 1 by default or otherwise--- specified by the start-index query parameter.-uplStartIndex :: Lens' Uploads (Maybe Int32)-uplStartIndex- = lens _uplStartIndex- (\ s a -> s{_uplStartIndex = a})- . mapping _Coerce---- | Link to previous page for this upload collection.-uplPreviousLink :: Lens' Uploads (Maybe Text)-uplPreviousLink- = lens _uplPreviousLink- (\ s a -> s{_uplPreviousLink = a})--instance FromJSON Uploads where- parseJSON- = withObject "Uploads"- (\ o ->- Uploads' <$>- (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>- (o .:? "kind" .!= "analytics#uploads")- <*> (o .:? "items" .!= mempty)- <*> (o .:? "totalResults")- <*> (o .:? "startIndex")- <*> (o .:? "previousLink"))--instance ToJSON Uploads where- toJSON Uploads'{..}- = object- (catMaybes- [("nextLink" .=) <$> _uplNextLink,- ("itemsPerPage" .=) <$> _uplItemsPerPage,- Just ("kind" .= _uplKind),- ("items" .=) <$> _uplItems,- ("totalResults" .=) <$> _uplTotalResults,- ("startIndex" .=) <$> _uplStartIndex,- ("previousLink" .=) <$> _uplPreviousLink])---- | A custom dimension collection lists Analytics custom dimensions to which--- the user has access. Each resource in the collection corresponds to a--- single Analytics custom dimension.------ /See:/ 'customDimensions' smart constructor.-data CustomDimensions = CustomDimensions'- { _cdNextLink :: !(Maybe Text)- , _cdItemsPerPage :: !(Maybe (Textual Int32))- , _cdKind :: !Text- , _cdUsername :: !(Maybe Text)- , _cdItems :: !(Maybe [CustomDimension])- , _cdTotalResults :: !(Maybe (Textual Int32))- , _cdStartIndex :: !(Maybe (Textual Int32))- , _cdPreviousLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'CustomDimensions' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cdNextLink'------ * 'cdItemsPerPage'------ * 'cdKind'------ * 'cdUsername'------ * 'cdItems'------ * 'cdTotalResults'------ * 'cdStartIndex'------ * 'cdPreviousLink'-customDimensions- :: CustomDimensions-customDimensions =- CustomDimensions'- { _cdNextLink = Nothing- , _cdItemsPerPage = Nothing- , _cdKind = "analytics#customDimensions"- , _cdUsername = Nothing- , _cdItems = Nothing- , _cdTotalResults = Nothing- , _cdStartIndex = Nothing- , _cdPreviousLink = Nothing- }---- | Link to next page for this custom dimension collection.-cdNextLink :: Lens' CustomDimensions (Maybe Text)-cdNextLink- = lens _cdNextLink (\ s a -> s{_cdNextLink = a})---- | The maximum number of resources the response can contain, regardless of--- the actual number of resources returned. Its value ranges from 1 to 1000--- with a value of 1000 by default, or otherwise specified by the--- max-results query parameter.-cdItemsPerPage :: Lens' CustomDimensions (Maybe Int32)-cdItemsPerPage- = lens _cdItemsPerPage- (\ s a -> s{_cdItemsPerPage = a})- . mapping _Coerce---- | Collection type.-cdKind :: Lens' CustomDimensions Text-cdKind = lens _cdKind (\ s a -> s{_cdKind = a})---- | Email ID of the authenticated user-cdUsername :: Lens' CustomDimensions (Maybe Text)-cdUsername- = lens _cdUsername (\ s a -> s{_cdUsername = a})---- | Collection of custom dimensions.-cdItems :: Lens' CustomDimensions [CustomDimension]-cdItems- = lens _cdItems (\ s a -> s{_cdItems = a}) . _Default- . _Coerce---- | The total number of results for the query, regardless of the number of--- results in the response.-cdTotalResults :: Lens' CustomDimensions (Maybe Int32)-cdTotalResults- = lens _cdTotalResults- (\ s a -> s{_cdTotalResults = a})- . mapping _Coerce---- | The starting index of the resources, which is 1 by default or otherwise--- specified by the start-index query parameter.-cdStartIndex :: Lens' CustomDimensions (Maybe Int32)-cdStartIndex- = lens _cdStartIndex (\ s a -> s{_cdStartIndex = a})- . mapping _Coerce---- | Link to previous page for this custom dimension collection.-cdPreviousLink :: Lens' CustomDimensions (Maybe Text)-cdPreviousLink- = lens _cdPreviousLink- (\ s a -> s{_cdPreviousLink = a})--instance FromJSON CustomDimensions where- parseJSON- = withObject "CustomDimensions"- (\ o ->- CustomDimensions' <$>- (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>- (o .:? "kind" .!= "analytics#customDimensions")- <*> (o .:? "username")- <*> (o .:? "items" .!= mempty)- <*> (o .:? "totalResults")- <*> (o .:? "startIndex")- <*> (o .:? "previousLink"))--instance ToJSON CustomDimensions where- toJSON CustomDimensions'{..}- = object- (catMaybes- [("nextLink" .=) <$> _cdNextLink,- ("itemsPerPage" .=) <$> _cdItemsPerPage,- Just ("kind" .= _cdKind),- ("username" .=) <$> _cdUsername,- ("items" .=) <$> _cdItems,- ("totalResults" .=) <$> _cdTotalResults,- ("startIndex" .=) <$> _cdStartIndex,- ("previousLink" .=) <$> _cdPreviousLink])---- | An segment collection lists Analytics segments that the user has access--- to. Each resource in the collection corresponds to a single Analytics--- segment.------ /See:/ 'segments' smart constructor.-data Segments = Segments'- { _sNextLink :: !(Maybe Text)- , _sItemsPerPage :: !(Maybe (Textual Int32))- , _sKind :: !Text- , _sUsername :: !(Maybe Text)- , _sItems :: !(Maybe [Segment])- , _sTotalResults :: !(Maybe (Textual Int32))- , _sStartIndex :: !(Maybe (Textual Int32))- , _sPreviousLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Segments' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'sNextLink'------ * 'sItemsPerPage'------ * 'sKind'------ * 'sUsername'------ * 'sItems'------ * 'sTotalResults'------ * 'sStartIndex'------ * 'sPreviousLink'-segments- :: Segments-segments =- Segments'- { _sNextLink = Nothing- , _sItemsPerPage = Nothing- , _sKind = "analytics#segments"- , _sUsername = Nothing- , _sItems = Nothing- , _sTotalResults = Nothing- , _sStartIndex = Nothing- , _sPreviousLink = Nothing- }---- | Link to next page for this segment collection.-sNextLink :: Lens' Segments (Maybe Text)-sNextLink- = lens _sNextLink (\ s a -> s{_sNextLink = a})---- | The maximum number of resources the response can contain, regardless of--- the actual number of resources returned. Its value ranges from 1 to 1000--- with a value of 1000 by default, or otherwise specified by the--- max-results query parameter.-sItemsPerPage :: Lens' Segments (Maybe Int32)-sItemsPerPage- = lens _sItemsPerPage- (\ s a -> s{_sItemsPerPage = a})- . mapping _Coerce---- | Collection type for segments.-sKind :: Lens' Segments Text-sKind = lens _sKind (\ s a -> s{_sKind = a})---- | Email ID of the authenticated user-sUsername :: Lens' Segments (Maybe Text)-sUsername- = lens _sUsername (\ s a -> s{_sUsername = a})---- | A list of segments.-sItems :: Lens' Segments [Segment]-sItems- = lens _sItems (\ s a -> s{_sItems = a}) . _Default .- _Coerce---- | The total number of results for the query, regardless of the number of--- results in the response.-sTotalResults :: Lens' Segments (Maybe Int32)-sTotalResults- = lens _sTotalResults- (\ s a -> s{_sTotalResults = a})- . mapping _Coerce---- | The starting index of the resources, which is 1 by default or otherwise--- specified by the start-index query parameter.-sStartIndex :: Lens' Segments (Maybe Int32)-sStartIndex- = lens _sStartIndex (\ s a -> s{_sStartIndex = a}) .- mapping _Coerce---- | Link to previous page for this segment collection.-sPreviousLink :: Lens' Segments (Maybe Text)-sPreviousLink- = lens _sPreviousLink- (\ s a -> s{_sPreviousLink = a})--instance FromJSON Segments where- parseJSON- = withObject "Segments"- (\ o ->- Segments' <$>- (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>- (o .:? "kind" .!= "analytics#segments")- <*> (o .:? "username")- <*> (o .:? "items" .!= mempty)- <*> (o .:? "totalResults")- <*> (o .:? "startIndex")- <*> (o .:? "previousLink"))--instance ToJSON Segments where- toJSON Segments'{..}- = object- (catMaybes- [("nextLink" .=) <$> _sNextLink,- ("itemsPerPage" .=) <$> _sItemsPerPage,- Just ("kind" .= _sKind),- ("username" .=) <$> _sUsername,- ("items" .=) <$> _sItems,- ("totalResults" .=) <$> _sTotalResults,- ("startIndex" .=) <$> _sStartIndex,- ("previousLink" .=) <$> _sPreviousLink])------- /See:/ 'gaDataDataTable' smart constructor.-data GaDataDataTable = GaDataDataTable'- { _gddtCols :: !(Maybe [GaDataDataTableColsItem])- , _gddtRows :: !(Maybe [GaDataDataTableRowsItem])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GaDataDataTable' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gddtCols'------ * 'gddtRows'-gaDataDataTable- :: GaDataDataTable-gaDataDataTable =- GaDataDataTable'- { _gddtCols = Nothing- , _gddtRows = Nothing- }--gddtCols :: Lens' GaDataDataTable [GaDataDataTableColsItem]-gddtCols- = lens _gddtCols (\ s a -> s{_gddtCols = a}) .- _Default- . _Coerce--gddtRows :: Lens' GaDataDataTable [GaDataDataTableRowsItem]-gddtRows- = lens _gddtRows (\ s a -> s{_gddtRows = a}) .- _Default- . _Coerce--instance FromJSON GaDataDataTable where- parseJSON- = withObject "GaDataDataTable"- (\ o ->- GaDataDataTable' <$>- (o .:? "cols" .!= mempty) <*>- (o .:? "rows" .!= mempty))--instance ToJSON GaDataDataTable where- toJSON GaDataDataTable'{..}- = object- (catMaybes- [("cols" .=) <$> _gddtCols,- ("rows" .=) <$> _gddtRows])---- | Web property being linked.------ /See:/ 'entityAdWordsLinkEntity' smart constructor.-newtype EntityAdWordsLinkEntity = EntityAdWordsLinkEntity'- { _eawleWebPropertyRef :: Maybe WebPropertyRef- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'EntityAdWordsLinkEntity' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'eawleWebPropertyRef'-entityAdWordsLinkEntity- :: EntityAdWordsLinkEntity-entityAdWordsLinkEntity =- EntityAdWordsLinkEntity'- { _eawleWebPropertyRef = Nothing- }--eawleWebPropertyRef :: Lens' EntityAdWordsLinkEntity (Maybe WebPropertyRef)-eawleWebPropertyRef- = lens _eawleWebPropertyRef- (\ s a -> s{_eawleWebPropertyRef = a})--instance FromJSON EntityAdWordsLinkEntity where- parseJSON- = withObject "EntityAdWordsLinkEntity"- (\ o ->- EntityAdWordsLinkEntity' <$>- (o .:? "webPropertyRef"))--instance ToJSON EntityAdWordsLinkEntity where- toJSON EntityAdWordsLinkEntity'{..}- = object- (catMaybes- [("webPropertyRef" .=) <$> _eawleWebPropertyRef])---- | A state based audience definition that will cause a user to be added or--- removed from an audience.------ /See:/ 'remarketingAudienceStateBasedAudienceDefinition' smart constructor.-data RemarketingAudienceStateBasedAudienceDefinition = RemarketingAudienceStateBasedAudienceDefinition'- { _rasbadExcludeConditions :: !(Maybe RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions)- , _rasbadIncludeConditions :: !(Maybe IncludeConditions)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'RemarketingAudienceStateBasedAudienceDefinition' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rasbadExcludeConditions'------ * 'rasbadIncludeConditions'-remarketingAudienceStateBasedAudienceDefinition- :: RemarketingAudienceStateBasedAudienceDefinition-remarketingAudienceStateBasedAudienceDefinition =- RemarketingAudienceStateBasedAudienceDefinition'- { _rasbadExcludeConditions = Nothing- , _rasbadIncludeConditions = Nothing- }---- | Defines the conditions to exclude users from the audience.-rasbadExcludeConditions :: Lens' RemarketingAudienceStateBasedAudienceDefinition (Maybe RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions)-rasbadExcludeConditions- = lens _rasbadExcludeConditions- (\ s a -> s{_rasbadExcludeConditions = a})---- | Defines the conditions to include users to the audience.-rasbadIncludeConditions :: Lens' RemarketingAudienceStateBasedAudienceDefinition (Maybe IncludeConditions)-rasbadIncludeConditions- = lens _rasbadIncludeConditions- (\ s a -> s{_rasbadIncludeConditions = a})--instance FromJSON- RemarketingAudienceStateBasedAudienceDefinition where- parseJSON- = withObject- "RemarketingAudienceStateBasedAudienceDefinition"- (\ o ->- RemarketingAudienceStateBasedAudienceDefinition' <$>- (o .:? "excludeConditions") <*>- (o .:? "includeConditions"))--instance ToJSON- RemarketingAudienceStateBasedAudienceDefinition where- toJSON- RemarketingAudienceStateBasedAudienceDefinition'{..}- = object- (catMaybes- [("excludeConditions" .=) <$>- _rasbadExcludeConditions,- ("includeConditions" .=) <$>- _rasbadIncludeConditions])------- /See:/ 'accountTreeResponseAccountSettings' smart constructor.-data AccountTreeResponseAccountSettings = AccountTreeResponseAccountSettings'- { _aShareWithSpeciaLists :: !(Maybe Bool)- , _aShareWithSupport :: !(Maybe Bool)- , _aShareAnonymouslyWithOthers :: !(Maybe Bool)- , _aShareWithGoogleProducts :: !(Maybe Bool)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'AccountTreeResponseAccountSettings' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'aShareWithSpeciaLists'------ * 'aShareWithSupport'------ * 'aShareAnonymouslyWithOthers'------ * 'aShareWithGoogleProducts'-accountTreeResponseAccountSettings- :: AccountTreeResponseAccountSettings-accountTreeResponseAccountSettings =- AccountTreeResponseAccountSettings'- { _aShareWithSpeciaLists = Nothing- , _aShareWithSupport = Nothing- , _aShareAnonymouslyWithOthers = Nothing- , _aShareWithGoogleProducts = Nothing- }--aShareWithSpeciaLists :: Lens' AccountTreeResponseAccountSettings (Maybe Bool)-aShareWithSpeciaLists- = lens _aShareWithSpeciaLists- (\ s a -> s{_aShareWithSpeciaLists = a})--aShareWithSupport :: Lens' AccountTreeResponseAccountSettings (Maybe Bool)-aShareWithSupport- = lens _aShareWithSupport- (\ s a -> s{_aShareWithSupport = a})--aShareAnonymouslyWithOthers :: Lens' AccountTreeResponseAccountSettings (Maybe Bool)-aShareAnonymouslyWithOthers- = lens _aShareAnonymouslyWithOthers- (\ s a -> s{_aShareAnonymouslyWithOthers = a})--aShareWithGoogleProducts :: Lens' AccountTreeResponseAccountSettings (Maybe Bool)-aShareWithGoogleProducts- = lens _aShareWithGoogleProducts- (\ s a -> s{_aShareWithGoogleProducts = a})--instance FromJSON AccountTreeResponseAccountSettings- where- parseJSON- = withObject "AccountTreeResponseAccountSettings"- (\ o ->- AccountTreeResponseAccountSettings' <$>- (o .:? "shareWithSpecialists") <*>- (o .:? "shareWithSupport")- <*> (o .:? "shareAnonymouslyWithOthers")- <*> (o .:? "shareWithGoogleProducts"))--instance ToJSON AccountTreeResponseAccountSettings- where- toJSON AccountTreeResponseAccountSettings'{..}- = object- (catMaybes- [("shareWithSpecialists" .=) <$>- _aShareWithSpeciaLists,- ("shareWithSupport" .=) <$> _aShareWithSupport,- ("shareAnonymouslyWithOthers" .=) <$>- _aShareAnonymouslyWithOthers,- ("shareWithGoogleProducts" .=) <$>- _aShareWithGoogleProducts])---- | Details for the goal of the type URL_DESTINATION.------ /See:/ 'goalURLDestinationDetails' smart constructor.-data GoalURLDestinationDetails = GoalURLDestinationDetails'- { _guddURL :: !(Maybe Text)- , _guddMatchType :: !(Maybe Text)- , _guddSteps :: !(Maybe [GoalURLDestinationDetailsStepsItem])- , _guddCaseSensitive :: !(Maybe Bool)- , _guddFirstStepRequired :: !(Maybe Bool)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoalURLDestinationDetails' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'guddURL'------ * 'guddMatchType'------ * 'guddSteps'------ * 'guddCaseSensitive'------ * 'guddFirstStepRequired'-goalURLDestinationDetails- :: GoalURLDestinationDetails-goalURLDestinationDetails =- GoalURLDestinationDetails'- { _guddURL = Nothing- , _guddMatchType = Nothing- , _guddSteps = Nothing- , _guddCaseSensitive = Nothing- , _guddFirstStepRequired = Nothing- }---- | URL for this goal.-guddURL :: Lens' GoalURLDestinationDetails (Maybe Text)-guddURL = lens _guddURL (\ s a -> s{_guddURL = a})---- | Match type for the goal URL. Possible values are HEAD, EXACT, or REGEX.-guddMatchType :: Lens' GoalURLDestinationDetails (Maybe Text)-guddMatchType- = lens _guddMatchType- (\ s a -> s{_guddMatchType = a})---- | List of steps configured for this goal funnel.-guddSteps :: Lens' GoalURLDestinationDetails [GoalURLDestinationDetailsStepsItem]-guddSteps- = lens _guddSteps (\ s a -> s{_guddSteps = a}) .- _Default- . _Coerce---- | Determines if the goal URL must exactly match the capitalization of--- visited URLs.-guddCaseSensitive :: Lens' GoalURLDestinationDetails (Maybe Bool)-guddCaseSensitive- = lens _guddCaseSensitive- (\ s a -> s{_guddCaseSensitive = a})---- | Determines if the first step in this goal is required.-guddFirstStepRequired :: Lens' GoalURLDestinationDetails (Maybe Bool)-guddFirstStepRequired- = lens _guddFirstStepRequired- (\ s a -> s{_guddFirstStepRequired = a})--instance FromJSON GoalURLDestinationDetails where- parseJSON- = withObject "GoalURLDestinationDetails"- (\ o ->- GoalURLDestinationDetails' <$>- (o .:? "url") <*> (o .:? "matchType") <*>- (o .:? "steps" .!= mempty)- <*> (o .:? "caseSensitive")- <*> (o .:? "firstStepRequired"))--instance ToJSON GoalURLDestinationDetails where- toJSON GoalURLDestinationDetails'{..}- = object- (catMaybes- [("url" .=) <$> _guddURL,- ("matchType" .=) <$> _guddMatchType,- ("steps" .=) <$> _guddSteps,- ("caseSensitive" .=) <$> _guddCaseSensitive,- ("firstStepRequired" .=) <$> _guddFirstStepRequired])---- | A profile filter link collection lists profile filter links between--- profiles and filters. Each resource in the collection corresponds to a--- profile filter link.------ /See:/ 'proFileFilterLinks' smart constructor.-data ProFileFilterLinks = ProFileFilterLinks'- { _pfflNextLink :: !(Maybe Text)- , _pfflItemsPerPage :: !(Maybe (Textual Int32))- , _pfflKind :: !Text- , _pfflUsername :: !(Maybe Text)- , _pfflItems :: !(Maybe [ProFileFilterLink])- , _pfflTotalResults :: !(Maybe (Textual Int32))- , _pfflStartIndex :: !(Maybe (Textual Int32))- , _pfflPreviousLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ProFileFilterLinks' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pfflNextLink'------ * 'pfflItemsPerPage'------ * 'pfflKind'------ * 'pfflUsername'------ * 'pfflItems'------ * 'pfflTotalResults'------ * 'pfflStartIndex'------ * 'pfflPreviousLink'-proFileFilterLinks- :: ProFileFilterLinks-proFileFilterLinks =- ProFileFilterLinks'- { _pfflNextLink = Nothing- , _pfflItemsPerPage = Nothing- , _pfflKind = "analytics#profileFilterLinks"- , _pfflUsername = Nothing- , _pfflItems = Nothing- , _pfflTotalResults = Nothing- , _pfflStartIndex = Nothing- , _pfflPreviousLink = Nothing- }---- | Link to next page for this profile filter link collection.-pfflNextLink :: Lens' ProFileFilterLinks (Maybe Text)-pfflNextLink- = lens _pfflNextLink (\ s a -> s{_pfflNextLink = a})---- | The maximum number of resources the response can contain, regardless of--- the actual number of resources returned. Its value ranges from 1 to--- 1,000 with a value of 1000 by default, or otherwise specified by the--- max-results query parameter.-pfflItemsPerPage :: Lens' ProFileFilterLinks (Maybe Int32)-pfflItemsPerPage- = lens _pfflItemsPerPage- (\ s a -> s{_pfflItemsPerPage = a})- . mapping _Coerce---- | Collection type.-pfflKind :: Lens' ProFileFilterLinks Text-pfflKind = lens _pfflKind (\ s a -> s{_pfflKind = a})---- | Email ID of the authenticated user-pfflUsername :: Lens' ProFileFilterLinks (Maybe Text)-pfflUsername- = lens _pfflUsername (\ s a -> s{_pfflUsername = a})---- | A list of profile filter links.-pfflItems :: Lens' ProFileFilterLinks [ProFileFilterLink]-pfflItems- = lens _pfflItems (\ s a -> s{_pfflItems = a}) .- _Default- . _Coerce---- | The total number of results for the query, regardless of the number of--- results in the response.-pfflTotalResults :: Lens' ProFileFilterLinks (Maybe Int32)-pfflTotalResults- = lens _pfflTotalResults- (\ s a -> s{_pfflTotalResults = a})- . mapping _Coerce---- | The starting index of the resources, which is 1 by default or otherwise--- specified by the start-index query parameter.-pfflStartIndex :: Lens' ProFileFilterLinks (Maybe Int32)-pfflStartIndex- = lens _pfflStartIndex- (\ s a -> s{_pfflStartIndex = a})- . mapping _Coerce---- | Link to previous page for this profile filter link collection.-pfflPreviousLink :: Lens' ProFileFilterLinks (Maybe Text)-pfflPreviousLink- = lens _pfflPreviousLink- (\ s a -> s{_pfflPreviousLink = a})--instance FromJSON ProFileFilterLinks where- parseJSON- = withObject "ProFileFilterLinks"- (\ o ->- ProFileFilterLinks' <$>- (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>- (o .:? "kind" .!= "analytics#profileFilterLinks")- <*> (o .:? "username")- <*> (o .:? "items" .!= mempty)- <*> (o .:? "totalResults")- <*> (o .:? "startIndex")- <*> (o .:? "previousLink"))--instance ToJSON ProFileFilterLinks where- toJSON ProFileFilterLinks'{..}- = object- (catMaybes- [("nextLink" .=) <$> _pfflNextLink,- ("itemsPerPage" .=) <$> _pfflItemsPerPage,- Just ("kind" .= _pfflKind),- ("username" .=) <$> _pfflUsername,- ("items" .=) <$> _pfflItems,- ("totalResults" .=) <$> _pfflTotalResults,- ("startIndex" .=) <$> _pfflStartIndex,- ("previousLink" .=) <$> _pfflPreviousLink])---- | Parent link for this web property. Points to the account to which this--- web property belongs.------ /See:/ 'webPropertyParentLink' smart constructor.-data WebPropertyParentLink = WebPropertyParentLink'- { _wpplHref :: !(Maybe Text)- , _wpplType :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'WebPropertyParentLink' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'wpplHref'------ * 'wpplType'-webPropertyParentLink- :: WebPropertyParentLink-webPropertyParentLink =- WebPropertyParentLink'- { _wpplHref = Nothing- , _wpplType = "analytics#account"- }---- | Link to the account for this web property.-wpplHref :: Lens' WebPropertyParentLink (Maybe Text)-wpplHref = lens _wpplHref (\ s a -> s{_wpplHref = a})---- | Type of the parent link. Its value is \"analytics#account\".-wpplType :: Lens' WebPropertyParentLink Text-wpplType = lens _wpplType (\ s a -> s{_wpplType = a})--instance FromJSON WebPropertyParentLink where- parseJSON- = withObject "WebPropertyParentLink"- (\ o ->- WebPropertyParentLink' <$>- (o .:? "href") <*>- (o .:? "type" .!= "analytics#account"))--instance ToJSON WebPropertyParentLink where- toJSON WebPropertyParentLink'{..}- = object- (catMaybes- [("href" .=) <$> _wpplHref,- Just ("type" .= _wpplType)])---- | Information for the view (profile), for which the Analytics data was--- requested.------ /See:/ 'gaDataProFileInfo' smart constructor.-data GaDataProFileInfo = GaDataProFileInfo'- { _gdpfiWebPropertyId :: !(Maybe Text)- , _gdpfiProFileId :: !(Maybe Text)- , _gdpfiProFileName :: !(Maybe Text)- , _gdpfiAccountId :: !(Maybe Text)- , _gdpfiInternalWebPropertyId :: !(Maybe Text)- , _gdpfiTableId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GaDataProFileInfo' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gdpfiWebPropertyId'------ * 'gdpfiProFileId'------ * 'gdpfiProFileName'------ * 'gdpfiAccountId'------ * 'gdpfiInternalWebPropertyId'------ * 'gdpfiTableId'-gaDataProFileInfo- :: GaDataProFileInfo-gaDataProFileInfo =- GaDataProFileInfo'- { _gdpfiWebPropertyId = Nothing- , _gdpfiProFileId = Nothing- , _gdpfiProFileName = Nothing- , _gdpfiAccountId = Nothing- , _gdpfiInternalWebPropertyId = Nothing- , _gdpfiTableId = Nothing- }---- | Web Property ID to which this view (profile) belongs.-gdpfiWebPropertyId :: Lens' GaDataProFileInfo (Maybe Text)-gdpfiWebPropertyId- = lens _gdpfiWebPropertyId- (\ s a -> s{_gdpfiWebPropertyId = a})---- | View (Profile) ID.-gdpfiProFileId :: Lens' GaDataProFileInfo (Maybe Text)-gdpfiProFileId- = lens _gdpfiProFileId- (\ s a -> s{_gdpfiProFileId = a})---- | View (Profile) name.-gdpfiProFileName :: Lens' GaDataProFileInfo (Maybe Text)-gdpfiProFileName- = lens _gdpfiProFileName- (\ s a -> s{_gdpfiProFileName = a})---- | Account ID to which this view (profile) belongs.-gdpfiAccountId :: Lens' GaDataProFileInfo (Maybe Text)-gdpfiAccountId- = lens _gdpfiAccountId- (\ s a -> s{_gdpfiAccountId = a})---- | Internal ID for the web property to which this view (profile) belongs.-gdpfiInternalWebPropertyId :: Lens' GaDataProFileInfo (Maybe Text)-gdpfiInternalWebPropertyId- = lens _gdpfiInternalWebPropertyId- (\ s a -> s{_gdpfiInternalWebPropertyId = a})---- | Table ID for view (profile).-gdpfiTableId :: Lens' GaDataProFileInfo (Maybe Text)-gdpfiTableId- = lens _gdpfiTableId (\ s a -> s{_gdpfiTableId = a})--instance FromJSON GaDataProFileInfo where- parseJSON- = withObject "GaDataProFileInfo"- (\ o ->- GaDataProFileInfo' <$>- (o .:? "webPropertyId") <*> (o .:? "profileId") <*>- (o .:? "profileName")- <*> (o .:? "accountId")- <*> (o .:? "internalWebPropertyId")- <*> (o .:? "tableId"))--instance ToJSON GaDataProFileInfo where- toJSON GaDataProFileInfo'{..}- = object- (catMaybes- [("webPropertyId" .=) <$> _gdpfiWebPropertyId,- ("profileId" .=) <$> _gdpfiProFileId,- ("profileName" .=) <$> _gdpfiProFileName,- ("accountId" .=) <$> _gdpfiAccountId,- ("internalWebPropertyId" .=) <$>- _gdpfiInternalWebPropertyId,- ("tableId" .=) <$> _gdpfiTableId])---- | Metadata returned for an upload operation.------ /See:/ 'upload' smart constructor.-data Upload = Upload'- { _uuStatus :: !(Maybe Text)- , _uuKind :: !Text- , _uuCustomDataSourceId :: !(Maybe Text)- , _uuUploadTime :: !(Maybe DateTime')- , _uuAccountId :: !(Maybe (Textual Int64))- , _uuId :: !(Maybe Text)- , _uuErrors :: !(Maybe [Text])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Upload' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'uuStatus'------ * 'uuKind'------ * 'uuCustomDataSourceId'------ * 'uuUploadTime'------ * 'uuAccountId'------ * 'uuId'------ * 'uuErrors'-upload- :: Upload-upload =- Upload'- { _uuStatus = Nothing- , _uuKind = "analytics#upload"- , _uuCustomDataSourceId = Nothing- , _uuUploadTime = Nothing- , _uuAccountId = Nothing- , _uuId = Nothing- , _uuErrors = Nothing- }---- | Upload status. Possible values: PENDING, COMPLETED, FAILED, DELETING,--- DELETED.-uuStatus :: Lens' Upload (Maybe Text)-uuStatus = lens _uuStatus (\ s a -> s{_uuStatus = a})---- | Resource type for Analytics upload.-uuKind :: Lens' Upload Text-uuKind = lens _uuKind (\ s a -> s{_uuKind = a})---- | Custom data source Id to which this data import belongs.-uuCustomDataSourceId :: Lens' Upload (Maybe Text)-uuCustomDataSourceId- = lens _uuCustomDataSourceId- (\ s a -> s{_uuCustomDataSourceId = a})---- | Time this file is uploaded.-uuUploadTime :: Lens' Upload (Maybe UTCTime)-uuUploadTime- = lens _uuUploadTime (\ s a -> s{_uuUploadTime = a})- . mapping _DateTime---- | Account Id to which this upload belongs.-uuAccountId :: Lens' Upload (Maybe Int64)-uuAccountId- = lens _uuAccountId (\ s a -> s{_uuAccountId = a}) .- mapping _Coerce---- | A unique ID for this upload.-uuId :: Lens' Upload (Maybe Text)-uuId = lens _uuId (\ s a -> s{_uuId = a})---- | Data import errors collection.-uuErrors :: Lens' Upload [Text]-uuErrors- = lens _uuErrors (\ s a -> s{_uuErrors = a}) .- _Default- . _Coerce--instance FromJSON Upload where- parseJSON- = withObject "Upload"- (\ o ->- Upload' <$>- (o .:? "status") <*>- (o .:? "kind" .!= "analytics#upload")- <*> (o .:? "customDataSourceId")- <*> (o .:? "uploadTime")- <*> (o .:? "accountId")- <*> (o .:? "id")- <*> (o .:? "errors" .!= mempty))--instance ToJSON Upload where- toJSON Upload'{..}- = object- (catMaybes- [("status" .=) <$> _uuStatus,- Just ("kind" .= _uuKind),- ("customDataSourceId" .=) <$> _uuCustomDataSourceId,- ("uploadTime" .=) <$> _uuUploadTime,- ("accountId" .=) <$> _uuAccountId,- ("id" .=) <$> _uuId, ("errors" .=) <$> _uuErrors])---- | JSON template for Analytics Custom Dimension.------ /See:/ 'customDimension' smart constructor.-data CustomDimension = CustomDimension'- { _cddParentLink :: !(Maybe CustomDimensionParentLink)- , _cddWebPropertyId :: !(Maybe Text)- , _cddKind :: !Text- , _cddCreated :: !(Maybe DateTime')- , _cddActive :: !(Maybe Bool)- , _cddSelfLink :: !(Maybe Text)- , _cddAccountId :: !(Maybe Text)- , _cddName :: !(Maybe Text)- , _cddScope :: !(Maybe Text)- , _cddId :: !(Maybe Text)- , _cddUpdated :: !(Maybe DateTime')- , _cddIndex :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'CustomDimension' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cddParentLink'------ * 'cddWebPropertyId'------ * 'cddKind'------ * 'cddCreated'------ * 'cddActive'------ * 'cddSelfLink'------ * 'cddAccountId'------ * 'cddName'------ * 'cddScope'------ * 'cddId'------ * 'cddUpdated'------ * 'cddIndex'-customDimension- :: CustomDimension-customDimension =- CustomDimension'- { _cddParentLink = Nothing- , _cddWebPropertyId = Nothing- , _cddKind = "analytics#customDimension"- , _cddCreated = Nothing- , _cddActive = Nothing- , _cddSelfLink = Nothing- , _cddAccountId = Nothing- , _cddName = Nothing- , _cddScope = Nothing- , _cddId = Nothing- , _cddUpdated = Nothing- , _cddIndex = Nothing- }---- | Parent link for the custom dimension. Points to the property to which--- the custom dimension belongs.-cddParentLink :: Lens' CustomDimension (Maybe CustomDimensionParentLink)-cddParentLink- = lens _cddParentLink- (\ s a -> s{_cddParentLink = a})---- | Property ID.-cddWebPropertyId :: Lens' CustomDimension (Maybe Text)-cddWebPropertyId- = lens _cddWebPropertyId- (\ s a -> s{_cddWebPropertyId = a})---- | Kind value for a custom dimension. Set to \"analytics#customDimension\".--- It is a read-only field.-cddKind :: Lens' CustomDimension Text-cddKind = lens _cddKind (\ s a -> s{_cddKind = a})---- | Time the custom dimension was created.-cddCreated :: Lens' CustomDimension (Maybe UTCTime)-cddCreated- = lens _cddCreated (\ s a -> s{_cddCreated = a}) .- mapping _DateTime---- | Boolean indicating whether the custom dimension is active.-cddActive :: Lens' CustomDimension (Maybe Bool)-cddActive- = lens _cddActive (\ s a -> s{_cddActive = a})---- | Link for the custom dimension-cddSelfLink :: Lens' CustomDimension (Maybe Text)-cddSelfLink- = lens _cddSelfLink (\ s a -> s{_cddSelfLink = a})---- | Account ID.-cddAccountId :: Lens' CustomDimension (Maybe Text)-cddAccountId- = lens _cddAccountId (\ s a -> s{_cddAccountId = a})---- | Name of the custom dimension.-cddName :: Lens' CustomDimension (Maybe Text)-cddName = lens _cddName (\ s a -> s{_cddName = a})---- | Scope of the custom dimension: HIT, SESSION, USER or PRODUCT.-cddScope :: Lens' CustomDimension (Maybe Text)-cddScope = lens _cddScope (\ s a -> s{_cddScope = a})---- | Custom dimension ID.-cddId :: Lens' CustomDimension (Maybe Text)-cddId = lens _cddId (\ s a -> s{_cddId = a})---- | Time the custom dimension was last modified.-cddUpdated :: Lens' CustomDimension (Maybe UTCTime)-cddUpdated- = lens _cddUpdated (\ s a -> s{_cddUpdated = a}) .- mapping _DateTime---- | Index of the custom dimension.-cddIndex :: Lens' CustomDimension (Maybe Int32)-cddIndex- = lens _cddIndex (\ s a -> s{_cddIndex = a}) .- mapping _Coerce--instance FromJSON CustomDimension where- parseJSON- = withObject "CustomDimension"- (\ o ->- CustomDimension' <$>- (o .:? "parentLink") <*> (o .:? "webPropertyId") <*>- (o .:? "kind" .!= "analytics#customDimension")- <*> (o .:? "created")- <*> (o .:? "active")- <*> (o .:? "selfLink")- <*> (o .:? "accountId")- <*> (o .:? "name")- <*> (o .:? "scope")- <*> (o .:? "id")- <*> (o .:? "updated")- <*> (o .:? "index"))--instance ToJSON CustomDimension where- toJSON CustomDimension'{..}- = object- (catMaybes- [("parentLink" .=) <$> _cddParentLink,- ("webPropertyId" .=) <$> _cddWebPropertyId,- Just ("kind" .= _cddKind),- ("created" .=) <$> _cddCreated,- ("active" .=) <$> _cddActive,- ("selfLink" .=) <$> _cddSelfLink,- ("accountId" .=) <$> _cddAccountId,- ("name" .=) <$> _cddName, ("scope" .=) <$> _cddScope,- ("id" .=) <$> _cddId, ("updated" .=) <$> _cddUpdated,- ("index" .=) <$> _cddIndex])---- | JSON template for an Analytics segment.------ /See:/ 'segment' smart constructor.-data Segment = Segment'- { _segDefinition :: !(Maybe Text)- , _segKind :: !Text- , _segCreated :: !(Maybe DateTime')- , _segSelfLink :: !(Maybe Text)- , _segName :: !(Maybe Text)- , _segId :: !(Maybe Text)- , _segUpdated :: !(Maybe DateTime')- , _segType :: !(Maybe Text)- , _segSegmentId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Segment' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'segDefinition'------ * 'segKind'------ * 'segCreated'------ * 'segSelfLink'------ * 'segName'------ * 'segId'------ * 'segUpdated'------ * 'segType'------ * 'segSegmentId'-segment- :: Segment-segment =- Segment'- { _segDefinition = Nothing- , _segKind = "analytics#segment"- , _segCreated = Nothing- , _segSelfLink = Nothing- , _segName = Nothing- , _segId = Nothing- , _segUpdated = Nothing- , _segType = Nothing- , _segSegmentId = Nothing- }---- | Segment definition.-segDefinition :: Lens' Segment (Maybe Text)-segDefinition- = lens _segDefinition- (\ s a -> s{_segDefinition = a})---- | Resource type for Analytics segment.-segKind :: Lens' Segment Text-segKind = lens _segKind (\ s a -> s{_segKind = a})---- | Time the segment was created.-segCreated :: Lens' Segment (Maybe UTCTime)-segCreated- = lens _segCreated (\ s a -> s{_segCreated = a}) .- mapping _DateTime---- | Link for this segment.-segSelfLink :: Lens' Segment (Maybe Text)-segSelfLink- = lens _segSelfLink (\ s a -> s{_segSelfLink = a})---- | Segment name.-segName :: Lens' Segment (Maybe Text)-segName = lens _segName (\ s a -> s{_segName = a})---- | Segment ID.-segId :: Lens' Segment (Maybe Text)-segId = lens _segId (\ s a -> s{_segId = a})---- | Time the segment was last modified.-segUpdated :: Lens' Segment (Maybe UTCTime)-segUpdated- = lens _segUpdated (\ s a -> s{_segUpdated = a}) .- mapping _DateTime---- | Type for a segment. Possible values are \"BUILT_IN\" or \"CUSTOM\".-segType :: Lens' Segment (Maybe Text)-segType = lens _segType (\ s a -> s{_segType = a})---- | Segment ID. Can be used with the \'segment\' parameter in Core Reporting--- API.-segSegmentId :: Lens' Segment (Maybe Text)-segSegmentId- = lens _segSegmentId (\ s a -> s{_segSegmentId = a})--instance FromJSON Segment where- parseJSON- = withObject "Segment"- (\ o ->- Segment' <$>- (o .:? "definition") <*>- (o .:? "kind" .!= "analytics#segment")- <*> (o .:? "created")- <*> (o .:? "selfLink")- <*> (o .:? "name")- <*> (o .:? "id")- <*> (o .:? "updated")- <*> (o .:? "type")- <*> (o .:? "segmentId"))--instance ToJSON Segment where- toJSON Segment'{..}- = object- (catMaybes- [("definition" .=) <$> _segDefinition,- Just ("kind" .= _segKind),- ("created" .=) <$> _segCreated,- ("selfLink" .=) <$> _segSelfLink,- ("name" .=) <$> _segName, ("id" .=) <$> _segId,- ("updated" .=) <$> _segUpdated,- ("type" .=) <$> _segType,- ("segmentId" .=) <$> _segSegmentId])---- | Child link for an account entry. Points to the list of web properties--- for this account.------ /See:/ 'accountChildLink' smart constructor.-data AccountChildLink = AccountChildLink'- { _aclHref :: !(Maybe Text)- , _aclType :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'AccountChildLink' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'aclHref'------ * 'aclType'-accountChildLink- :: AccountChildLink-accountChildLink =- AccountChildLink'- { _aclHref = Nothing- , _aclType = "analytics#webproperties"- }---- | Link to the list of web properties for this account.-aclHref :: Lens' AccountChildLink (Maybe Text)-aclHref = lens _aclHref (\ s a -> s{_aclHref = a})---- | Type of the child link. Its value is \"analytics#webproperties\".-aclType :: Lens' AccountChildLink Text-aclType = lens _aclType (\ s a -> s{_aclType = a})--instance FromJSON AccountChildLink where- parseJSON- = withObject "AccountChildLink"- (\ o ->- AccountChildLink' <$>- (o .:? "href") <*>- (o .:? "type" .!= "analytics#webproperties"))--instance ToJSON AccountChildLink where- toJSON AccountChildLink'{..}- = object- (catMaybes- [("href" .=) <$> _aclHref,- Just ("type" .= _aclType)])---- | JSON template for an Analytics profile filter link.------ /See:/ 'proFileFilterLink' smart constructor.-data ProFileFilterLink = ProFileFilterLink'- { _proProFileRef :: !(Maybe ProFileRef)- , _proKind :: !Text- , _proFilterRef :: !(Maybe FilterRef)- , _proSelfLink :: !(Maybe Text)- , _proId :: !(Maybe Text)- , _proRank :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ProFileFilterLink' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'proProFileRef'------ * 'proKind'------ * 'proFilterRef'------ * 'proSelfLink'------ * 'proId'------ * 'proRank'-proFileFilterLink- :: ProFileFilterLink-proFileFilterLink =- ProFileFilterLink'- { _proProFileRef = Nothing- , _proKind = "analytics#profileFilterLink"- , _proFilterRef = Nothing- , _proSelfLink = Nothing- , _proId = Nothing- , _proRank = Nothing- }---- | View (Profile) for this link.-proProFileRef :: Lens' ProFileFilterLink (Maybe ProFileRef)-proProFileRef- = lens _proProFileRef- (\ s a -> s{_proProFileRef = a})---- | Resource type for Analytics filter.-proKind :: Lens' ProFileFilterLink Text-proKind = lens _proKind (\ s a -> s{_proKind = a})---- | Filter for this link.-proFilterRef :: Lens' ProFileFilterLink (Maybe FilterRef)-proFilterRef- = lens _proFilterRef (\ s a -> s{_proFilterRef = a})---- | Link for this profile filter link.-proSelfLink :: Lens' ProFileFilterLink (Maybe Text)-proSelfLink- = lens _proSelfLink (\ s a -> s{_proSelfLink = a})---- | Profile filter link ID.-proId :: Lens' ProFileFilterLink (Maybe Text)-proId = lens _proId (\ s a -> s{_proId = a})---- | The rank of this profile filter link relative to the other filters--- linked to the same profile. For readonly (i.e., list and get)--- operations, the rank always starts at 1. For write (i.e., create,--- update, or delete) operations, you may specify a value between 0 and 255--- inclusively, [0, 255]. In order to insert a link at the end of the list,--- either don\'t specify a rank or set a rank to a number greater than the--- largest rank in the list. In order to insert a link to the beginning of--- the list specify a rank that is less than or equal to 1. The new link--- will move all existing filters with the same or lower rank down the--- list. After the link is inserted\/updated\/deleted all profile filter--- links will be renumbered starting at 1.-proRank :: Lens' ProFileFilterLink (Maybe Int32)-proRank- = lens _proRank (\ s a -> s{_proRank = a}) .- mapping _Coerce--instance FromJSON ProFileFilterLink where- parseJSON- = withObject "ProFileFilterLink"- (\ o ->- ProFileFilterLink' <$>- (o .:? "profileRef") <*>- (o .:? "kind" .!= "analytics#profileFilterLink")- <*> (o .:? "filterRef")- <*> (o .:? "selfLink")- <*> (o .:? "id")- <*> (o .:? "rank"))--instance ToJSON ProFileFilterLink where- toJSON ProFileFilterLink'{..}- = object- (catMaybes- [("profileRef" .=) <$> _proProFileRef,- Just ("kind" .= _proKind),- ("filterRef" .=) <$> _proFilterRef,- ("selfLink" .=) <$> _proSelfLink,- ("id" .=) <$> _proId, ("rank" .=) <$> _proRank])---- | Parent link for the custom metric. Points to the property to which the--- custom metric belongs.------ /See:/ 'customMetricParentLink' smart constructor.-data CustomMetricParentLink = CustomMetricParentLink'- { _cmplHref :: !(Maybe Text)- , _cmplType :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'CustomMetricParentLink' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cmplHref'------ * 'cmplType'-customMetricParentLink- :: CustomMetricParentLink-customMetricParentLink =- CustomMetricParentLink'- { _cmplHref = Nothing- , _cmplType = "analytics#webproperty"- }---- | Link to the property to which the custom metric belongs.-cmplHref :: Lens' CustomMetricParentLink (Maybe Text)-cmplHref = lens _cmplHref (\ s a -> s{_cmplHref = a})---- | Type of the parent link. Set to \"analytics#webproperty\".-cmplType :: Lens' CustomMetricParentLink Text-cmplType = lens _cmplType (\ s a -> s{_cmplType = a})--instance FromJSON CustomMetricParentLink where- parseJSON- = withObject "CustomMetricParentLink"- (\ o ->- CustomMetricParentLink' <$>- (o .:? "href") <*>- (o .:? "type" .!= "analytics#webproperty"))--instance ToJSON CustomMetricParentLink where- toJSON CustomMetricParentLink'{..}- = object- (catMaybes- [("href" .=) <$> _cmplHref,- Just ("type" .= _cmplType)])---- | JSON template for a metadata column.------ /See:/ 'column' smart constructor.-data Column = Column'- { _ccKind :: !Text- , _ccAttributes :: !(Maybe ColumnAttributes)- , _ccId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Column' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ccKind'------ * 'ccAttributes'------ * 'ccId'-column- :: Column-column =- Column'- { _ccKind = "analytics#column"- , _ccAttributes = Nothing- , _ccId = Nothing- }---- | Resource type for Analytics column.-ccKind :: Lens' Column Text-ccKind = lens _ccKind (\ s a -> s{_ccKind = a})---- | Map of attribute name and value for this column.-ccAttributes :: Lens' Column (Maybe ColumnAttributes)-ccAttributes- = lens _ccAttributes (\ s a -> s{_ccAttributes = a})---- | Column id.-ccId :: Lens' Column (Maybe Text)-ccId = lens _ccId (\ s a -> s{_ccId = a})--instance FromJSON Column where- parseJSON- = withObject "Column"- (\ o ->- Column' <$>- (o .:? "kind" .!= "analytics#column") <*>- (o .:? "attributes")- <*> (o .:? "id"))--instance ToJSON Column where- toJSON Column'{..}- = object- (catMaybes- [Just ("kind" .= _ccKind),- ("attributes" .=) <$> _ccAttributes,- ("id" .=) <$> _ccId])---- | The simple audience definition that will cause a user to be added to an--- audience.------ /See:/ 'remarketingAudienceAudienceDefinition' smart constructor.-newtype RemarketingAudienceAudienceDefinition = RemarketingAudienceAudienceDefinition'- { _raadIncludeConditions :: Maybe IncludeConditions- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'RemarketingAudienceAudienceDefinition' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'raadIncludeConditions'-remarketingAudienceAudienceDefinition- :: RemarketingAudienceAudienceDefinition-remarketingAudienceAudienceDefinition =- RemarketingAudienceAudienceDefinition'- { _raadIncludeConditions = Nothing- }---- | Defines the conditions to include users to the audience.-raadIncludeConditions :: Lens' RemarketingAudienceAudienceDefinition (Maybe IncludeConditions)-raadIncludeConditions- = lens _raadIncludeConditions- (\ s a -> s{_raadIncludeConditions = a})--instance FromJSON- RemarketingAudienceAudienceDefinition where- parseJSON- = withObject "RemarketingAudienceAudienceDefinition"- (\ o ->- RemarketingAudienceAudienceDefinition' <$>- (o .:? "includeConditions"))--instance ToJSON RemarketingAudienceAudienceDefinition- where- toJSON RemarketingAudienceAudienceDefinition'{..}- = object- (catMaybes- [("includeConditions" .=) <$>- _raadIncludeConditions])------- /See:/ 'gaDataDataTableColsItem' smart constructor.-data GaDataDataTableColsItem = GaDataDataTableColsItem'- { _gddtciId :: !(Maybe Text)- , _gddtciType :: !(Maybe Text)- , _gddtciLabel :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GaDataDataTableColsItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gddtciId'------ * 'gddtciType'------ * 'gddtciLabel'-gaDataDataTableColsItem- :: GaDataDataTableColsItem-gaDataDataTableColsItem =- GaDataDataTableColsItem'- { _gddtciId = Nothing- , _gddtciType = Nothing- , _gddtciLabel = Nothing- }--gddtciId :: Lens' GaDataDataTableColsItem (Maybe Text)-gddtciId = lens _gddtciId (\ s a -> s{_gddtciId = a})--gddtciType :: Lens' GaDataDataTableColsItem (Maybe Text)-gddtciType- = lens _gddtciType (\ s a -> s{_gddtciType = a})--gddtciLabel :: Lens' GaDataDataTableColsItem (Maybe Text)-gddtciLabel- = lens _gddtciLabel (\ s a -> s{_gddtciLabel = a})--instance FromJSON GaDataDataTableColsItem where- parseJSON- = withObject "GaDataDataTableColsItem"- (\ o ->- GaDataDataTableColsItem' <$>- (o .:? "id") <*> (o .:? "type") <*> (o .:? "label"))--instance ToJSON GaDataDataTableColsItem where- toJSON GaDataDataTableColsItem'{..}- = object- (catMaybes- [("id" .=) <$> _gddtciId,- ("type" .=) <$> _gddtciType,- ("label" .=) <$> _gddtciLabel])------- /See:/ 'experimentVariationsItem' smart constructor.-data ExperimentVariationsItem = ExperimentVariationsItem'- { _eviStatus :: !(Maybe Text)- , _eviWeight :: !(Maybe (Textual Double))- , _eviURL :: !(Maybe Text)- , _eviWon :: !(Maybe Bool)- , _eviName :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ExperimentVariationsItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'eviStatus'------ * 'eviWeight'------ * 'eviURL'------ * 'eviWon'------ * 'eviName'-experimentVariationsItem- :: ExperimentVariationsItem-experimentVariationsItem =- ExperimentVariationsItem'- { _eviStatus = Nothing- , _eviWeight = Nothing- , _eviURL = Nothing- , _eviWon = Nothing- , _eviName = Nothing- }---- | Status of the variation. Possible values: \"ACTIVE\", \"INACTIVE\".--- INACTIVE variations are not served. This field may not be changed for an--- experiment whose status is ENDED.-eviStatus :: Lens' ExperimentVariationsItem (Maybe Text)-eviStatus- = lens _eviStatus (\ s a -> s{_eviStatus = a})---- | Weight that this variation should receive. Only present if the--- experiment is running. This field is read-only.-eviWeight :: Lens' ExperimentVariationsItem (Maybe Double)-eviWeight- = lens _eviWeight (\ s a -> s{_eviWeight = a}) .- mapping _Coerce---- | The URL of the variation. This field may not be changed for an--- experiment whose status is RUNNING or ENDED.-eviURL :: Lens' ExperimentVariationsItem (Maybe Text)-eviURL = lens _eviURL (\ s a -> s{_eviURL = a})---- | True if the experiment has ended and this variation performed--- (statistically) significantly better than the original. This field is--- read-only.-eviWon :: Lens' ExperimentVariationsItem (Maybe Bool)-eviWon = lens _eviWon (\ s a -> s{_eviWon = a})---- | The name of the variation. This field is required when creating an--- experiment. This field may not be changed for an experiment whose status--- is ENDED.-eviName :: Lens' ExperimentVariationsItem (Maybe Text)-eviName = lens _eviName (\ s a -> s{_eviName = a})--instance FromJSON ExperimentVariationsItem where- parseJSON- = withObject "ExperimentVariationsItem"- (\ o ->- ExperimentVariationsItem' <$>- (o .:? "status") <*> (o .:? "weight") <*>- (o .:? "url")- <*> (o .:? "won")- <*> (o .:? "name"))--instance ToJSON ExperimentVariationsItem where- toJSON ExperimentVariationsItem'{..}- = object- (catMaybes- [("status" .=) <$> _eviStatus,- ("weight" .=) <$> _eviWeight, ("url" .=) <$> _eviURL,- ("won" .=) <$> _eviWon, ("name" .=) <$> _eviName])---- | Defines the conditions to exclude users from the audience.------ /See:/ 'remarketingAudienceStateBasedAudienceDefinitionExcludeConditions' smart constructor.-data RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions = RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions'- { _rasbadecExclusionDuration :: !(Maybe Text)- , _rasbadecSegment :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rasbadecExclusionDuration'------ * 'rasbadecSegment'-remarketingAudienceStateBasedAudienceDefinitionExcludeConditions- :: RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions-remarketingAudienceStateBasedAudienceDefinitionExcludeConditions =- RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions'- { _rasbadecExclusionDuration = Nothing- , _rasbadecSegment = Nothing- }---- | Whether to make the exclusion TEMPORARY or PERMANENT.-rasbadecExclusionDuration :: Lens' RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions (Maybe Text)-rasbadecExclusionDuration- = lens _rasbadecExclusionDuration- (\ s a -> s{_rasbadecExclusionDuration = a})---- | The segment condition that will cause a user to be removed from an--- audience.-rasbadecSegment :: Lens' RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions (Maybe Text)-rasbadecSegment- = lens _rasbadecSegment- (\ s a -> s{_rasbadecSegment = a})--instance FromJSON- RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions- where- parseJSON- = withObject- "RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions"- (\ o ->- RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions'- <$>- (o .:? "exclusionDuration") <*> (o .:? "segment"))--instance ToJSON- RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions- where- toJSON- RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions'{..}- = object- (catMaybes- [("exclusionDuration" .=) <$>- _rasbadecExclusionDuration,- ("segment" .=) <$> _rasbadecSegment])---- | Total values for the requested metrics over all the results, not just--- the results returned in this response. The order of the metric totals is--- same as the metric order specified in the request.------ /See:/ 'mcfDataTotalsForAllResults' smart constructor.-newtype McfDataTotalsForAllResults = McfDataTotalsForAllResults'- { _mdtfarAddtional :: HashMap Text Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'McfDataTotalsForAllResults' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'mdtfarAddtional'-mcfDataTotalsForAllResults- :: HashMap Text Text -- ^ 'mdtfarAddtional'- -> McfDataTotalsForAllResults-mcfDataTotalsForAllResults pMdtfarAddtional_ =- McfDataTotalsForAllResults'- { _mdtfarAddtional = _Coerce # pMdtfarAddtional_- }---- | Key-value pair for the total value of a metric. Key is the metric name--- and the value is the total value for that metric.-mdtfarAddtional :: Lens' McfDataTotalsForAllResults (HashMap Text Text)-mdtfarAddtional- = lens _mdtfarAddtional- (\ s a -> s{_mdtfarAddtional = a})- . _Coerce--instance FromJSON McfDataTotalsForAllResults where- parseJSON- = withObject "McfDataTotalsForAllResults"- (\ o ->- McfDataTotalsForAllResults' <$> (parseJSONObject o))--instance ToJSON McfDataTotalsForAllResults where- toJSON = toJSON . _mdtfarAddtional---- | User ID.------ /See:/ 'userDeletionRequestId' smart constructor.-data UserDeletionRequestId = UserDeletionRequestId'- { _udriUserId :: !(Maybe Text)- , _udriType :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'UserDeletionRequestId' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'udriUserId'------ * 'udriType'-userDeletionRequestId- :: UserDeletionRequestId-userDeletionRequestId =- UserDeletionRequestId'- { _udriUserId = Nothing- , _udriType = Nothing- }---- | The User\'s id-udriUserId :: Lens' UserDeletionRequestId (Maybe Text)-udriUserId- = lens _udriUserId (\ s a -> s{_udriUserId = a})---- | Type of user-udriType :: Lens' UserDeletionRequestId (Maybe Text)-udriType = lens _udriType (\ s a -> s{_udriType = a})--instance FromJSON UserDeletionRequestId where- parseJSON- = withObject "UserDeletionRequestId"- (\ o ->- UserDeletionRequestId' <$>- (o .:? "userId") <*> (o .:? "type"))--instance ToJSON UserDeletionRequestId where- toJSON UserDeletionRequestId'{..}- = object- (catMaybes- [("userId" .=) <$> _udriUserId,- ("type" .=) <$> _udriType])---- | Download details for a file stored in Google Cloud Storage.------ /See:/ 'unSampledReportCloudStorageDownloadDetails' smart constructor.-data UnSampledReportCloudStorageDownloadDetails = UnSampledReportCloudStorageDownloadDetails'- { _usrcsddObjectId :: !(Maybe Text)- , _usrcsddBucketId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'UnSampledReportCloudStorageDownloadDetails' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'usrcsddObjectId'------ * 'usrcsddBucketId'-unSampledReportCloudStorageDownloadDetails- :: UnSampledReportCloudStorageDownloadDetails-unSampledReportCloudStorageDownloadDetails =- UnSampledReportCloudStorageDownloadDetails'- { _usrcsddObjectId = Nothing- , _usrcsddBucketId = Nothing- }---- | Id of the file object containing the report data.-usrcsddObjectId :: Lens' UnSampledReportCloudStorageDownloadDetails (Maybe Text)-usrcsddObjectId- = lens _usrcsddObjectId- (\ s a -> s{_usrcsddObjectId = a})---- | Id of the bucket the file object is stored in.-usrcsddBucketId :: Lens' UnSampledReportCloudStorageDownloadDetails (Maybe Text)-usrcsddBucketId- = lens _usrcsddBucketId- (\ s a -> s{_usrcsddBucketId = a})--instance FromJSON- UnSampledReportCloudStorageDownloadDetails where- parseJSON- = withObject- "UnSampledReportCloudStorageDownloadDetails"- (\ o ->- UnSampledReportCloudStorageDownloadDetails' <$>- (o .:? "objectId") <*> (o .:? "bucketId"))--instance ToJSON- UnSampledReportCloudStorageDownloadDetails where- toJSON- UnSampledReportCloudStorageDownloadDetails'{..}- = object- (catMaybes- [("objectId" .=) <$> _usrcsddObjectId,- ("bucketId" .=) <$> _usrcsddBucketId])---- | Child link for this view (profile). Points to the list of goals for this--- view (profile).------ /See:/ 'proFileChildLink' smart constructor.-data ProFileChildLink = ProFileChildLink'- { _pfclHref :: !(Maybe Text)- , _pfclType :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ProFileChildLink' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pfclHref'------ * 'pfclType'-proFileChildLink- :: ProFileChildLink-proFileChildLink =- ProFileChildLink'- { _pfclHref = Nothing- , _pfclType = "analytics#goals"- }---- | Link to the list of goals for this view (profile).-pfclHref :: Lens' ProFileChildLink (Maybe Text)-pfclHref = lens _pfclHref (\ s a -> s{_pfclHref = a})---- | Value is \"analytics#goals\".-pfclType :: Lens' ProFileChildLink Text-pfclType = lens _pfclType (\ s a -> s{_pfclType = a})--instance FromJSON ProFileChildLink where- parseJSON- = withObject "ProFileChildLink"- (\ o ->- ProFileChildLink' <$>- (o .:? "href") <*>- (o .:? "type" .!= "analytics#goals"))--instance ToJSON ProFileChildLink where- toJSON ProFileChildLink'{..}- = object- (catMaybes- [("href" .=) <$> _pfclHref,- Just ("type" .= _pfclType)])------- /See:/ 'gaDataColumnHeadersItem' smart constructor.-data GaDataColumnHeadersItem = GaDataColumnHeadersItem'- { _gdchiColumnType :: !(Maybe Text)- , _gdchiName :: !(Maybe Text)- , _gdchiDataType :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GaDataColumnHeadersItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gdchiColumnType'------ * 'gdchiName'------ * 'gdchiDataType'-gaDataColumnHeadersItem- :: GaDataColumnHeadersItem-gaDataColumnHeadersItem =- GaDataColumnHeadersItem'- { _gdchiColumnType = Nothing- , _gdchiName = Nothing- , _gdchiDataType = Nothing- }---- | Column Type. Either DIMENSION or METRIC.-gdchiColumnType :: Lens' GaDataColumnHeadersItem (Maybe Text)-gdchiColumnType- = lens _gdchiColumnType- (\ s a -> s{_gdchiColumnType = a})---- | Column name.-gdchiName :: Lens' GaDataColumnHeadersItem (Maybe Text)-gdchiName- = lens _gdchiName (\ s a -> s{_gdchiName = a})---- | Data type. Dimension column headers have only STRING as the data type.--- Metric column headers have data types for metric values such as INTEGER,--- DOUBLE, CURRENCY etc.-gdchiDataType :: Lens' GaDataColumnHeadersItem (Maybe Text)-gdchiDataType- = lens _gdchiDataType- (\ s a -> s{_gdchiDataType = a})--instance FromJSON GaDataColumnHeadersItem where- parseJSON- = withObject "GaDataColumnHeadersItem"- (\ o ->- GaDataColumnHeadersItem' <$>- (o .:? "columnType") <*> (o .:? "name") <*>- (o .:? "dataType"))--instance ToJSON GaDataColumnHeadersItem where- toJSON GaDataColumnHeadersItem'{..}- = object- (catMaybes- [("columnType" .=) <$> _gdchiColumnType,- ("name" .=) <$> _gdchiName,- ("dataType" .=) <$> _gdchiDataType])---- | Parent link for a goal. Points to the view (profile) to which this goal--- belongs.------ /See:/ 'goalParentLink' smart constructor.-data GoalParentLink = GoalParentLink'- { _gplHref :: !(Maybe Text)- , _gplType :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoalParentLink' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gplHref'------ * 'gplType'-goalParentLink- :: GoalParentLink-goalParentLink =- GoalParentLink'- { _gplHref = Nothing- , _gplType = "analytics#profile"- }---- | Link to the view (profile) to which this goal belongs.-gplHref :: Lens' GoalParentLink (Maybe Text)-gplHref = lens _gplHref (\ s a -> s{_gplHref = a})---- | Value is \"analytics#profile\".-gplType :: Lens' GoalParentLink Text-gplType = lens _gplType (\ s a -> s{_gplType = a})--instance FromJSON GoalParentLink where- parseJSON- = withObject "GoalParentLink"- (\ o ->- GoalParentLink' <$>- (o .:? "href") <*>- (o .:? "type" .!= "analytics#profile"))--instance ToJSON GoalParentLink where- toJSON GoalParentLink'{..}- = object- (catMaybes- [("href" .=) <$> _gplHref,- Just ("type" .= _gplType)])---- | Map of attribute name and value for this column.------ /See:/ 'columnAttributes' smart constructor.-newtype ColumnAttributes = ColumnAttributes'- { _caAddtional :: HashMap Text Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ColumnAttributes' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'caAddtional'-columnAttributes- :: HashMap Text Text -- ^ 'caAddtional'- -> ColumnAttributes-columnAttributes pCaAddtional_ =- ColumnAttributes'- { _caAddtional = _Coerce # pCaAddtional_- }+data UserDeletionRequest =+ UserDeletionRequest'+ { _udrWebPropertyId :: !(Maybe Text)+ , _udrKind :: !Text+ , _udrId :: !(Maybe UserDeletionRequestId)+ , _udrFirebaseProjectId :: !(Maybe Text)+ , _udrDeletionRequestTime :: !(Maybe DateTime')+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'UserDeletionRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'udrWebPropertyId'+--+-- * 'udrKind'+--+-- * 'udrId'+--+-- * 'udrFirebaseProjectId'+--+-- * 'udrDeletionRequestTime'+userDeletionRequest+ :: UserDeletionRequest+userDeletionRequest =+ UserDeletionRequest'+ { _udrWebPropertyId = Nothing+ , _udrKind = "analytics#userDeletionRequest"+ , _udrId = Nothing+ , _udrFirebaseProjectId = Nothing+ , _udrDeletionRequestTime = Nothing+ }+++-- | Web property ID of the form UA-XXXXX-YY.+udrWebPropertyId :: Lens' UserDeletionRequest (Maybe Text)+udrWebPropertyId+ = lens _udrWebPropertyId+ (\ s a -> s{_udrWebPropertyId = a})++-- | Value is \"analytics#userDeletionRequest\".+udrKind :: Lens' UserDeletionRequest Text+udrKind = lens _udrKind (\ s a -> s{_udrKind = a})++-- | User ID.+udrId :: Lens' UserDeletionRequest (Maybe UserDeletionRequestId)+udrId = lens _udrId (\ s a -> s{_udrId = a})++-- | Firebase Project Id+udrFirebaseProjectId :: Lens' UserDeletionRequest (Maybe Text)+udrFirebaseProjectId+ = lens _udrFirebaseProjectId+ (\ s a -> s{_udrFirebaseProjectId = a})++-- | This marks the point in time for which all user data before should be+-- deleted+udrDeletionRequestTime :: Lens' UserDeletionRequest (Maybe UTCTime)+udrDeletionRequestTime+ = lens _udrDeletionRequestTime+ (\ s a -> s{_udrDeletionRequestTime = a})+ . mapping _DateTime++instance FromJSON UserDeletionRequest where+ parseJSON+ = withObject "UserDeletionRequest"+ (\ o ->+ UserDeletionRequest' <$>+ (o .:? "webPropertyId") <*>+ (o .:? "kind" .!= "analytics#userDeletionRequest")+ <*> (o .:? "id")+ <*> (o .:? "firebaseProjectId")+ <*> (o .:? "deletionRequestTime"))++instance ToJSON UserDeletionRequest where+ toJSON UserDeletionRequest'{..}+ = object+ (catMaybes+ [("webPropertyId" .=) <$> _udrWebPropertyId,+ Just ("kind" .= _udrKind), ("id" .=) <$> _udrId,+ ("firebaseProjectId" .=) <$> _udrFirebaseProjectId,+ ("deletionRequestTime" .=) <$>+ _udrDeletionRequestTime])++-- | An unsampled report collection lists Analytics unsampled reports to+-- which the user has access. Each view (profile) can have a set of+-- unsampled reports. Each resource in the unsampled report collection+-- corresponds to a single Analytics unsampled report.+--+-- /See:/ 'unSampledReports' smart constructor.+data UnSampledReports =+ UnSampledReports'+ { _usrNextLink :: !(Maybe Text)+ , _usrItemsPerPage :: !(Maybe (Textual Int32))+ , _usrKind :: !Text+ , _usrUsername :: !(Maybe Text)+ , _usrItems :: !(Maybe [UnSampledReport])+ , _usrTotalResults :: !(Maybe (Textual Int32))+ , _usrStartIndex :: !(Maybe (Textual Int32))+ , _usrPreviousLink :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'UnSampledReports' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'usrNextLink'+--+-- * 'usrItemsPerPage'+--+-- * 'usrKind'+--+-- * 'usrUsername'+--+-- * 'usrItems'+--+-- * 'usrTotalResults'+--+-- * 'usrStartIndex'+--+-- * 'usrPreviousLink'+unSampledReports+ :: UnSampledReports+unSampledReports =+ UnSampledReports'+ { _usrNextLink = Nothing+ , _usrItemsPerPage = Nothing+ , _usrKind = "analytics#unsampledReports"+ , _usrUsername = Nothing+ , _usrItems = Nothing+ , _usrTotalResults = Nothing+ , _usrStartIndex = Nothing+ , _usrPreviousLink = Nothing+ }+++-- | Link to next page for this unsampled report collection.+usrNextLink :: Lens' UnSampledReports (Maybe Text)+usrNextLink+ = lens _usrNextLink (\ s a -> s{_usrNextLink = a})++-- | The maximum number of resources the response can contain, regardless of+-- the actual number of resources returned. Its value ranges from 1 to 1000+-- with a value of 1000 by default, or otherwise specified by the+-- max-results query parameter.+usrItemsPerPage :: Lens' UnSampledReports (Maybe Int32)+usrItemsPerPage+ = lens _usrItemsPerPage+ (\ s a -> s{_usrItemsPerPage = a})+ . mapping _Coerce++-- | Collection type.+usrKind :: Lens' UnSampledReports Text+usrKind = lens _usrKind (\ s a -> s{_usrKind = a})++-- | Email ID of the authenticated user+usrUsername :: Lens' UnSampledReports (Maybe Text)+usrUsername+ = lens _usrUsername (\ s a -> s{_usrUsername = a})++-- | A list of unsampled reports.+usrItems :: Lens' UnSampledReports [UnSampledReport]+usrItems+ = lens _usrItems (\ s a -> s{_usrItems = a}) .+ _Default+ . _Coerce++-- | The total number of results for the query, regardless of the number of+-- resources in the result.+usrTotalResults :: Lens' UnSampledReports (Maybe Int32)+usrTotalResults+ = lens _usrTotalResults+ (\ s a -> s{_usrTotalResults = a})+ . mapping _Coerce++-- | The starting index of the resources, which is 1 by default or otherwise+-- specified by the start-index query parameter.+usrStartIndex :: Lens' UnSampledReports (Maybe Int32)+usrStartIndex+ = lens _usrStartIndex+ (\ s a -> s{_usrStartIndex = a})+ . mapping _Coerce++-- | Link to previous page for this unsampled report collection.+usrPreviousLink :: Lens' UnSampledReports (Maybe Text)+usrPreviousLink+ = lens _usrPreviousLink+ (\ s a -> s{_usrPreviousLink = a})++instance FromJSON UnSampledReports where+ parseJSON+ = withObject "UnSampledReports"+ (\ o ->+ UnSampledReports' <$>+ (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>+ (o .:? "kind" .!= "analytics#unsampledReports")+ <*> (o .:? "username")+ <*> (o .:? "items" .!= mempty)+ <*> (o .:? "totalResults")+ <*> (o .:? "startIndex")+ <*> (o .:? "previousLink"))++instance ToJSON UnSampledReports where+ toJSON UnSampledReports'{..}+ = object+ (catMaybes+ [("nextLink" .=) <$> _usrNextLink,+ ("itemsPerPage" .=) <$> _usrItemsPerPage,+ Just ("kind" .= _usrKind),+ ("username" .=) <$> _usrUsername,+ ("items" .=) <$> _usrItems,+ ("totalResults" .=) <$> _usrTotalResults,+ ("startIndex" .=) <$> _usrStartIndex,+ ("previousLink" .=) <$> _usrPreviousLink])++--+-- /See:/ 'goalURLDestinationDetailsStepsItem' smart constructor.+data GoalURLDestinationDetailsStepsItem =+ GoalURLDestinationDetailsStepsItem'+ { _guddsiURL :: !(Maybe Text)+ , _guddsiName :: !(Maybe Text)+ , _guddsiNumber :: !(Maybe (Textual Int32))+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoalURLDestinationDetailsStepsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'guddsiURL'+--+-- * 'guddsiName'+--+-- * 'guddsiNumber'+goalURLDestinationDetailsStepsItem+ :: GoalURLDestinationDetailsStepsItem+goalURLDestinationDetailsStepsItem =+ GoalURLDestinationDetailsStepsItem'+ {_guddsiURL = Nothing, _guddsiName = Nothing, _guddsiNumber = Nothing}+++-- | URL for this step.+guddsiURL :: Lens' GoalURLDestinationDetailsStepsItem (Maybe Text)+guddsiURL+ = lens _guddsiURL (\ s a -> s{_guddsiURL = a})++-- | Step name.+guddsiName :: Lens' GoalURLDestinationDetailsStepsItem (Maybe Text)+guddsiName+ = lens _guddsiName (\ s a -> s{_guddsiName = a})++-- | Step number.+guddsiNumber :: Lens' GoalURLDestinationDetailsStepsItem (Maybe Int32)+guddsiNumber+ = lens _guddsiNumber (\ s a -> s{_guddsiNumber = a})+ . mapping _Coerce++instance FromJSON GoalURLDestinationDetailsStepsItem+ where+ parseJSON+ = withObject "GoalURLDestinationDetailsStepsItem"+ (\ o ->+ GoalURLDestinationDetailsStepsItem' <$>+ (o .:? "url") <*> (o .:? "name") <*>+ (o .:? "number"))++instance ToJSON GoalURLDestinationDetailsStepsItem+ where+ toJSON GoalURLDestinationDetailsStepsItem'{..}+ = object+ (catMaybes+ [("url" .=) <$> _guddsiURL,+ ("name" .=) <$> _guddsiName,+ ("number" .=) <$> _guddsiNumber])++-- | Analytics data request query parameters.+--+-- /See:/ 'gaDataQuery' smart constructor.+data GaDataQuery =+ GaDataQuery'+ { _gdqMetrics :: !(Maybe [Text])+ , _gdqSamplingLevel :: !(Maybe Text)+ , _gdqFilters :: !(Maybe Text)+ , _gdqIds :: !(Maybe Text)+ , _gdqEndDate :: !(Maybe Text)+ , _gdqSort :: !(Maybe [Text])+ , _gdqDimensions :: !(Maybe Text)+ , _gdqStartIndex :: !(Maybe (Textual Int32))+ , _gdqMaxResults :: !(Maybe (Textual Int32))+ , _gdqSegment :: !(Maybe Text)+ , _gdqStartDate :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GaDataQuery' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gdqMetrics'+--+-- * 'gdqSamplingLevel'+--+-- * 'gdqFilters'+--+-- * 'gdqIds'+--+-- * 'gdqEndDate'+--+-- * 'gdqSort'+--+-- * 'gdqDimensions'+--+-- * 'gdqStartIndex'+--+-- * 'gdqMaxResults'+--+-- * 'gdqSegment'+--+-- * 'gdqStartDate'+gaDataQuery+ :: GaDataQuery+gaDataQuery =+ GaDataQuery'+ { _gdqMetrics = Nothing+ , _gdqSamplingLevel = Nothing+ , _gdqFilters = Nothing+ , _gdqIds = Nothing+ , _gdqEndDate = Nothing+ , _gdqSort = Nothing+ , _gdqDimensions = Nothing+ , _gdqStartIndex = Nothing+ , _gdqMaxResults = Nothing+ , _gdqSegment = Nothing+ , _gdqStartDate = Nothing+ }+++-- | List of analytics metrics.+gdqMetrics :: Lens' GaDataQuery [Text]+gdqMetrics+ = lens _gdqMetrics (\ s a -> s{_gdqMetrics = a}) .+ _Default+ . _Coerce++-- | Desired sampling level+gdqSamplingLevel :: Lens' GaDataQuery (Maybe Text)+gdqSamplingLevel+ = lens _gdqSamplingLevel+ (\ s a -> s{_gdqSamplingLevel = a})++-- | Comma-separated list of dimension or metric filters.+gdqFilters :: Lens' GaDataQuery (Maybe Text)+gdqFilters+ = lens _gdqFilters (\ s a -> s{_gdqFilters = a})++-- | Unique table ID.+gdqIds :: Lens' GaDataQuery (Maybe Text)+gdqIds = lens _gdqIds (\ s a -> s{_gdqIds = a})++-- | End date.+gdqEndDate :: Lens' GaDataQuery (Maybe Text)+gdqEndDate+ = lens _gdqEndDate (\ s a -> s{_gdqEndDate = a})++-- | List of dimensions or metrics based on which Analytics data is sorted.+gdqSort :: Lens' GaDataQuery [Text]+gdqSort+ = lens _gdqSort (\ s a -> s{_gdqSort = a}) . _Default+ . _Coerce++-- | List of analytics dimensions.+gdqDimensions :: Lens' GaDataQuery (Maybe Text)+gdqDimensions+ = lens _gdqDimensions+ (\ s a -> s{_gdqDimensions = a})++-- | Start index.+gdqStartIndex :: Lens' GaDataQuery (Maybe Int32)+gdqStartIndex+ = lens _gdqStartIndex+ (\ s a -> s{_gdqStartIndex = a})+ . mapping _Coerce++-- | Maximum results per page.+gdqMaxResults :: Lens' GaDataQuery (Maybe Int32)+gdqMaxResults+ = lens _gdqMaxResults+ (\ s a -> s{_gdqMaxResults = a})+ . mapping _Coerce++-- | Analytics advanced segment.+gdqSegment :: Lens' GaDataQuery (Maybe Text)+gdqSegment+ = lens _gdqSegment (\ s a -> s{_gdqSegment = a})++-- | Start date.+gdqStartDate :: Lens' GaDataQuery (Maybe Text)+gdqStartDate+ = lens _gdqStartDate (\ s a -> s{_gdqStartDate = a})++instance FromJSON GaDataQuery where+ parseJSON+ = withObject "GaDataQuery"+ (\ o ->+ GaDataQuery' <$>+ (o .:? "metrics" .!= mempty) <*>+ (o .:? "samplingLevel")+ <*> (o .:? "filters")+ <*> (o .:? "ids")+ <*> (o .:? "end-date")+ <*> (o .:? "sort" .!= mempty)+ <*> (o .:? "dimensions")+ <*> (o .:? "start-index")+ <*> (o .:? "max-results")+ <*> (o .:? "segment")+ <*> (o .:? "start-date"))++instance ToJSON GaDataQuery where+ toJSON GaDataQuery'{..}+ = object+ (catMaybes+ [("metrics" .=) <$> _gdqMetrics,+ ("samplingLevel" .=) <$> _gdqSamplingLevel,+ ("filters" .=) <$> _gdqFilters,+ ("ids" .=) <$> _gdqIds,+ ("end-date" .=) <$> _gdqEndDate,+ ("sort" .=) <$> _gdqSort,+ ("dimensions" .=) <$> _gdqDimensions,+ ("start-index" .=) <$> _gdqStartIndex,+ ("max-results" .=) <$> _gdqMaxResults,+ ("segment" .=) <$> _gdqSegment,+ ("start-date" .=) <$> _gdqStartDate])++-- | A remarketing audience collection lists Analytics remarketing audiences+-- to which the user has access. Each resource in the collection+-- corresponds to a single Analytics remarketing audience.+--+-- /See:/ 'remarketingAudiences' smart constructor.+data RemarketingAudiences =+ RemarketingAudiences'+ { _raNextLink :: !(Maybe Text)+ , _raItemsPerPage :: !(Maybe (Textual Int32))+ , _raKind :: !Text+ , _raUsername :: !(Maybe Text)+ , _raItems :: !(Maybe [RemarketingAudience])+ , _raTotalResults :: !(Maybe (Textual Int32))+ , _raStartIndex :: !(Maybe (Textual Int32))+ , _raPreviousLink :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'RemarketingAudiences' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'raNextLink'+--+-- * 'raItemsPerPage'+--+-- * 'raKind'+--+-- * 'raUsername'+--+-- * 'raItems'+--+-- * 'raTotalResults'+--+-- * 'raStartIndex'+--+-- * 'raPreviousLink'+remarketingAudiences+ :: RemarketingAudiences+remarketingAudiences =+ RemarketingAudiences'+ { _raNextLink = Nothing+ , _raItemsPerPage = Nothing+ , _raKind = "analytics#remarketingAudiences"+ , _raUsername = Nothing+ , _raItems = Nothing+ , _raTotalResults = Nothing+ , _raStartIndex = Nothing+ , _raPreviousLink = Nothing+ }+++-- | Link to next page for this remarketing audience collection.+raNextLink :: Lens' RemarketingAudiences (Maybe Text)+raNextLink+ = lens _raNextLink (\ s a -> s{_raNextLink = a})++-- | The maximum number of resources the response can contain, regardless of+-- the actual number of resources returned. Its value ranges from 1 to 1000+-- with a value of 1000 by default, or otherwise specified by the+-- max-results query parameter.+raItemsPerPage :: Lens' RemarketingAudiences (Maybe Int32)+raItemsPerPage+ = lens _raItemsPerPage+ (\ s a -> s{_raItemsPerPage = a})+ . mapping _Coerce++-- | Collection type.+raKind :: Lens' RemarketingAudiences Text+raKind = lens _raKind (\ s a -> s{_raKind = a})++-- | Email ID of the authenticated user+raUsername :: Lens' RemarketingAudiences (Maybe Text)+raUsername+ = lens _raUsername (\ s a -> s{_raUsername = a})++-- | A list of remarketing audiences.+raItems :: Lens' RemarketingAudiences [RemarketingAudience]+raItems+ = lens _raItems (\ s a -> s{_raItems = a}) . _Default+ . _Coerce++-- | The total number of results for the query, regardless of the number of+-- results in the response.+raTotalResults :: Lens' RemarketingAudiences (Maybe Int32)+raTotalResults+ = lens _raTotalResults+ (\ s a -> s{_raTotalResults = a})+ . mapping _Coerce++-- | The starting index of the resources, which is 1 by default or otherwise+-- specified by the start-index query parameter.+raStartIndex :: Lens' RemarketingAudiences (Maybe Int32)+raStartIndex+ = lens _raStartIndex (\ s a -> s{_raStartIndex = a})+ . mapping _Coerce++-- | Link to previous page for this view (profile) collection.+raPreviousLink :: Lens' RemarketingAudiences (Maybe Text)+raPreviousLink+ = lens _raPreviousLink+ (\ s a -> s{_raPreviousLink = a})++instance FromJSON RemarketingAudiences where+ parseJSON+ = withObject "RemarketingAudiences"+ (\ o ->+ RemarketingAudiences' <$>+ (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>+ (o .:? "kind" .!= "analytics#remarketingAudiences")+ <*> (o .:? "username")+ <*> (o .:? "items" .!= mempty)+ <*> (o .:? "totalResults")+ <*> (o .:? "startIndex")+ <*> (o .:? "previousLink"))++instance ToJSON RemarketingAudiences where+ toJSON RemarketingAudiences'{..}+ = object+ (catMaybes+ [("nextLink" .=) <$> _raNextLink,+ ("itemsPerPage" .=) <$> _raItemsPerPage,+ Just ("kind" .= _raKind),+ ("username" .=) <$> _raUsername,+ ("items" .=) <$> _raItems,+ ("totalResults" .=) <$> _raTotalResults,+ ("startIndex" .=) <$> _raStartIndex,+ ("previousLink" .=) <$> _raPreviousLink])++--+-- /See:/ 'gaDataDataTableRowsItem' smart constructor.+newtype GaDataDataTableRowsItem =+ GaDataDataTableRowsItem'+ { _gddtriC :: Maybe [GaDataDataTableRowsItemCItem]+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GaDataDataTableRowsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gddtriC'+gaDataDataTableRowsItem+ :: GaDataDataTableRowsItem+gaDataDataTableRowsItem = GaDataDataTableRowsItem' {_gddtriC = Nothing}+++gddtriC :: Lens' GaDataDataTableRowsItem [GaDataDataTableRowsItemCItem]+gddtriC+ = lens _gddtriC (\ s a -> s{_gddtriC = a}) . _Default+ . _Coerce++instance FromJSON GaDataDataTableRowsItem where+ parseJSON+ = withObject "GaDataDataTableRowsItem"+ (\ o ->+ GaDataDataTableRowsItem' <$> (o .:? "c" .!= mempty))++instance ToJSON GaDataDataTableRowsItem where+ toJSON GaDataDataTableRowsItem'{..}+ = object (catMaybes [("c" .=) <$> _gddtriC])++-- | JSON template for Analytics unsampled report resource.+--+-- /See:/ 'unSampledReport' smart constructor.+data UnSampledReport =+ UnSampledReport'+ { _uDownloadType :: !(Maybe Text)+ , _uStatus :: !(Maybe Text)+ , _uMetrics :: !(Maybe Text)+ , _uDriveDownloadDetails :: !(Maybe UnSampledReportDriveDownloadDetails)+ , _uWebPropertyId :: !(Maybe Text)+ , _uKind :: !Text+ , _uCreated :: !(Maybe DateTime')+ , _uFilters :: !(Maybe Text)+ , _uProFileId :: !(Maybe Text)+ , _uEndDate :: !(Maybe Text)+ , _uSelfLink :: !(Maybe Text)+ , _uAccountId :: !(Maybe Text)+ , _uId :: !(Maybe Text)+ , _uUpdated :: !(Maybe DateTime')+ , _uTitle :: !(Maybe Text)+ , _uDimensions :: !(Maybe Text)+ , _uSegment :: !(Maybe Text)+ , _uCloudStorageDownloadDetails :: !(Maybe UnSampledReportCloudStorageDownloadDetails)+ , _uStartDate :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'UnSampledReport' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uDownloadType'+--+-- * 'uStatus'+--+-- * 'uMetrics'+--+-- * 'uDriveDownloadDetails'+--+-- * 'uWebPropertyId'+--+-- * 'uKind'+--+-- * 'uCreated'+--+-- * 'uFilters'+--+-- * 'uProFileId'+--+-- * 'uEndDate'+--+-- * 'uSelfLink'+--+-- * 'uAccountId'+--+-- * 'uId'+--+-- * 'uUpdated'+--+-- * 'uTitle'+--+-- * 'uDimensions'+--+-- * 'uSegment'+--+-- * 'uCloudStorageDownloadDetails'+--+-- * 'uStartDate'+unSampledReport+ :: UnSampledReport+unSampledReport =+ UnSampledReport'+ { _uDownloadType = Nothing+ , _uStatus = Nothing+ , _uMetrics = Nothing+ , _uDriveDownloadDetails = Nothing+ , _uWebPropertyId = Nothing+ , _uKind = "analytics#unsampledReport"+ , _uCreated = Nothing+ , _uFilters = Nothing+ , _uProFileId = Nothing+ , _uEndDate = Nothing+ , _uSelfLink = Nothing+ , _uAccountId = Nothing+ , _uId = Nothing+ , _uUpdated = Nothing+ , _uTitle = Nothing+ , _uDimensions = Nothing+ , _uSegment = Nothing+ , _uCloudStorageDownloadDetails = Nothing+ , _uStartDate = Nothing+ }+++-- | The type of download you need to use for the report data file. Possible+-- values include \`GOOGLE_DRIVE\` and \`GOOGLE_CLOUD_STORAGE\`. If the+-- value is \`GOOGLE_DRIVE\`, see the \`driveDownloadDetails\` field. If+-- the value is \`GOOGLE_CLOUD_STORAGE\`, see the+-- \`cloudStorageDownloadDetails\` field.+uDownloadType :: Lens' UnSampledReport (Maybe Text)+uDownloadType+ = lens _uDownloadType+ (\ s a -> s{_uDownloadType = a})++-- | Status of this unsampled report. Possible values are PENDING, COMPLETED,+-- or FAILED.+uStatus :: Lens' UnSampledReport (Maybe Text)+uStatus = lens _uStatus (\ s a -> s{_uStatus = a})++-- | The metrics for the unsampled report.+uMetrics :: Lens' UnSampledReport (Maybe Text)+uMetrics = lens _uMetrics (\ s a -> s{_uMetrics = a})++-- | Download details for a file stored in Google Drive.+uDriveDownloadDetails :: Lens' UnSampledReport (Maybe UnSampledReportDriveDownloadDetails)+uDriveDownloadDetails+ = lens _uDriveDownloadDetails+ (\ s a -> s{_uDriveDownloadDetails = a})++-- | Web property ID to which this unsampled report belongs. The web property+-- ID is of the form UA-XXXXX-YY.+uWebPropertyId :: Lens' UnSampledReport (Maybe Text)+uWebPropertyId+ = lens _uWebPropertyId+ (\ s a -> s{_uWebPropertyId = a})++-- | Resource type for an Analytics unsampled report.+uKind :: Lens' UnSampledReport Text+uKind = lens _uKind (\ s a -> s{_uKind = a})++-- | Time this unsampled report was created.+uCreated :: Lens' UnSampledReport (Maybe UTCTime)+uCreated+ = lens _uCreated (\ s a -> s{_uCreated = a}) .+ mapping _DateTime++-- | The filters for the unsampled report.+uFilters :: Lens' UnSampledReport (Maybe Text)+uFilters = lens _uFilters (\ s a -> s{_uFilters = a})++-- | View (Profile) ID to which this unsampled report belongs.+uProFileId :: Lens' UnSampledReport (Maybe Text)+uProFileId+ = lens _uProFileId (\ s a -> s{_uProFileId = a})++-- | The end date for the unsampled report.+uEndDate :: Lens' UnSampledReport (Maybe Text)+uEndDate = lens _uEndDate (\ s a -> s{_uEndDate = a})++-- | Link for this unsampled report.+uSelfLink :: Lens' UnSampledReport (Maybe Text)+uSelfLink+ = lens _uSelfLink (\ s a -> s{_uSelfLink = a})++-- | Account ID to which this unsampled report belongs.+uAccountId :: Lens' UnSampledReport (Maybe Text)+uAccountId+ = lens _uAccountId (\ s a -> s{_uAccountId = a})++-- | Unsampled report ID.+uId :: Lens' UnSampledReport (Maybe Text)+uId = lens _uId (\ s a -> s{_uId = a})++-- | Time this unsampled report was last modified.+uUpdated :: Lens' UnSampledReport (Maybe UTCTime)+uUpdated+ = lens _uUpdated (\ s a -> s{_uUpdated = a}) .+ mapping _DateTime++-- | Title of the unsampled report.+uTitle :: Lens' UnSampledReport (Maybe Text)+uTitle = lens _uTitle (\ s a -> s{_uTitle = a})++-- | The dimensions for the unsampled report.+uDimensions :: Lens' UnSampledReport (Maybe Text)+uDimensions+ = lens _uDimensions (\ s a -> s{_uDimensions = a})++-- | The segment for the unsampled report.+uSegment :: Lens' UnSampledReport (Maybe Text)+uSegment = lens _uSegment (\ s a -> s{_uSegment = a})++-- | Download details for a file stored in Google Cloud Storage.+uCloudStorageDownloadDetails :: Lens' UnSampledReport (Maybe UnSampledReportCloudStorageDownloadDetails)+uCloudStorageDownloadDetails+ = lens _uCloudStorageDownloadDetails+ (\ s a -> s{_uCloudStorageDownloadDetails = a})++-- | The start date for the unsampled report.+uStartDate :: Lens' UnSampledReport (Maybe Text)+uStartDate+ = lens _uStartDate (\ s a -> s{_uStartDate = a})++instance FromJSON UnSampledReport where+ parseJSON+ = withObject "UnSampledReport"+ (\ o ->+ UnSampledReport' <$>+ (o .:? "downloadType") <*> (o .:? "status") <*>+ (o .:? "metrics")+ <*> (o .:? "driveDownloadDetails")+ <*> (o .:? "webPropertyId")+ <*> (o .:? "kind" .!= "analytics#unsampledReport")+ <*> (o .:? "created")+ <*> (o .:? "filters")+ <*> (o .:? "profileId")+ <*> (o .:? "end-date")+ <*> (o .:? "selfLink")+ <*> (o .:? "accountId")+ <*> (o .:? "id")+ <*> (o .:? "updated")+ <*> (o .:? "title")+ <*> (o .:? "dimensions")+ <*> (o .:? "segment")+ <*> (o .:? "cloudStorageDownloadDetails")+ <*> (o .:? "start-date"))++instance ToJSON UnSampledReport where+ toJSON UnSampledReport'{..}+ = object+ (catMaybes+ [("downloadType" .=) <$> _uDownloadType,+ ("status" .=) <$> _uStatus,+ ("metrics" .=) <$> _uMetrics,+ ("driveDownloadDetails" .=) <$>+ _uDriveDownloadDetails,+ ("webPropertyId" .=) <$> _uWebPropertyId,+ Just ("kind" .= _uKind),+ ("created" .=) <$> _uCreated,+ ("filters" .=) <$> _uFilters,+ ("profileId" .=) <$> _uProFileId,+ ("end-date" .=) <$> _uEndDate,+ ("selfLink" .=) <$> _uSelfLink,+ ("accountId" .=) <$> _uAccountId, ("id" .=) <$> _uId,+ ("updated" .=) <$> _uUpdated,+ ("title" .=) <$> _uTitle,+ ("dimensions" .=) <$> _uDimensions,+ ("segment" .=) <$> _uSegment,+ ("cloudStorageDownloadDetails" .=) <$>+ _uCloudStorageDownloadDetails,+ ("start-date" .=) <$> _uStartDate])++--+-- /See:/ 'mcfDataColumnHeadersItem' smart constructor.+data McfDataColumnHeadersItem =+ McfDataColumnHeadersItem'+ { _mdchiColumnType :: !(Maybe Text)+ , _mdchiName :: !(Maybe Text)+ , _mdchiDataType :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'McfDataColumnHeadersItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mdchiColumnType'+--+-- * 'mdchiName'+--+-- * 'mdchiDataType'+mcfDataColumnHeadersItem+ :: McfDataColumnHeadersItem+mcfDataColumnHeadersItem =+ McfDataColumnHeadersItem'+ {_mdchiColumnType = Nothing, _mdchiName = Nothing, _mdchiDataType = Nothing}+++-- | Column Type. Either DIMENSION or METRIC.+mdchiColumnType :: Lens' McfDataColumnHeadersItem (Maybe Text)+mdchiColumnType+ = lens _mdchiColumnType+ (\ s a -> s{_mdchiColumnType = a})++-- | Column name.+mdchiName :: Lens' McfDataColumnHeadersItem (Maybe Text)+mdchiName+ = lens _mdchiName (\ s a -> s{_mdchiName = a})++-- | Data type. Dimension and metric values data types such as INTEGER,+-- DOUBLE, CURRENCY, MCF_SEQUENCE etc.+mdchiDataType :: Lens' McfDataColumnHeadersItem (Maybe Text)+mdchiDataType+ = lens _mdchiDataType+ (\ s a -> s{_mdchiDataType = a})++instance FromJSON McfDataColumnHeadersItem where+ parseJSON+ = withObject "McfDataColumnHeadersItem"+ (\ o ->+ McfDataColumnHeadersItem' <$>+ (o .:? "columnType") <*> (o .:? "name") <*>+ (o .:? "dataType"))++instance ToJSON McfDataColumnHeadersItem where+ toJSON McfDataColumnHeadersItem'{..}+ = object+ (catMaybes+ [("columnType" .=) <$> _mdchiColumnType,+ ("name" .=) <$> _mdchiName,+ ("dataType" .=) <$> _mdchiDataType])++-- | Total values for the requested metrics over all the results, not just+-- the results returned in this response. The order of the metric totals is+-- same as the metric order specified in the request.+--+-- /See:/ 'gaDataTotalsForAllResults' smart constructor.+newtype GaDataTotalsForAllResults =+ GaDataTotalsForAllResults'+ { _gdtfarAddtional :: HashMap Text Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GaDataTotalsForAllResults' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gdtfarAddtional'+gaDataTotalsForAllResults+ :: HashMap Text Text -- ^ 'gdtfarAddtional'+ -> GaDataTotalsForAllResults+gaDataTotalsForAllResults pGdtfarAddtional_ =+ GaDataTotalsForAllResults' {_gdtfarAddtional = _Coerce # pGdtfarAddtional_}+++-- | Key-value pair for the total value of a metric. Key is the metric name+-- and the value is the total value for that metric.+gdtfarAddtional :: Lens' GaDataTotalsForAllResults (HashMap Text Text)+gdtfarAddtional+ = lens _gdtfarAddtional+ (\ s a -> s{_gdtfarAddtional = a})+ . _Coerce++instance FromJSON GaDataTotalsForAllResults where+ parseJSON+ = withObject "GaDataTotalsForAllResults"+ (\ o ->+ GaDataTotalsForAllResults' <$> (parseJSONObject o))++instance ToJSON GaDataTotalsForAllResults where+ toJSON = toJSON . _gdtfarAddtional++-- | Parent link for this view (profile). Points to the web property to which+-- this view (profile) belongs.+--+-- /See:/ 'proFileParentLink' smart constructor.+data ProFileParentLink =+ ProFileParentLink'+ { _pfplHref :: !(Maybe Text)+ , _pfplType :: !Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ProFileParentLink' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pfplHref'+--+-- * 'pfplType'+proFileParentLink+ :: ProFileParentLink+proFileParentLink =+ ProFileParentLink' {_pfplHref = Nothing, _pfplType = "analytics#webproperty"}+++-- | Link to the web property to which this view (profile) belongs.+pfplHref :: Lens' ProFileParentLink (Maybe Text)+pfplHref = lens _pfplHref (\ s a -> s{_pfplHref = a})++-- | Value is \"analytics#webproperty\".+pfplType :: Lens' ProFileParentLink Text+pfplType = lens _pfplType (\ s a -> s{_pfplType = a})++instance FromJSON ProFileParentLink where+ parseJSON+ = withObject "ProFileParentLink"+ (\ o ->+ ProFileParentLink' <$>+ (o .:? "href") <*>+ (o .:? "type" .!= "analytics#webproperty"))++instance ToJSON ProFileParentLink where+ toJSON ProFileParentLink'{..}+ = object+ (catMaybes+ [("href" .=) <$> _pfplHref,+ Just ("type" .= _pfplType)])++-- | JSON template for an Analytics remarketing audience.+--+-- /See:/ 'remarketingAudience' smart constructor.+data RemarketingAudience =+ RemarketingAudience'+ { _rWebPropertyId :: !(Maybe Text)+ , _rKind :: !Text+ , _rCreated :: !(Maybe DateTime')+ , _rLinkedAdAccounts :: !(Maybe [LinkedForeignAccount])+ , _rAudienceDefinition :: !(Maybe RemarketingAudienceAudienceDefinition)+ , _rAudienceType :: !(Maybe Text)+ , _rAccountId :: !(Maybe Text)+ , _rName :: !(Maybe Text)+ , _rStateBasedAudienceDefinition :: !(Maybe RemarketingAudienceStateBasedAudienceDefinition)+ , _rLinkedViews :: !(Maybe [Text])+ , _rInternalWebPropertyId :: !(Maybe Text)+ , _rId :: !(Maybe Text)+ , _rUpdated :: !(Maybe DateTime')+ , _rDescription :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'RemarketingAudience' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rWebPropertyId'+--+-- * 'rKind'+--+-- * 'rCreated'+--+-- * 'rLinkedAdAccounts'+--+-- * 'rAudienceDefinition'+--+-- * 'rAudienceType'+--+-- * 'rAccountId'+--+-- * 'rName'+--+-- * 'rStateBasedAudienceDefinition'+--+-- * 'rLinkedViews'+--+-- * 'rInternalWebPropertyId'+--+-- * 'rId'+--+-- * 'rUpdated'+--+-- * 'rDescription'+remarketingAudience+ :: RemarketingAudience+remarketingAudience =+ RemarketingAudience'+ { _rWebPropertyId = Nothing+ , _rKind = "analytics#remarketingAudience"+ , _rCreated = Nothing+ , _rLinkedAdAccounts = Nothing+ , _rAudienceDefinition = Nothing+ , _rAudienceType = Nothing+ , _rAccountId = Nothing+ , _rName = Nothing+ , _rStateBasedAudienceDefinition = Nothing+ , _rLinkedViews = Nothing+ , _rInternalWebPropertyId = Nothing+ , _rId = Nothing+ , _rUpdated = Nothing+ , _rDescription = Nothing+ }+++-- | Web property ID of the form UA-XXXXX-YY to which this remarketing+-- audience belongs.+rWebPropertyId :: Lens' RemarketingAudience (Maybe Text)+rWebPropertyId+ = lens _rWebPropertyId+ (\ s a -> s{_rWebPropertyId = a})++-- | Collection type.+rKind :: Lens' RemarketingAudience Text+rKind = lens _rKind (\ s a -> s{_rKind = a})++-- | Time this remarketing audience was created.+rCreated :: Lens' RemarketingAudience (Maybe UTCTime)+rCreated+ = lens _rCreated (\ s a -> s{_rCreated = a}) .+ mapping _DateTime++-- | The linked ad accounts associated with this remarketing audience. A+-- remarketing audience can have only one linkedAdAccount currently.+rLinkedAdAccounts :: Lens' RemarketingAudience [LinkedForeignAccount]+rLinkedAdAccounts+ = lens _rLinkedAdAccounts+ (\ s a -> s{_rLinkedAdAccounts = a})+ . _Default+ . _Coerce++-- | The simple audience definition that will cause a user to be added to an+-- audience.+rAudienceDefinition :: Lens' RemarketingAudience (Maybe RemarketingAudienceAudienceDefinition)+rAudienceDefinition+ = lens _rAudienceDefinition+ (\ s a -> s{_rAudienceDefinition = a})++-- | The type of audience, either SIMPLE or STATE_BASED.+rAudienceType :: Lens' RemarketingAudience (Maybe Text)+rAudienceType+ = lens _rAudienceType+ (\ s a -> s{_rAudienceType = a})++-- | Account ID to which this remarketing audience belongs.+rAccountId :: Lens' RemarketingAudience (Maybe Text)+rAccountId+ = lens _rAccountId (\ s a -> s{_rAccountId = a})++-- | The name of this remarketing audience.+rName :: Lens' RemarketingAudience (Maybe Text)+rName = lens _rName (\ s a -> s{_rName = a})++-- | A state based audience definition that will cause a user to be added or+-- removed from an audience.+rStateBasedAudienceDefinition :: Lens' RemarketingAudience (Maybe RemarketingAudienceStateBasedAudienceDefinition)+rStateBasedAudienceDefinition+ = lens _rStateBasedAudienceDefinition+ (\ s a -> s{_rStateBasedAudienceDefinition = a})++-- | The views (profiles) that this remarketing audience is linked to.+rLinkedViews :: Lens' RemarketingAudience [Text]+rLinkedViews+ = lens _rLinkedViews (\ s a -> s{_rLinkedViews = a})+ . _Default+ . _Coerce++-- | Internal ID for the web property to which this remarketing audience+-- belongs.+rInternalWebPropertyId :: Lens' RemarketingAudience (Maybe Text)+rInternalWebPropertyId+ = lens _rInternalWebPropertyId+ (\ s a -> s{_rInternalWebPropertyId = a})++-- | Remarketing Audience ID.+rId :: Lens' RemarketingAudience (Maybe Text)+rId = lens _rId (\ s a -> s{_rId = a})++-- | Time this remarketing audience was last modified.+rUpdated :: Lens' RemarketingAudience (Maybe UTCTime)+rUpdated+ = lens _rUpdated (\ s a -> s{_rUpdated = a}) .+ mapping _DateTime++-- | The description of this remarketing audience.+rDescription :: Lens' RemarketingAudience (Maybe Text)+rDescription+ = lens _rDescription (\ s a -> s{_rDescription = a})++instance FromJSON RemarketingAudience where+ parseJSON+ = withObject "RemarketingAudience"+ (\ o ->+ RemarketingAudience' <$>+ (o .:? "webPropertyId") <*>+ (o .:? "kind" .!= "analytics#remarketingAudience")+ <*> (o .:? "created")+ <*> (o .:? "linkedAdAccounts" .!= mempty)+ <*> (o .:? "audienceDefinition")+ <*> (o .:? "audienceType")+ <*> (o .:? "accountId")+ <*> (o .:? "name")+ <*> (o .:? "stateBasedAudienceDefinition")+ <*> (o .:? "linkedViews" .!= mempty)+ <*> (o .:? "internalWebPropertyId")+ <*> (o .:? "id")+ <*> (o .:? "updated")+ <*> (o .:? "description"))++instance ToJSON RemarketingAudience where+ toJSON RemarketingAudience'{..}+ = object+ (catMaybes+ [("webPropertyId" .=) <$> _rWebPropertyId,+ Just ("kind" .= _rKind),+ ("created" .=) <$> _rCreated,+ ("linkedAdAccounts" .=) <$> _rLinkedAdAccounts,+ ("audienceDefinition" .=) <$> _rAudienceDefinition,+ ("audienceType" .=) <$> _rAudienceType,+ ("accountId" .=) <$> _rAccountId,+ ("name" .=) <$> _rName,+ ("stateBasedAudienceDefinition" .=) <$>+ _rStateBasedAudienceDefinition,+ ("linkedViews" .=) <$> _rLinkedViews,+ ("internalWebPropertyId" .=) <$>+ _rInternalWebPropertyId,+ ("id" .=) <$> _rId, ("updated" .=) <$> _rUpdated,+ ("description" .=) <$> _rDescription])++--+-- /See:/ 'gaDataDataTableRowsItemCItem' smart constructor.+newtype GaDataDataTableRowsItemCItem =+ GaDataDataTableRowsItemCItem'+ { _gddtriciV :: Maybe Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GaDataDataTableRowsItemCItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gddtriciV'+gaDataDataTableRowsItemCItem+ :: GaDataDataTableRowsItemCItem+gaDataDataTableRowsItemCItem =+ GaDataDataTableRowsItemCItem' {_gddtriciV = Nothing}+++gddtriciV :: Lens' GaDataDataTableRowsItemCItem (Maybe Text)+gddtriciV+ = lens _gddtriciV (\ s a -> s{_gddtriciV = a})++instance FromJSON GaDataDataTableRowsItemCItem where+ parseJSON+ = withObject "GaDataDataTableRowsItemCItem"+ (\ o ->+ GaDataDataTableRowsItemCItem' <$> (o .:? "v"))++instance ToJSON GaDataDataTableRowsItemCItem where+ toJSON GaDataDataTableRowsItemCItem'{..}+ = object (catMaybes [("v" .=) <$> _gddtriciV])++-- | Permissions the user has for this entity.+--+-- /See:/ 'entityUserLinkPermissions' smart constructor.+data EntityUserLinkPermissions =+ EntityUserLinkPermissions'+ { _eulpLocal :: !(Maybe [Text])+ , _eulpEffective :: !(Maybe [Text])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'EntityUserLinkPermissions' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'eulpLocal'+--+-- * 'eulpEffective'+entityUserLinkPermissions+ :: EntityUserLinkPermissions+entityUserLinkPermissions =+ EntityUserLinkPermissions' {_eulpLocal = Nothing, _eulpEffective = Nothing}+++-- | Permissions that a user has been assigned at this very level. Does not+-- include any implied or inherited permissions. Local permissions are+-- modifiable.+eulpLocal :: Lens' EntityUserLinkPermissions [Text]+eulpLocal+ = lens _eulpLocal (\ s a -> s{_eulpLocal = a}) .+ _Default+ . _Coerce++-- | Effective permissions represent all the permissions that a user has for+-- this entity. These include any implied permissions (e.g., EDIT implies+-- VIEW) or inherited permissions from the parent entity. Effective+-- permissions are read-only.+eulpEffective :: Lens' EntityUserLinkPermissions [Text]+eulpEffective+ = lens _eulpEffective+ (\ s a -> s{_eulpEffective = a})+ . _Default+ . _Coerce++instance FromJSON EntityUserLinkPermissions where+ parseJSON+ = withObject "EntityUserLinkPermissions"+ (\ o ->+ EntityUserLinkPermissions' <$>+ (o .:? "local" .!= mempty) <*>+ (o .:? "effective" .!= mempty))++instance ToJSON EntityUserLinkPermissions where+ toJSON EntityUserLinkPermissions'{..}+ = object+ (catMaybes+ [("local" .=) <$> _eulpLocal,+ ("effective" .=) <$> _eulpEffective])++-- | Information for the view (profile), for which the real time data was+-- requested.+--+-- /See:/ 'realtimeDataProFileInfo' smart constructor.+data RealtimeDataProFileInfo =+ RealtimeDataProFileInfo'+ { _rdpfiWebPropertyId :: !(Maybe Text)+ , _rdpfiProFileId :: !(Maybe Text)+ , _rdpfiProFileName :: !(Maybe Text)+ , _rdpfiAccountId :: !(Maybe Text)+ , _rdpfiInternalWebPropertyId :: !(Maybe Text)+ , _rdpfiTableId :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'RealtimeDataProFileInfo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rdpfiWebPropertyId'+--+-- * 'rdpfiProFileId'+--+-- * 'rdpfiProFileName'+--+-- * 'rdpfiAccountId'+--+-- * 'rdpfiInternalWebPropertyId'+--+-- * 'rdpfiTableId'+realtimeDataProFileInfo+ :: RealtimeDataProFileInfo+realtimeDataProFileInfo =+ RealtimeDataProFileInfo'+ { _rdpfiWebPropertyId = Nothing+ , _rdpfiProFileId = Nothing+ , _rdpfiProFileName = Nothing+ , _rdpfiAccountId = Nothing+ , _rdpfiInternalWebPropertyId = Nothing+ , _rdpfiTableId = Nothing+ }+++-- | Web Property ID to which this view (profile) belongs.+rdpfiWebPropertyId :: Lens' RealtimeDataProFileInfo (Maybe Text)+rdpfiWebPropertyId+ = lens _rdpfiWebPropertyId+ (\ s a -> s{_rdpfiWebPropertyId = a})++-- | View (Profile) ID.+rdpfiProFileId :: Lens' RealtimeDataProFileInfo (Maybe Text)+rdpfiProFileId+ = lens _rdpfiProFileId+ (\ s a -> s{_rdpfiProFileId = a})++-- | View (Profile) name.+rdpfiProFileName :: Lens' RealtimeDataProFileInfo (Maybe Text)+rdpfiProFileName+ = lens _rdpfiProFileName+ (\ s a -> s{_rdpfiProFileName = a})++-- | Account ID to which this view (profile) belongs.+rdpfiAccountId :: Lens' RealtimeDataProFileInfo (Maybe Text)+rdpfiAccountId+ = lens _rdpfiAccountId+ (\ s a -> s{_rdpfiAccountId = a})++-- | Internal ID for the web property to which this view (profile) belongs.+rdpfiInternalWebPropertyId :: Lens' RealtimeDataProFileInfo (Maybe Text)+rdpfiInternalWebPropertyId+ = lens _rdpfiInternalWebPropertyId+ (\ s a -> s{_rdpfiInternalWebPropertyId = a})++-- | Table ID for view (profile).+rdpfiTableId :: Lens' RealtimeDataProFileInfo (Maybe Text)+rdpfiTableId+ = lens _rdpfiTableId (\ s a -> s{_rdpfiTableId = a})++instance FromJSON RealtimeDataProFileInfo where+ parseJSON+ = withObject "RealtimeDataProFileInfo"+ (\ o ->+ RealtimeDataProFileInfo' <$>+ (o .:? "webPropertyId") <*> (o .:? "profileId") <*>+ (o .:? "profileName")+ <*> (o .:? "accountId")+ <*> (o .:? "internalWebPropertyId")+ <*> (o .:? "tableId"))++instance ToJSON RealtimeDataProFileInfo where+ toJSON RealtimeDataProFileInfo'{..}+ = object+ (catMaybes+ [("webPropertyId" .=) <$> _rdpfiWebPropertyId,+ ("profileId" .=) <$> _rdpfiProFileId,+ ("profileName" .=) <$> _rdpfiProFileName,+ ("accountId" .=) <$> _rdpfiAccountId,+ ("internalWebPropertyId" .=) <$>+ _rdpfiInternalWebPropertyId,+ ("tableId" .=) <$> _rdpfiTableId])++--+-- /See:/ 'mcfDataRowsItemItemConversionPathValueItem' smart constructor.+data McfDataRowsItemItemConversionPathValueItem =+ McfDataRowsItemItemConversionPathValueItem'+ { _mdriicpviInteractionType :: !(Maybe Text)+ , _mdriicpviNodeValue :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'McfDataRowsItemItemConversionPathValueItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mdriicpviInteractionType'+--+-- * 'mdriicpviNodeValue'+mcfDataRowsItemItemConversionPathValueItem+ :: McfDataRowsItemItemConversionPathValueItem+mcfDataRowsItemItemConversionPathValueItem =+ McfDataRowsItemItemConversionPathValueItem'+ {_mdriicpviInteractionType = Nothing, _mdriicpviNodeValue = Nothing}+++-- | Type of an interaction on conversion path. Such as CLICK, IMPRESSION+-- etc.+mdriicpviInteractionType :: Lens' McfDataRowsItemItemConversionPathValueItem (Maybe Text)+mdriicpviInteractionType+ = lens _mdriicpviInteractionType+ (\ s a -> s{_mdriicpviInteractionType = a})++-- | Node value of an interaction on conversion path. Such as source, medium+-- etc.+mdriicpviNodeValue :: Lens' McfDataRowsItemItemConversionPathValueItem (Maybe Text)+mdriicpviNodeValue+ = lens _mdriicpviNodeValue+ (\ s a -> s{_mdriicpviNodeValue = a})++instance FromJSON+ McfDataRowsItemItemConversionPathValueItem+ where+ parseJSON+ = withObject+ "McfDataRowsItemItemConversionPathValueItem"+ (\ o ->+ McfDataRowsItemItemConversionPathValueItem' <$>+ (o .:? "interactionType") <*> (o .:? "nodeValue"))++instance ToJSON+ McfDataRowsItemItemConversionPathValueItem+ where+ toJSON+ McfDataRowsItemItemConversionPathValueItem'{..}+ = object+ (catMaybes+ [("interactionType" .=) <$>+ _mdriicpviInteractionType,+ ("nodeValue" .=) <$> _mdriicpviNodeValue])++-- | JSON template for an Analytics filter expression.+--+-- /See:/ 'filterExpression' smart constructor.+data FilterExpression =+ FilterExpression'+ { _feFieldIndex :: !(Maybe (Textual Int32))+ , _feField :: !(Maybe Text)+ , _feKind :: !Text+ , _feMatchType :: !(Maybe Text)+ , _feCaseSensitive :: !(Maybe Bool)+ , _feExpressionValue :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'FilterExpression' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'feFieldIndex'+--+-- * 'feField'+--+-- * 'feKind'+--+-- * 'feMatchType'+--+-- * 'feCaseSensitive'+--+-- * 'feExpressionValue'+filterExpression+ :: FilterExpression+filterExpression =+ FilterExpression'+ { _feFieldIndex = Nothing+ , _feField = Nothing+ , _feKind = "analytics#filterExpression"+ , _feMatchType = Nothing+ , _feCaseSensitive = Nothing+ , _feExpressionValue = Nothing+ }+++-- | The Index of the custom dimension. Set only if the field is a is+-- CUSTOM_DIMENSION.+feFieldIndex :: Lens' FilterExpression (Maybe Int32)+feFieldIndex+ = lens _feFieldIndex (\ s a -> s{_feFieldIndex = a})+ . mapping _Coerce++-- | Field to filter. Possible values: - Content and Traffic -+-- PAGE_REQUEST_URI, - PAGE_HOSTNAME, - PAGE_TITLE, - REFERRAL, -+-- COST_DATA_URI (Campaign target URL), - HIT_TYPE, - INTERNAL_SEARCH_TERM,+-- - INTERNAL_SEARCH_TYPE, - SOURCE_PROPERTY_TRACKING_ID, - Campaign or+-- AdGroup - CAMPAIGN_SOURCE, - CAMPAIGN_MEDIUM, - CAMPAIGN_NAME, -+-- CAMPAIGN_AD_GROUP, - CAMPAIGN_TERM, - CAMPAIGN_CONTENT, - CAMPAIGN_CODE,+-- - CAMPAIGN_REFERRAL_PATH, - E-Commerce - TRANSACTION_COUNTRY, -+-- TRANSACTION_REGION, - TRANSACTION_CITY, - TRANSACTION_AFFILIATION (Store+-- or order location), - ITEM_NAME, - ITEM_CODE, - ITEM_VARIATION, -+-- TRANSACTION_ID, - TRANSACTION_CURRENCY_CODE, - PRODUCT_ACTION_TYPE, -+-- Audience\/Users - BROWSER, - BROWSER_VERSION, - BROWSER_SIZE, -+-- PLATFORM, - PLATFORM_VERSION, - LANGUAGE, - SCREEN_RESOLUTION, -+-- SCREEN_COLORS, - JAVA_ENABLED (Boolean Field), - FLASH_VERSION, -+-- GEO_SPEED (Connection speed), - VISITOR_TYPE, - GEO_ORGANIZATION (ISP+-- organization), - GEO_DOMAIN, - GEO_IP_ADDRESS, - GEO_IP_VERSION, -+-- Location - GEO_COUNTRY, - GEO_REGION, - GEO_CITY, - Event -+-- EVENT_CATEGORY, - EVENT_ACTION, - EVENT_LABEL, - Other - CUSTOM_FIELD_1,+-- - CUSTOM_FIELD_2, - USER_DEFINED_VALUE, - Application - APP_ID, -+-- APP_INSTALLER_ID, - APP_NAME, - APP_VERSION, - SCREEN, - IS_APP (Boolean+-- Field), - IS_FATAL_EXCEPTION (Boolean Field), - EXCEPTION_DESCRIPTION, -+-- Mobile device - IS_MOBILE (Boolean Field, Deprecated. Use+-- DEVICE_CATEGORY=mobile), - IS_TABLET (Boolean Field, Deprecated. Use+-- DEVICE_CATEGORY=tablet), - DEVICE_CATEGORY, - MOBILE_HAS_QWERTY_KEYBOARD+-- (Boolean Field), - MOBILE_HAS_NFC_SUPPORT (Boolean Field), -+-- MOBILE_HAS_CELLULAR_RADIO (Boolean Field), - MOBILE_HAS_WIFI_SUPPORT+-- (Boolean Field), - MOBILE_BRAND_NAME, - MOBILE_MODEL_NAME, -+-- MOBILE_MARKETING_NAME, - MOBILE_POINTING_METHOD, - Social -+-- SOCIAL_NETWORK, - SOCIAL_ACTION, - SOCIAL_ACTION_TARGET, - Custom+-- dimension - CUSTOM_DIMENSION (See accompanying field index),+feField :: Lens' FilterExpression (Maybe Text)+feField = lens _feField (\ s a -> s{_feField = a})++-- | Kind value for filter expression+feKind :: Lens' FilterExpression Text+feKind = lens _feKind (\ s a -> s{_feKind = a})++-- | Match type for this filter. Possible values are BEGINS_WITH, EQUAL,+-- ENDS_WITH, CONTAINS, or MATCHES. GEO_DOMAIN, GEO_IP_ADDRESS,+-- PAGE_REQUEST_URI, or PAGE_HOSTNAME filters can use any match type; all+-- other filters must use MATCHES.+feMatchType :: Lens' FilterExpression (Maybe Text)+feMatchType+ = lens _feMatchType (\ s a -> s{_feMatchType = a})++-- | Determines if the filter is case sensitive.+feCaseSensitive :: Lens' FilterExpression (Maybe Bool)+feCaseSensitive+ = lens _feCaseSensitive+ (\ s a -> s{_feCaseSensitive = a})++-- | Filter expression value+feExpressionValue :: Lens' FilterExpression (Maybe Text)+feExpressionValue+ = lens _feExpressionValue+ (\ s a -> s{_feExpressionValue = a})++instance FromJSON FilterExpression where+ parseJSON+ = withObject "FilterExpression"+ (\ o ->+ FilterExpression' <$>+ (o .:? "fieldIndex") <*> (o .:? "field") <*>+ (o .:? "kind" .!= "analytics#filterExpression")+ <*> (o .:? "matchType")+ <*> (o .:? "caseSensitive")+ <*> (o .:? "expressionValue"))++instance ToJSON FilterExpression where+ toJSON FilterExpression'{..}+ = object+ (catMaybes+ [("fieldIndex" .=) <$> _feFieldIndex,+ ("field" .=) <$> _feField, Just ("kind" .= _feKind),+ ("matchType" .=) <$> _feMatchType,+ ("caseSensitive" .=) <$> _feCaseSensitive,+ ("expressionValue" .=) <$> _feExpressionValue])++-- | JSON template for a linked view (profile).+--+-- /See:/ 'proFileRef' smart constructor.+data ProFileRef =+ ProFileRef'+ { _pfrWebPropertyId :: !(Maybe Text)+ , _pfrKind :: !Text+ , _pfrHref :: !(Maybe Text)+ , _pfrAccountId :: !(Maybe Text)+ , _pfrName :: !(Maybe Text)+ , _pfrInternalWebPropertyId :: !(Maybe Text)+ , _pfrId :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ProFileRef' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pfrWebPropertyId'+--+-- * 'pfrKind'+--+-- * 'pfrHref'+--+-- * 'pfrAccountId'+--+-- * 'pfrName'+--+-- * 'pfrInternalWebPropertyId'+--+-- * 'pfrId'+proFileRef+ :: ProFileRef+proFileRef =+ ProFileRef'+ { _pfrWebPropertyId = Nothing+ , _pfrKind = "analytics#profileRef"+ , _pfrHref = Nothing+ , _pfrAccountId = Nothing+ , _pfrName = Nothing+ , _pfrInternalWebPropertyId = Nothing+ , _pfrId = Nothing+ }+++-- | Web property ID of the form UA-XXXXX-YY to which this view (profile)+-- belongs.+pfrWebPropertyId :: Lens' ProFileRef (Maybe Text)+pfrWebPropertyId+ = lens _pfrWebPropertyId+ (\ s a -> s{_pfrWebPropertyId = a})++-- | Analytics view (profile) reference.+pfrKind :: Lens' ProFileRef Text+pfrKind = lens _pfrKind (\ s a -> s{_pfrKind = a})++-- | Link for this view (profile).+pfrHref :: Lens' ProFileRef (Maybe Text)+pfrHref = lens _pfrHref (\ s a -> s{_pfrHref = a})++-- | Account ID to which this view (profile) belongs.+pfrAccountId :: Lens' ProFileRef (Maybe Text)+pfrAccountId+ = lens _pfrAccountId (\ s a -> s{_pfrAccountId = a})++-- | Name of this view (profile).+pfrName :: Lens' ProFileRef (Maybe Text)+pfrName = lens _pfrName (\ s a -> s{_pfrName = a})++-- | Internal ID for the web property to which this view (profile) belongs.+pfrInternalWebPropertyId :: Lens' ProFileRef (Maybe Text)+pfrInternalWebPropertyId+ = lens _pfrInternalWebPropertyId+ (\ s a -> s{_pfrInternalWebPropertyId = a})++-- | View (Profile) ID.+pfrId :: Lens' ProFileRef (Maybe Text)+pfrId = lens _pfrId (\ s a -> s{_pfrId = a})++instance FromJSON ProFileRef where+ parseJSON+ = withObject "ProFileRef"+ (\ o ->+ ProFileRef' <$>+ (o .:? "webPropertyId") <*>+ (o .:? "kind" .!= "analytics#profileRef")+ <*> (o .:? "href")+ <*> (o .:? "accountId")+ <*> (o .:? "name")+ <*> (o .:? "internalWebPropertyId")+ <*> (o .:? "id"))++instance ToJSON ProFileRef where+ toJSON ProFileRef'{..}+ = object+ (catMaybes+ [("webPropertyId" .=) <$> _pfrWebPropertyId,+ Just ("kind" .= _pfrKind), ("href" .=) <$> _pfrHref,+ ("accountId" .=) <$> _pfrAccountId,+ ("name" .=) <$> _pfrName,+ ("internalWebPropertyId" .=) <$>+ _pfrInternalWebPropertyId,+ ("id" .=) <$> _pfrId])++-- | An account collection provides a list of Analytics accounts to which a+-- user has access. The account collection is the entry point to all+-- management information. Each resource in the collection corresponds to a+-- single Analytics account.+--+-- /See:/ 'accounts' smart constructor.+data Accounts =+ Accounts'+ { _aNextLink :: !(Maybe Text)+ , _aItemsPerPage :: !(Maybe (Textual Int32))+ , _aKind :: !Text+ , _aUsername :: !(Maybe Text)+ , _aItems :: !(Maybe [Account])+ , _aTotalResults :: !(Maybe (Textual Int32))+ , _aStartIndex :: !(Maybe (Textual Int32))+ , _aPreviousLink :: !(Maybe Text)+ }+ 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:+--+-- * 'aNextLink'+--+-- * 'aItemsPerPage'+--+-- * 'aKind'+--+-- * 'aUsername'+--+-- * 'aItems'+--+-- * 'aTotalResults'+--+-- * 'aStartIndex'+--+-- * 'aPreviousLink'+accounts+ :: Accounts+accounts =+ Accounts'+ { _aNextLink = Nothing+ , _aItemsPerPage = Nothing+ , _aKind = "analytics#accounts"+ , _aUsername = Nothing+ , _aItems = Nothing+ , _aTotalResults = Nothing+ , _aStartIndex = Nothing+ , _aPreviousLink = Nothing+ }+++-- | Next link for this account collection.+aNextLink :: Lens' Accounts (Maybe Text)+aNextLink+ = lens _aNextLink (\ s a -> s{_aNextLink = a})++-- | The maximum number of entries the response can contain, regardless of+-- the actual number of entries returned. Its value ranges from 1 to 1000+-- with a value of 1000 by default, or otherwise specified by the+-- max-results query parameter.+aItemsPerPage :: Lens' Accounts (Maybe Int32)+aItemsPerPage+ = lens _aItemsPerPage+ (\ s a -> s{_aItemsPerPage = a})+ . mapping _Coerce++-- | Collection type.+aKind :: Lens' Accounts Text+aKind = lens _aKind (\ s a -> s{_aKind = a})++-- | Email ID of the authenticated user+aUsername :: Lens' Accounts (Maybe Text)+aUsername+ = lens _aUsername (\ s a -> s{_aUsername = a})++-- | A list of accounts.+aItems :: Lens' Accounts [Account]+aItems+ = lens _aItems (\ s a -> s{_aItems = a}) . _Default .+ _Coerce++-- | The total number of results for the query, regardless of the number of+-- results in the response.+aTotalResults :: Lens' Accounts (Maybe Int32)+aTotalResults+ = lens _aTotalResults+ (\ s a -> s{_aTotalResults = a})+ . mapping _Coerce++-- | The starting index of the entries, which is 1 by default or otherwise+-- specified by the start-index query parameter.+aStartIndex :: Lens' Accounts (Maybe Int32)+aStartIndex+ = lens _aStartIndex (\ s a -> s{_aStartIndex = a}) .+ mapping _Coerce++-- | Previous link for this account collection.+aPreviousLink :: Lens' Accounts (Maybe Text)+aPreviousLink+ = lens _aPreviousLink+ (\ s a -> s{_aPreviousLink = a})++instance FromJSON Accounts where+ parseJSON+ = withObject "Accounts"+ (\ o ->+ Accounts' <$>+ (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>+ (o .:? "kind" .!= "analytics#accounts")+ <*> (o .:? "username")+ <*> (o .:? "items" .!= mempty)+ <*> (o .:? "totalResults")+ <*> (o .:? "startIndex")+ <*> (o .:? "previousLink"))++instance ToJSON Accounts where+ toJSON Accounts'{..}+ = object+ (catMaybes+ [("nextLink" .=) <$> _aNextLink,+ ("itemsPerPage" .=) <$> _aItemsPerPage,+ Just ("kind" .= _aKind),+ ("username" .=) <$> _aUsername,+ ("items" .=) <$> _aItems,+ ("totalResults" .=) <$> _aTotalResults,+ ("startIndex" .=) <$> _aStartIndex,+ ("previousLink" .=) <$> _aPreviousLink])++-- | An experiment collection lists Analytics experiments to which the user+-- has access. Each view (profile) can have a set of experiments. Each+-- resource in the Experiment collection corresponds to a single Analytics+-- experiment.+--+-- /See:/ 'experiments' smart constructor.+data Experiments =+ Experiments'+ { _eNextLink :: !(Maybe Text)+ , _eItemsPerPage :: !(Maybe (Textual Int32))+ , _eKind :: !Text+ , _eUsername :: !(Maybe Text)+ , _eItems :: !(Maybe [Experiment])+ , _eTotalResults :: !(Maybe (Textual Int32))+ , _eStartIndex :: !(Maybe (Textual Int32))+ , _ePreviousLink :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Experiments' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'eNextLink'+--+-- * 'eItemsPerPage'+--+-- * 'eKind'+--+-- * 'eUsername'+--+-- * 'eItems'+--+-- * 'eTotalResults'+--+-- * 'eStartIndex'+--+-- * 'ePreviousLink'+experiments+ :: Experiments+experiments =+ Experiments'+ { _eNextLink = Nothing+ , _eItemsPerPage = Nothing+ , _eKind = "analytics#experiments"+ , _eUsername = Nothing+ , _eItems = Nothing+ , _eTotalResults = Nothing+ , _eStartIndex = Nothing+ , _ePreviousLink = Nothing+ }+++-- | Link to next page for this experiment collection.+eNextLink :: Lens' Experiments (Maybe Text)+eNextLink+ = lens _eNextLink (\ s a -> s{_eNextLink = a})++-- | The maximum number of resources the response can contain, regardless of+-- the actual number of resources returned. Its value ranges from 1 to 1000+-- with a value of 1000 by default, or otherwise specified by the+-- max-results query parameter.+eItemsPerPage :: Lens' Experiments (Maybe Int32)+eItemsPerPage+ = lens _eItemsPerPage+ (\ s a -> s{_eItemsPerPage = a})+ . mapping _Coerce++-- | Collection type.+eKind :: Lens' Experiments Text+eKind = lens _eKind (\ s a -> s{_eKind = a})++-- | Email ID of the authenticated user+eUsername :: Lens' Experiments (Maybe Text)+eUsername+ = lens _eUsername (\ s a -> s{_eUsername = a})++-- | A list of experiments.+eItems :: Lens' Experiments [Experiment]+eItems+ = lens _eItems (\ s a -> s{_eItems = a}) . _Default .+ _Coerce++-- | The total number of results for the query, regardless of the number of+-- resources in the result.+eTotalResults :: Lens' Experiments (Maybe Int32)+eTotalResults+ = lens _eTotalResults+ (\ s a -> s{_eTotalResults = a})+ . mapping _Coerce++-- | The starting index of the resources, which is 1 by default or otherwise+-- specified by the start-index query parameter.+eStartIndex :: Lens' Experiments (Maybe Int32)+eStartIndex+ = lens _eStartIndex (\ s a -> s{_eStartIndex = a}) .+ mapping _Coerce++-- | Link to previous page for this experiment collection.+ePreviousLink :: Lens' Experiments (Maybe Text)+ePreviousLink+ = lens _ePreviousLink+ (\ s a -> s{_ePreviousLink = a})++instance FromJSON Experiments where+ parseJSON+ = withObject "Experiments"+ (\ o ->+ Experiments' <$>+ (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>+ (o .:? "kind" .!= "analytics#experiments")+ <*> (o .:? "username")+ <*> (o .:? "items" .!= mempty)+ <*> (o .:? "totalResults")+ <*> (o .:? "startIndex")+ <*> (o .:? "previousLink"))++instance ToJSON Experiments where+ toJSON Experiments'{..}+ = object+ (catMaybes+ [("nextLink" .=) <$> _eNextLink,+ ("itemsPerPage" .=) <$> _eItemsPerPage,+ Just ("kind" .= _eKind),+ ("username" .=) <$> _eUsername,+ ("items" .=) <$> _eItems,+ ("totalResults" .=) <$> _eTotalResults,+ ("startIndex" .=) <$> _eStartIndex,+ ("previousLink" .=) <$> _ePreviousLink])++-- | Parent link for an experiment. Points to the view (profile) to which+-- this experiment belongs.+--+-- /See:/ 'experimentParentLink' smart constructor.+data ExperimentParentLink =+ ExperimentParentLink'+ { _eplHref :: !(Maybe Text)+ , _eplType :: !Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ExperimentParentLink' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'eplHref'+--+-- * 'eplType'+experimentParentLink+ :: ExperimentParentLink+experimentParentLink =+ ExperimentParentLink' {_eplHref = Nothing, _eplType = "analytics#profile"}+++-- | Link to the view (profile) to which this experiment belongs. This field+-- is read-only.+eplHref :: Lens' ExperimentParentLink (Maybe Text)+eplHref = lens _eplHref (\ s a -> s{_eplHref = a})++-- | Value is \"analytics#profile\". This field is read-only.+eplType :: Lens' ExperimentParentLink Text+eplType = lens _eplType (\ s a -> s{_eplType = a})++instance FromJSON ExperimentParentLink where+ parseJSON+ = withObject "ExperimentParentLink"+ (\ o ->+ ExperimentParentLink' <$>+ (o .:? "href") <*>+ (o .:? "type" .!= "analytics#profile"))++instance ToJSON ExperimentParentLink where+ toJSON ExperimentParentLink'{..}+ = object+ (catMaybes+ [("href" .=) <$> _eplHref,+ Just ("type" .= _eplType)])++-- | Download details for a file stored in Google Drive.+--+-- /See:/ 'unSampledReportDriveDownloadDetails' smart constructor.+newtype UnSampledReportDriveDownloadDetails =+ UnSampledReportDriveDownloadDetails'+ { _usrdddDocumentId :: Maybe Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'UnSampledReportDriveDownloadDetails' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'usrdddDocumentId'+unSampledReportDriveDownloadDetails+ :: UnSampledReportDriveDownloadDetails+unSampledReportDriveDownloadDetails =+ UnSampledReportDriveDownloadDetails' {_usrdddDocumentId = Nothing}+++-- | Id of the document\/file containing the report data.+usrdddDocumentId :: Lens' UnSampledReportDriveDownloadDetails (Maybe Text)+usrdddDocumentId+ = lens _usrdddDocumentId+ (\ s a -> s{_usrdddDocumentId = a})++instance FromJSON UnSampledReportDriveDownloadDetails+ where+ parseJSON+ = withObject "UnSampledReportDriveDownloadDetails"+ (\ o ->+ UnSampledReportDriveDownloadDetails' <$>+ (o .:? "documentId"))++instance ToJSON UnSampledReportDriveDownloadDetails+ where+ toJSON UnSampledReportDriveDownloadDetails'{..}+ = object+ (catMaybes [("documentId" .=) <$> _usrdddDocumentId])++-- | Information for the view (profile), for which the Analytics data was+-- requested.+--+-- /See:/ 'mcfDataProFileInfo' smart constructor.+data McfDataProFileInfo =+ McfDataProFileInfo'+ { _mdpfiWebPropertyId :: !(Maybe Text)+ , _mdpfiProFileId :: !(Maybe Text)+ , _mdpfiProFileName :: !(Maybe Text)+ , _mdpfiAccountId :: !(Maybe Text)+ , _mdpfiInternalWebPropertyId :: !(Maybe Text)+ , _mdpfiTableId :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'McfDataProFileInfo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mdpfiWebPropertyId'+--+-- * 'mdpfiProFileId'+--+-- * 'mdpfiProFileName'+--+-- * 'mdpfiAccountId'+--+-- * 'mdpfiInternalWebPropertyId'+--+-- * 'mdpfiTableId'+mcfDataProFileInfo+ :: McfDataProFileInfo+mcfDataProFileInfo =+ McfDataProFileInfo'+ { _mdpfiWebPropertyId = Nothing+ , _mdpfiProFileId = Nothing+ , _mdpfiProFileName = Nothing+ , _mdpfiAccountId = Nothing+ , _mdpfiInternalWebPropertyId = Nothing+ , _mdpfiTableId = Nothing+ }+++-- | Web Property ID to which this view (profile) belongs.+mdpfiWebPropertyId :: Lens' McfDataProFileInfo (Maybe Text)+mdpfiWebPropertyId+ = lens _mdpfiWebPropertyId+ (\ s a -> s{_mdpfiWebPropertyId = a})++-- | View (Profile) ID.+mdpfiProFileId :: Lens' McfDataProFileInfo (Maybe Text)+mdpfiProFileId+ = lens _mdpfiProFileId+ (\ s a -> s{_mdpfiProFileId = a})++-- | View (Profile) name.+mdpfiProFileName :: Lens' McfDataProFileInfo (Maybe Text)+mdpfiProFileName+ = lens _mdpfiProFileName+ (\ s a -> s{_mdpfiProFileName = a})++-- | Account ID to which this view (profile) belongs.+mdpfiAccountId :: Lens' McfDataProFileInfo (Maybe Text)+mdpfiAccountId+ = lens _mdpfiAccountId+ (\ s a -> s{_mdpfiAccountId = a})++-- | Internal ID for the web property to which this view (profile) belongs.+mdpfiInternalWebPropertyId :: Lens' McfDataProFileInfo (Maybe Text)+mdpfiInternalWebPropertyId+ = lens _mdpfiInternalWebPropertyId+ (\ s a -> s{_mdpfiInternalWebPropertyId = a})++-- | Table ID for view (profile).+mdpfiTableId :: Lens' McfDataProFileInfo (Maybe Text)+mdpfiTableId+ = lens _mdpfiTableId (\ s a -> s{_mdpfiTableId = a})++instance FromJSON McfDataProFileInfo where+ parseJSON+ = withObject "McfDataProFileInfo"+ (\ o ->+ McfDataProFileInfo' <$>+ (o .:? "webPropertyId") <*> (o .:? "profileId") <*>+ (o .:? "profileName")+ <*> (o .:? "accountId")+ <*> (o .:? "internalWebPropertyId")+ <*> (o .:? "tableId"))++instance ToJSON McfDataProFileInfo where+ toJSON McfDataProFileInfo'{..}+ = object+ (catMaybes+ [("webPropertyId" .=) <$> _mdpfiWebPropertyId,+ ("profileId" .=) <$> _mdpfiProFileId,+ ("profileName" .=) <$> _mdpfiProFileName,+ ("accountId" .=) <$> _mdpfiAccountId,+ ("internalWebPropertyId" .=) <$>+ _mdpfiInternalWebPropertyId,+ ("tableId" .=) <$> _mdpfiTableId])++-- | Lists Analytics custom data sources to which the user has access. Each+-- resource in the collection corresponds to a single Analytics custom data+-- source.+--+-- /See:/ 'customDataSources' smart constructor.+data CustomDataSources =+ CustomDataSources'+ { _cdsNextLink :: !(Maybe Text)+ , _cdsItemsPerPage :: !(Maybe (Textual Int32))+ , _cdsKind :: !Text+ , _cdsUsername :: !(Maybe Text)+ , _cdsItems :: !(Maybe [CustomDataSource])+ , _cdsTotalResults :: !(Maybe (Textual Int32))+ , _cdsStartIndex :: !(Maybe (Textual Int32))+ , _cdsPreviousLink :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'CustomDataSources' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cdsNextLink'+--+-- * 'cdsItemsPerPage'+--+-- * 'cdsKind'+--+-- * 'cdsUsername'+--+-- * 'cdsItems'+--+-- * 'cdsTotalResults'+--+-- * 'cdsStartIndex'+--+-- * 'cdsPreviousLink'+customDataSources+ :: CustomDataSources+customDataSources =+ CustomDataSources'+ { _cdsNextLink = Nothing+ , _cdsItemsPerPage = Nothing+ , _cdsKind = "analytics#customDataSources"+ , _cdsUsername = Nothing+ , _cdsItems = Nothing+ , _cdsTotalResults = Nothing+ , _cdsStartIndex = Nothing+ , _cdsPreviousLink = Nothing+ }+++-- | Link to next page for this custom data source collection.+cdsNextLink :: Lens' CustomDataSources (Maybe Text)+cdsNextLink+ = lens _cdsNextLink (\ s a -> s{_cdsNextLink = a})++-- | The maximum number of resources the response can contain, regardless of+-- the actual number of resources returned. Its value ranges from 1 to 1000+-- with a value of 1000 by default, or otherwise specified by the+-- max-results query parameter.+cdsItemsPerPage :: Lens' CustomDataSources (Maybe Int32)+cdsItemsPerPage+ = lens _cdsItemsPerPage+ (\ s a -> s{_cdsItemsPerPage = a})+ . mapping _Coerce++-- | Collection type.+cdsKind :: Lens' CustomDataSources Text+cdsKind = lens _cdsKind (\ s a -> s{_cdsKind = a})++-- | Email ID of the authenticated user+cdsUsername :: Lens' CustomDataSources (Maybe Text)+cdsUsername+ = lens _cdsUsername (\ s a -> s{_cdsUsername = a})++-- | Collection of custom data sources.+cdsItems :: Lens' CustomDataSources [CustomDataSource]+cdsItems+ = lens _cdsItems (\ s a -> s{_cdsItems = a}) .+ _Default+ . _Coerce++-- | The total number of results for the query, regardless of the number of+-- results in the response.+cdsTotalResults :: Lens' CustomDataSources (Maybe Int32)+cdsTotalResults+ = lens _cdsTotalResults+ (\ s a -> s{_cdsTotalResults = a})+ . mapping _Coerce++-- | The starting index of the resources, which is 1 by default or otherwise+-- specified by the start-index query parameter.+cdsStartIndex :: Lens' CustomDataSources (Maybe Int32)+cdsStartIndex+ = lens _cdsStartIndex+ (\ s a -> s{_cdsStartIndex = a})+ . mapping _Coerce++-- | Link to previous page for this custom data source collection.+cdsPreviousLink :: Lens' CustomDataSources (Maybe Text)+cdsPreviousLink+ = lens _cdsPreviousLink+ (\ s a -> s{_cdsPreviousLink = a})++instance FromJSON CustomDataSources where+ parseJSON+ = withObject "CustomDataSources"+ (\ o ->+ CustomDataSources' <$>+ (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>+ (o .:? "kind" .!= "analytics#customDataSources")+ <*> (o .:? "username")+ <*> (o .:? "items" .!= mempty)+ <*> (o .:? "totalResults")+ <*> (o .:? "startIndex")+ <*> (o .:? "previousLink"))++instance ToJSON CustomDataSources where+ toJSON CustomDataSources'{..}+ = object+ (catMaybes+ [("nextLink" .=) <$> _cdsNextLink,+ ("itemsPerPage" .=) <$> _cdsItemsPerPage,+ Just ("kind" .= _cdsKind),+ ("username" .=) <$> _cdsUsername,+ ("items" .=) <$> _cdsItems,+ ("totalResults" .=) <$> _cdsTotalResults,+ ("startIndex" .=) <$> _cdsStartIndex,+ ("previousLink" .=) <$> _cdsPreviousLink])++-- | Child link for this web property. Points to the list of views (profiles)+-- for this web property.+--+-- /See:/ 'webPropertyChildLink' smart constructor.+data WebPropertyChildLink =+ WebPropertyChildLink'+ { _wpclHref :: !(Maybe Text)+ , _wpclType :: !Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'WebPropertyChildLink' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'wpclHref'+--+-- * 'wpclType'+webPropertyChildLink+ :: WebPropertyChildLink+webPropertyChildLink =+ WebPropertyChildLink' {_wpclHref = Nothing, _wpclType = "analytics#profiles"}+++-- | Link to the list of views (profiles) for this web property.+wpclHref :: Lens' WebPropertyChildLink (Maybe Text)+wpclHref = lens _wpclHref (\ s a -> s{_wpclHref = a})++-- | Type of the parent link. Its value is \"analytics#profiles\".+wpclType :: Lens' WebPropertyChildLink Text+wpclType = lens _wpclType (\ s a -> s{_wpclType = a})++instance FromJSON WebPropertyChildLink where+ parseJSON+ = withObject "WebPropertyChildLink"+ (\ o ->+ WebPropertyChildLink' <$>+ (o .:? "href") <*>+ (o .:? "type" .!= "analytics#profiles"))++instance ToJSON WebPropertyChildLink where+ toJSON WebPropertyChildLink'{..}+ = object+ (catMaybes+ [("href" .=) <$> _wpclHref,+ Just ("type" .= _wpclType)])++-- | JSON template for a hash Client Id response resource.+--+-- /See:/ 'hashClientIdResponse' smart constructor.+data HashClientIdResponse =+ HashClientIdResponse'+ { _hcirClientId :: !(Maybe Text)+ , _hcirWebPropertyId :: !(Maybe Text)+ , _hcirKind :: !Text+ , _hcirHashedClientId :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'HashClientIdResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'hcirClientId'+--+-- * 'hcirWebPropertyId'+--+-- * 'hcirKind'+--+-- * 'hcirHashedClientId'+hashClientIdResponse+ :: HashClientIdResponse+hashClientIdResponse =+ HashClientIdResponse'+ { _hcirClientId = Nothing+ , _hcirWebPropertyId = Nothing+ , _hcirKind = "analytics#hashClientIdResponse"+ , _hcirHashedClientId = Nothing+ }+++hcirClientId :: Lens' HashClientIdResponse (Maybe Text)+hcirClientId+ = lens _hcirClientId (\ s a -> s{_hcirClientId = a})++hcirWebPropertyId :: Lens' HashClientIdResponse (Maybe Text)+hcirWebPropertyId+ = lens _hcirWebPropertyId+ (\ s a -> s{_hcirWebPropertyId = a})++hcirKind :: Lens' HashClientIdResponse Text+hcirKind = lens _hcirKind (\ s a -> s{_hcirKind = a})++hcirHashedClientId :: Lens' HashClientIdResponse (Maybe Text)+hcirHashedClientId+ = lens _hcirHashedClientId+ (\ s a -> s{_hcirHashedClientId = a})++instance FromJSON HashClientIdResponse where+ parseJSON+ = withObject "HashClientIdResponse"+ (\ o ->+ HashClientIdResponse' <$>+ (o .:? "clientId") <*> (o .:? "webPropertyId") <*>+ (o .:? "kind" .!= "analytics#hashClientIdResponse")+ <*> (o .:? "hashedClientId"))++instance ToJSON HashClientIdResponse where+ toJSON HashClientIdResponse'{..}+ = object+ (catMaybes+ [("clientId" .=) <$> _hcirClientId,+ ("webPropertyId" .=) <$> _hcirWebPropertyId,+ Just ("kind" .= _hcirKind),+ ("hashedClientId" .=) <$> _hcirHashedClientId])++-- | Multi-Channel Funnels data for a given view (profile).+--+-- /See:/ 'mcfData' smart constructor.+data McfData =+ McfData'+ { _mdNextLink :: !(Maybe Text)+ , _mdSampleSpace :: !(Maybe (Textual Int64))+ , _mdItemsPerPage :: !(Maybe (Textual Int32))+ , _mdProFileInfo :: !(Maybe McfDataProFileInfo)+ , _mdKind :: !Text+ , _mdSampleSize :: !(Maybe (Textual Int64))+ , _mdRows :: !(Maybe [[McfDataRowsItemItem]])+ , _mdSelfLink :: !(Maybe Text)+ , _mdQuery :: !(Maybe McfDataQuery)+ , _mdColumnHeaders :: !(Maybe [McfDataColumnHeadersItem])+ , _mdId :: !(Maybe Text)+ , _mdTotalResults :: !(Maybe (Textual Int32))+ , _mdContainsSampledData :: !(Maybe Bool)+ , _mdTotalsForAllResults :: !(Maybe McfDataTotalsForAllResults)+ , _mdPreviousLink :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'McfData' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mdNextLink'+--+-- * 'mdSampleSpace'+--+-- * 'mdItemsPerPage'+--+-- * 'mdProFileInfo'+--+-- * 'mdKind'+--+-- * 'mdSampleSize'+--+-- * 'mdRows'+--+-- * 'mdSelfLink'+--+-- * 'mdQuery'+--+-- * 'mdColumnHeaders'+--+-- * 'mdId'+--+-- * 'mdTotalResults'+--+-- * 'mdContainsSampledData'+--+-- * 'mdTotalsForAllResults'+--+-- * 'mdPreviousLink'+mcfData+ :: McfData+mcfData =+ McfData'+ { _mdNextLink = Nothing+ , _mdSampleSpace = Nothing+ , _mdItemsPerPage = Nothing+ , _mdProFileInfo = Nothing+ , _mdKind = "analytics#mcfData"+ , _mdSampleSize = Nothing+ , _mdRows = Nothing+ , _mdSelfLink = Nothing+ , _mdQuery = Nothing+ , _mdColumnHeaders = Nothing+ , _mdId = Nothing+ , _mdTotalResults = Nothing+ , _mdContainsSampledData = Nothing+ , _mdTotalsForAllResults = Nothing+ , _mdPreviousLink = Nothing+ }+++-- | Link to next page for this Analytics data query.+mdNextLink :: Lens' McfData (Maybe Text)+mdNextLink+ = lens _mdNextLink (\ s a -> s{_mdNextLink = a})++-- | Total size of the sample space from which the samples were selected.+mdSampleSpace :: Lens' McfData (Maybe Int64)+mdSampleSpace+ = lens _mdSampleSpace+ (\ s a -> s{_mdSampleSpace = a})+ . mapping _Coerce++-- | The maximum number of rows the response can contain, regardless of the+-- actual number of rows returned. Its value ranges from 1 to 10,000 with a+-- value of 1000 by default, or otherwise specified by the max-results+-- query parameter.+mdItemsPerPage :: Lens' McfData (Maybe Int32)+mdItemsPerPage+ = lens _mdItemsPerPage+ (\ s a -> s{_mdItemsPerPage = a})+ . mapping _Coerce++-- | Information for the view (profile), for which the Analytics data was+-- requested.+mdProFileInfo :: Lens' McfData (Maybe McfDataProFileInfo)+mdProFileInfo+ = lens _mdProFileInfo+ (\ s a -> s{_mdProFileInfo = a})++-- | Resource type.+mdKind :: Lens' McfData Text+mdKind = lens _mdKind (\ s a -> s{_mdKind = a})++-- | The number of samples used to calculate the result.+mdSampleSize :: Lens' McfData (Maybe Int64)+mdSampleSize+ = lens _mdSampleSize (\ s a -> s{_mdSampleSize = a})+ . mapping _Coerce++-- | Analytics data rows, where each row contains a list of dimension values+-- followed by the metric values. The order of dimensions and metrics is+-- same as specified in the request.+mdRows :: Lens' McfData [[McfDataRowsItemItem]]+mdRows+ = lens _mdRows (\ s a -> s{_mdRows = a}) . _Default .+ _Coerce++-- | Link to this page.+mdSelfLink :: Lens' McfData (Maybe Text)+mdSelfLink+ = lens _mdSelfLink (\ s a -> s{_mdSelfLink = a})++-- | Analytics data request query parameters.+mdQuery :: Lens' McfData (Maybe McfDataQuery)+mdQuery = lens _mdQuery (\ s a -> s{_mdQuery = a})++-- | Column headers that list dimension names followed by the metric names.+-- The order of dimensions and metrics is same as specified in the request.+mdColumnHeaders :: Lens' McfData [McfDataColumnHeadersItem]+mdColumnHeaders+ = lens _mdColumnHeaders+ (\ s a -> s{_mdColumnHeaders = a})+ . _Default+ . _Coerce++-- | Unique ID for this data response.+mdId :: Lens' McfData (Maybe Text)+mdId = lens _mdId (\ s a -> s{_mdId = a})++-- | The total number of rows for the query, regardless of the number of rows+-- in the response.+mdTotalResults :: Lens' McfData (Maybe Int32)+mdTotalResults+ = lens _mdTotalResults+ (\ s a -> s{_mdTotalResults = a})+ . mapping _Coerce++-- | Determines if the Analytics data contains sampled data.+mdContainsSampledData :: Lens' McfData (Maybe Bool)+mdContainsSampledData+ = lens _mdContainsSampledData+ (\ s a -> s{_mdContainsSampledData = a})++-- | Total values for the requested metrics over all the results, not just+-- the results returned in this response. The order of the metric totals is+-- same as the metric order specified in the request.+mdTotalsForAllResults :: Lens' McfData (Maybe McfDataTotalsForAllResults)+mdTotalsForAllResults+ = lens _mdTotalsForAllResults+ (\ s a -> s{_mdTotalsForAllResults = a})++-- | Link to previous page for this Analytics data query.+mdPreviousLink :: Lens' McfData (Maybe Text)+mdPreviousLink+ = lens _mdPreviousLink+ (\ s a -> s{_mdPreviousLink = a})++instance FromJSON McfData where+ parseJSON+ = withObject "McfData"+ (\ o ->+ McfData' <$>+ (o .:? "nextLink") <*> (o .:? "sampleSpace") <*>+ (o .:? "itemsPerPage")+ <*> (o .:? "profileInfo")+ <*> (o .:? "kind" .!= "analytics#mcfData")+ <*> (o .:? "sampleSize")+ <*> (o .:? "rows" .!= mempty)+ <*> (o .:? "selfLink")+ <*> (o .:? "query")+ <*> (o .:? "columnHeaders" .!= mempty)+ <*> (o .:? "id")+ <*> (o .:? "totalResults")+ <*> (o .:? "containsSampledData")+ <*> (o .:? "totalsForAllResults")+ <*> (o .:? "previousLink"))++instance ToJSON McfData where+ toJSON McfData'{..}+ = object+ (catMaybes+ [("nextLink" .=) <$> _mdNextLink,+ ("sampleSpace" .=) <$> _mdSampleSpace,+ ("itemsPerPage" .=) <$> _mdItemsPerPage,+ ("profileInfo" .=) <$> _mdProFileInfo,+ Just ("kind" .= _mdKind),+ ("sampleSize" .=) <$> _mdSampleSize,+ ("rows" .=) <$> _mdRows,+ ("selfLink" .=) <$> _mdSelfLink,+ ("query" .=) <$> _mdQuery,+ ("columnHeaders" .=) <$> _mdColumnHeaders,+ ("id" .=) <$> _mdId,+ ("totalResults" .=) <$> _mdTotalResults,+ ("containsSampledData" .=) <$>+ _mdContainsSampledData,+ ("totalsForAllResults" .=) <$>+ _mdTotalsForAllResults,+ ("previousLink" .=) <$> _mdPreviousLink])++-- | JSON template for a user reference.+--+-- /See:/ 'userRef' smart constructor.+data UserRef =+ UserRef'+ { _urEmail :: !(Maybe Text)+ , _urKind :: !Text+ , _urId :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'UserRef' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'urEmail'+--+-- * 'urKind'+--+-- * 'urId'+userRef+ :: UserRef+userRef =+ UserRef' {_urEmail = Nothing, _urKind = "analytics#userRef", _urId = Nothing}+++-- | Email ID of this user.+urEmail :: Lens' UserRef (Maybe Text)+urEmail = lens _urEmail (\ s a -> s{_urEmail = a})++urKind :: Lens' UserRef Text+urKind = lens _urKind (\ s a -> s{_urKind = a})++-- | User ID.+urId :: Lens' UserRef (Maybe Text)+urId = lens _urId (\ s a -> s{_urId = a})++instance FromJSON UserRef where+ parseJSON+ = withObject "UserRef"+ (\ o ->+ UserRef' <$>+ (o .:? "email") <*>+ (o .:? "kind" .!= "analytics#userRef")+ <*> (o .:? "id"))++instance ToJSON UserRef where+ toJSON UserRef'{..}+ = object+ (catMaybes+ [("email" .=) <$> _urEmail, Just ("kind" .= _urKind),+ ("id" .=) <$> _urId])++-- | Details for the goal of the type VISIT_NUM_PAGES.+--+-- /See:/ 'goalVisitNumPagesDetails' smart constructor.+data GoalVisitNumPagesDetails =+ GoalVisitNumPagesDetails'+ { _gvnpdComparisonValue :: !(Maybe (Textual Int64))+ , _gvnpdComparisonType :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoalVisitNumPagesDetails' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gvnpdComparisonValue'+--+-- * 'gvnpdComparisonType'+goalVisitNumPagesDetails+ :: GoalVisitNumPagesDetails+goalVisitNumPagesDetails =+ GoalVisitNumPagesDetails'+ {_gvnpdComparisonValue = Nothing, _gvnpdComparisonType = Nothing}+++-- | Value used for this comparison.+gvnpdComparisonValue :: Lens' GoalVisitNumPagesDetails (Maybe Int64)+gvnpdComparisonValue+ = lens _gvnpdComparisonValue+ (\ s a -> s{_gvnpdComparisonValue = a})+ . mapping _Coerce++-- | Type of comparison. Possible values are LESS_THAN, GREATER_THAN, or+-- EQUAL.+gvnpdComparisonType :: Lens' GoalVisitNumPagesDetails (Maybe Text)+gvnpdComparisonType+ = lens _gvnpdComparisonType+ (\ s a -> s{_gvnpdComparisonType = a})++instance FromJSON GoalVisitNumPagesDetails where+ parseJSON+ = withObject "GoalVisitNumPagesDetails"+ (\ o ->+ GoalVisitNumPagesDetails' <$>+ (o .:? "comparisonValue") <*>+ (o .:? "comparisonType"))++instance ToJSON GoalVisitNumPagesDetails where+ toJSON GoalVisitNumPagesDetails'{..}+ = object+ (catMaybes+ [("comparisonValue" .=) <$> _gvnpdComparisonValue,+ ("comparisonType" .=) <$> _gvnpdComparisonType])++--+-- /See:/ 'realtimeDataColumnHeadersItem' smart constructor.+data RealtimeDataColumnHeadersItem =+ RealtimeDataColumnHeadersItem'+ { _rdchiColumnType :: !(Maybe Text)+ , _rdchiName :: !(Maybe Text)+ , _rdchiDataType :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'RealtimeDataColumnHeadersItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rdchiColumnType'+--+-- * 'rdchiName'+--+-- * 'rdchiDataType'+realtimeDataColumnHeadersItem+ :: RealtimeDataColumnHeadersItem+realtimeDataColumnHeadersItem =+ RealtimeDataColumnHeadersItem'+ {_rdchiColumnType = Nothing, _rdchiName = Nothing, _rdchiDataType = Nothing}+++-- | Column Type. Either DIMENSION or METRIC.+rdchiColumnType :: Lens' RealtimeDataColumnHeadersItem (Maybe Text)+rdchiColumnType+ = lens _rdchiColumnType+ (\ s a -> s{_rdchiColumnType = a})++-- | Column name.+rdchiName :: Lens' RealtimeDataColumnHeadersItem (Maybe Text)+rdchiName+ = lens _rdchiName (\ s a -> s{_rdchiName = a})++-- | Data type. Dimension column headers have only STRING as the data type.+-- Metric column headers have data types for metric values such as INTEGER,+-- DOUBLE, CURRENCY etc.+rdchiDataType :: Lens' RealtimeDataColumnHeadersItem (Maybe Text)+rdchiDataType+ = lens _rdchiDataType+ (\ s a -> s{_rdchiDataType = a})++instance FromJSON RealtimeDataColumnHeadersItem where+ parseJSON+ = withObject "RealtimeDataColumnHeadersItem"+ (\ o ->+ RealtimeDataColumnHeadersItem' <$>+ (o .:? "columnType") <*> (o .:? "name") <*>+ (o .:? "dataType"))++instance ToJSON RealtimeDataColumnHeadersItem where+ toJSON RealtimeDataColumnHeadersItem'{..}+ = object+ (catMaybes+ [("columnType" .=) <$> _rdchiColumnType,+ ("name" .=) <$> _rdchiName,+ ("dataType" .=) <$> _rdchiDataType])++-- | JSON template for a linked account.+--+-- /See:/ 'accountRef' smart constructor.+data AccountRef =+ AccountRef'+ { _arKind :: !Text+ , _arHref :: !(Maybe Text)+ , _arName :: !(Maybe Text)+ , _arId :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'AccountRef' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'arKind'+--+-- * 'arHref'+--+-- * 'arName'+--+-- * 'arId'+accountRef+ :: AccountRef+accountRef =+ AccountRef'+ { _arKind = "analytics#accountRef"+ , _arHref = Nothing+ , _arName = Nothing+ , _arId = Nothing+ }+++-- | Analytics account reference.+arKind :: Lens' AccountRef Text+arKind = lens _arKind (\ s a -> s{_arKind = a})++-- | Link for this account.+arHref :: Lens' AccountRef (Maybe Text)+arHref = lens _arHref (\ s a -> s{_arHref = a})++-- | Account name.+arName :: Lens' AccountRef (Maybe Text)+arName = lens _arName (\ s a -> s{_arName = a})++-- | Account ID.+arId :: Lens' AccountRef (Maybe Text)+arId = lens _arId (\ s a -> s{_arId = a})++instance FromJSON AccountRef where+ parseJSON+ = withObject "AccountRef"+ (\ o ->+ AccountRef' <$>+ (o .:? "kind" .!= "analytics#accountRef") <*>+ (o .:? "href")+ <*> (o .:? "name")+ <*> (o .:? "id"))++instance ToJSON AccountRef where+ toJSON AccountRef'{..}+ = object+ (catMaybes+ [Just ("kind" .= _arKind), ("href" .=) <$> _arHref,+ ("name" .=) <$> _arName, ("id" .=) <$> _arId])++-- | An entity Google Ads link collection provides a list of GA-Google Ads+-- links Each resource in this collection corresponds to a single link.+--+-- /See:/ 'entityAdWordsLinks' smart constructor.+data EntityAdWordsLinks =+ EntityAdWordsLinks'+ { _eawlNextLink :: !(Maybe Text)+ , _eawlItemsPerPage :: !(Maybe (Textual Int32))+ , _eawlKind :: !Text+ , _eawlItems :: !(Maybe [EntityAdWordsLink])+ , _eawlTotalResults :: !(Maybe (Textual Int32))+ , _eawlStartIndex :: !(Maybe (Textual Int32))+ , _eawlPreviousLink :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'EntityAdWordsLinks' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'eawlNextLink'+--+-- * 'eawlItemsPerPage'+--+-- * 'eawlKind'+--+-- * 'eawlItems'+--+-- * 'eawlTotalResults'+--+-- * 'eawlStartIndex'+--+-- * 'eawlPreviousLink'+entityAdWordsLinks+ :: EntityAdWordsLinks+entityAdWordsLinks =+ EntityAdWordsLinks'+ { _eawlNextLink = Nothing+ , _eawlItemsPerPage = Nothing+ , _eawlKind = "analytics#entityAdWordsLinks"+ , _eawlItems = Nothing+ , _eawlTotalResults = Nothing+ , _eawlStartIndex = Nothing+ , _eawlPreviousLink = Nothing+ }+++-- | Next link for this Google Ads link collection.+eawlNextLink :: Lens' EntityAdWordsLinks (Maybe Text)+eawlNextLink+ = lens _eawlNextLink (\ s a -> s{_eawlNextLink = a})++-- | The maximum number of entries the response can contain, regardless of+-- the actual number of entries returned. Its value ranges from 1 to 1000+-- with a value of 1000 by default, or otherwise specified by the+-- max-results query parameter.+eawlItemsPerPage :: Lens' EntityAdWordsLinks (Maybe Int32)+eawlItemsPerPage+ = lens _eawlItemsPerPage+ (\ s a -> s{_eawlItemsPerPage = a})+ . mapping _Coerce++-- | Collection type.+eawlKind :: Lens' EntityAdWordsLinks Text+eawlKind = lens _eawlKind (\ s a -> s{_eawlKind = a})++-- | A list of entity Google Ads links.+eawlItems :: Lens' EntityAdWordsLinks [EntityAdWordsLink]+eawlItems+ = lens _eawlItems (\ s a -> s{_eawlItems = a}) .+ _Default+ . _Coerce++-- | The total number of results for the query, regardless of the number of+-- results in the response.+eawlTotalResults :: Lens' EntityAdWordsLinks (Maybe Int32)+eawlTotalResults+ = lens _eawlTotalResults+ (\ s a -> s{_eawlTotalResults = a})+ . mapping _Coerce++-- | The starting index of the entries, which is 1 by default or otherwise+-- specified by the start-index query parameter.+eawlStartIndex :: Lens' EntityAdWordsLinks (Maybe Int32)+eawlStartIndex+ = lens _eawlStartIndex+ (\ s a -> s{_eawlStartIndex = a})+ . mapping _Coerce++-- | Previous link for this Google Ads link collection.+eawlPreviousLink :: Lens' EntityAdWordsLinks (Maybe Text)+eawlPreviousLink+ = lens _eawlPreviousLink+ (\ s a -> s{_eawlPreviousLink = a})++instance FromJSON EntityAdWordsLinks where+ parseJSON+ = withObject "EntityAdWordsLinks"+ (\ o ->+ EntityAdWordsLinks' <$>+ (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>+ (o .:? "kind" .!= "analytics#entityAdWordsLinks")+ <*> (o .:? "items" .!= mempty)+ <*> (o .:? "totalResults")+ <*> (o .:? "startIndex")+ <*> (o .:? "previousLink"))++instance ToJSON EntityAdWordsLinks where+ toJSON EntityAdWordsLinks'{..}+ = object+ (catMaybes+ [("nextLink" .=) <$> _eawlNextLink,+ ("itemsPerPage" .=) <$> _eawlItemsPerPage,+ Just ("kind" .= _eawlKind),+ ("items" .=) <$> _eawlItems,+ ("totalResults" .=) <$> _eawlTotalResults,+ ("startIndex" .=) <$> _eawlStartIndex,+ ("previousLink" .=) <$> _eawlPreviousLink])++-- | A view (profile) collection lists Analytics views (profiles) to which+-- the user has access. Each resource in the collection corresponds to a+-- single Analytics view (profile).+--+-- /See:/ 'proFiles' smart constructor.+data ProFiles =+ ProFiles'+ { _pfNextLink :: !(Maybe Text)+ , _pfItemsPerPage :: !(Maybe (Textual Int32))+ , _pfKind :: !Text+ , _pfUsername :: !(Maybe Text)+ , _pfItems :: !(Maybe [ProFile])+ , _pfTotalResults :: !(Maybe (Textual Int32))+ , _pfStartIndex :: !(Maybe (Textual Int32))+ , _pfPreviousLink :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ProFiles' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pfNextLink'+--+-- * 'pfItemsPerPage'+--+-- * 'pfKind'+--+-- * 'pfUsername'+--+-- * 'pfItems'+--+-- * 'pfTotalResults'+--+-- * 'pfStartIndex'+--+-- * 'pfPreviousLink'+proFiles+ :: ProFiles+proFiles =+ ProFiles'+ { _pfNextLink = Nothing+ , _pfItemsPerPage = Nothing+ , _pfKind = "analytics#profiles"+ , _pfUsername = Nothing+ , _pfItems = Nothing+ , _pfTotalResults = Nothing+ , _pfStartIndex = Nothing+ , _pfPreviousLink = Nothing+ }+++-- | Link to next page for this view (profile) collection.+pfNextLink :: Lens' ProFiles (Maybe Text)+pfNextLink+ = lens _pfNextLink (\ s a -> s{_pfNextLink = a})++-- | The maximum number of resources the response can contain, regardless of+-- the actual number of resources returned. Its value ranges from 1 to 1000+-- with a value of 1000 by default, or otherwise specified by the+-- max-results query parameter.+pfItemsPerPage :: Lens' ProFiles (Maybe Int32)+pfItemsPerPage+ = lens _pfItemsPerPage+ (\ s a -> s{_pfItemsPerPage = a})+ . mapping _Coerce++-- | Collection type.+pfKind :: Lens' ProFiles Text+pfKind = lens _pfKind (\ s a -> s{_pfKind = a})++-- | Email ID of the authenticated user+pfUsername :: Lens' ProFiles (Maybe Text)+pfUsername+ = lens _pfUsername (\ s a -> s{_pfUsername = a})++-- | A list of views (profiles).+pfItems :: Lens' ProFiles [ProFile]+pfItems+ = lens _pfItems (\ s a -> s{_pfItems = a}) . _Default+ . _Coerce++-- | The total number of results for the query, regardless of the number of+-- results in the response.+pfTotalResults :: Lens' ProFiles (Maybe Int32)+pfTotalResults+ = lens _pfTotalResults+ (\ s a -> s{_pfTotalResults = a})+ . mapping _Coerce++-- | The starting index of the resources, which is 1 by default or otherwise+-- specified by the start-index query parameter.+pfStartIndex :: Lens' ProFiles (Maybe Int32)+pfStartIndex+ = lens _pfStartIndex (\ s a -> s{_pfStartIndex = a})+ . mapping _Coerce++-- | Link to previous page for this view (profile) collection.+pfPreviousLink :: Lens' ProFiles (Maybe Text)+pfPreviousLink+ = lens _pfPreviousLink+ (\ s a -> s{_pfPreviousLink = a})++instance FromJSON ProFiles where+ parseJSON+ = withObject "ProFiles"+ (\ o ->+ ProFiles' <$>+ (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>+ (o .:? "kind" .!= "analytics#profiles")+ <*> (o .:? "username")+ <*> (o .:? "items" .!= mempty)+ <*> (o .:? "totalResults")+ <*> (o .:? "startIndex")+ <*> (o .:? "previousLink"))++instance ToJSON ProFiles where+ toJSON ProFiles'{..}+ = object+ (catMaybes+ [("nextLink" .=) <$> _pfNextLink,+ ("itemsPerPage" .=) <$> _pfItemsPerPage,+ Just ("kind" .= _pfKind),+ ("username" .=) <$> _pfUsername,+ ("items" .=) <$> _pfItems,+ ("totalResults" .=) <$> _pfTotalResults,+ ("startIndex" .=) <$> _pfStartIndex,+ ("previousLink" .=) <$> _pfPreviousLink])++-- | Request template for the delete upload data request.+--+-- /See:/ 'analyticsDataimportDeleteUploadDataRequest' smart constructor.+newtype AnalyticsDataimportDeleteUploadDataRequest =+ AnalyticsDataimportDeleteUploadDataRequest'+ { _addudrCustomDataImportUids :: Maybe [Text]+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'AnalyticsDataimportDeleteUploadDataRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'addudrCustomDataImportUids'+analyticsDataimportDeleteUploadDataRequest+ :: AnalyticsDataimportDeleteUploadDataRequest+analyticsDataimportDeleteUploadDataRequest =+ AnalyticsDataimportDeleteUploadDataRequest'+ {_addudrCustomDataImportUids = Nothing}+++-- | A list of upload UIDs.+addudrCustomDataImportUids :: Lens' AnalyticsDataimportDeleteUploadDataRequest [Text]+addudrCustomDataImportUids+ = lens _addudrCustomDataImportUids+ (\ s a -> s{_addudrCustomDataImportUids = a})+ . _Default+ . _Coerce++instance FromJSON+ AnalyticsDataimportDeleteUploadDataRequest+ where+ parseJSON+ = withObject+ "AnalyticsDataimportDeleteUploadDataRequest"+ (\ o ->+ AnalyticsDataimportDeleteUploadDataRequest' <$>+ (o .:? "customDataImportUids" .!= mempty))++instance ToJSON+ AnalyticsDataimportDeleteUploadDataRequest+ where+ toJSON+ AnalyticsDataimportDeleteUploadDataRequest'{..}+ = object+ (catMaybes+ [("customDataImportUids" .=) <$>+ _addudrCustomDataImportUids])++-- | JSON template for Analytics Entity Google Ads Link.+--+-- /See:/ 'entityAdWordsLink' smart constructor.+data EntityAdWordsLink =+ EntityAdWordsLink'+ { _entAdWordsAccounts :: !(Maybe [AdWordsAccount])+ , _entProFileIds :: !(Maybe [Text])+ , _entKind :: !Text+ , _entSelfLink :: !(Maybe Text)+ , _entName :: !(Maybe Text)+ , _entId :: !(Maybe Text)+ , _entEntity :: !(Maybe EntityAdWordsLinkEntity)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'EntityAdWordsLink' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'entAdWordsAccounts'+--+-- * 'entProFileIds'+--+-- * 'entKind'+--+-- * 'entSelfLink'+--+-- * 'entName'+--+-- * 'entId'+--+-- * 'entEntity'+entityAdWordsLink+ :: EntityAdWordsLink+entityAdWordsLink =+ EntityAdWordsLink'+ { _entAdWordsAccounts = Nothing+ , _entProFileIds = Nothing+ , _entKind = "analytics#entityAdWordsLink"+ , _entSelfLink = Nothing+ , _entName = Nothing+ , _entId = Nothing+ , _entEntity = Nothing+ }+++-- | A list of Google Ads client accounts. These cannot be MCC accounts. This+-- field is required when creating a Google Ads link. It cannot be empty.+entAdWordsAccounts :: Lens' EntityAdWordsLink [AdWordsAccount]+entAdWordsAccounts+ = lens _entAdWordsAccounts+ (\ s a -> s{_entAdWordsAccounts = a})+ . _Default+ . _Coerce++-- | IDs of linked Views (Profiles) represented as strings.+entProFileIds :: Lens' EntityAdWordsLink [Text]+entProFileIds+ = lens _entProFileIds+ (\ s a -> s{_entProFileIds = a})+ . _Default+ . _Coerce++-- | Resource type for entity Google Ads link.+entKind :: Lens' EntityAdWordsLink Text+entKind = lens _entKind (\ s a -> s{_entKind = a})++-- | URL link for this Google Analytics - Google Ads link.+entSelfLink :: Lens' EntityAdWordsLink (Maybe Text)+entSelfLink+ = lens _entSelfLink (\ s a -> s{_entSelfLink = a})++-- | Name of the link. This field is required when creating a Google Ads+-- link.+entName :: Lens' EntityAdWordsLink (Maybe Text)+entName = lens _entName (\ s a -> s{_entName = a})++-- | Entity Google Ads link ID+entId :: Lens' EntityAdWordsLink (Maybe Text)+entId = lens _entId (\ s a -> s{_entId = a})++-- | Web property being linked.+entEntity :: Lens' EntityAdWordsLink (Maybe EntityAdWordsLinkEntity)+entEntity+ = lens _entEntity (\ s a -> s{_entEntity = a})++instance FromJSON EntityAdWordsLink where+ parseJSON+ = withObject "EntityAdWordsLink"+ (\ o ->+ EntityAdWordsLink' <$>+ (o .:? "adWordsAccounts" .!= mempty) <*>+ (o .:? "profileIds" .!= mempty)+ <*> (o .:? "kind" .!= "analytics#entityAdWordsLink")+ <*> (o .:? "selfLink")+ <*> (o .:? "name")+ <*> (o .:? "id")+ <*> (o .:? "entity"))++instance ToJSON EntityAdWordsLink where+ toJSON EntityAdWordsLink'{..}+ = object+ (catMaybes+ [("adWordsAccounts" .=) <$> _entAdWordsAccounts,+ ("profileIds" .=) <$> _entProFileIds,+ Just ("kind" .= _entKind),+ ("selfLink" .=) <$> _entSelfLink,+ ("name" .=) <$> _entName, ("id" .=) <$> _entId,+ ("entity" .=) <$> _entEntity])++-- | Details for the filter of the type SEARCH_AND_REPLACE.+--+-- /See:/ 'filterSearchAndReplaceDetails' smart constructor.+data FilterSearchAndReplaceDetails =+ FilterSearchAndReplaceDetails'+ { _fsardFieldIndex :: !(Maybe (Textual Int32))+ , _fsardField :: !(Maybe Text)+ , _fsardSearchString :: !(Maybe Text)+ , _fsardReplaceString :: !(Maybe Text)+ , _fsardCaseSensitive :: !(Maybe Bool)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'FilterSearchAndReplaceDetails' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'fsardFieldIndex'+--+-- * 'fsardField'+--+-- * 'fsardSearchString'+--+-- * 'fsardReplaceString'+--+-- * 'fsardCaseSensitive'+filterSearchAndReplaceDetails+ :: FilterSearchAndReplaceDetails+filterSearchAndReplaceDetails =+ FilterSearchAndReplaceDetails'+ { _fsardFieldIndex = Nothing+ , _fsardField = Nothing+ , _fsardSearchString = Nothing+ , _fsardReplaceString = Nothing+ , _fsardCaseSensitive = Nothing+ }+++-- | The Index of the custom dimension. Required if field is a+-- CUSTOM_DIMENSION.+fsardFieldIndex :: Lens' FilterSearchAndReplaceDetails (Maybe Int32)+fsardFieldIndex+ = lens _fsardFieldIndex+ (\ s a -> s{_fsardFieldIndex = a})+ . mapping _Coerce++-- | Field to use in the filter.+fsardField :: Lens' FilterSearchAndReplaceDetails (Maybe Text)+fsardField+ = lens _fsardField (\ s a -> s{_fsardField = a})++-- | Term to search.+fsardSearchString :: Lens' FilterSearchAndReplaceDetails (Maybe Text)+fsardSearchString+ = lens _fsardSearchString+ (\ s a -> s{_fsardSearchString = a})++-- | Term to replace the search term with.+fsardReplaceString :: Lens' FilterSearchAndReplaceDetails (Maybe Text)+fsardReplaceString+ = lens _fsardReplaceString+ (\ s a -> s{_fsardReplaceString = a})++-- | Determines if the filter is case sensitive.+fsardCaseSensitive :: Lens' FilterSearchAndReplaceDetails (Maybe Bool)+fsardCaseSensitive+ = lens _fsardCaseSensitive+ (\ s a -> s{_fsardCaseSensitive = a})++instance FromJSON FilterSearchAndReplaceDetails where+ parseJSON+ = withObject "FilterSearchAndReplaceDetails"+ (\ o ->+ FilterSearchAndReplaceDetails' <$>+ (o .:? "fieldIndex") <*> (o .:? "field") <*>+ (o .:? "searchString")+ <*> (o .:? "replaceString")+ <*> (o .:? "caseSensitive"))++instance ToJSON FilterSearchAndReplaceDetails where+ toJSON FilterSearchAndReplaceDetails'{..}+ = object+ (catMaybes+ [("fieldIndex" .=) <$> _fsardFieldIndex,+ ("field" .=) <$> _fsardField,+ ("searchString" .=) <$> _fsardSearchString,+ ("replaceString" .=) <$> _fsardReplaceString,+ ("caseSensitive" .=) <$> _fsardCaseSensitive])++-- | Permissions the user has for this view (profile).+--+-- /See:/ 'proFilePermissions' smart constructor.+newtype ProFilePermissions =+ ProFilePermissions'+ { _pfpEffective :: Maybe [Text]+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ProFilePermissions' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pfpEffective'+proFilePermissions+ :: ProFilePermissions+proFilePermissions = ProFilePermissions' {_pfpEffective = Nothing}+++-- | All the permissions that the user has for this view (profile). These+-- include any implied permissions (e.g., EDIT implies VIEW) or inherited+-- permissions from the parent web property.+pfpEffective :: Lens' ProFilePermissions [Text]+pfpEffective+ = lens _pfpEffective (\ s a -> s{_pfpEffective = a})+ . _Default+ . _Coerce++instance FromJSON ProFilePermissions where+ parseJSON+ = withObject "ProFilePermissions"+ (\ o ->+ ProFilePermissions' <$>+ (o .:? "effective" .!= mempty))++instance ToJSON ProFilePermissions where+ toJSON ProFilePermissions'{..}+ = object+ (catMaybes [("effective" .=) <$> _pfpEffective])++-- | JSON template for an Analytics view (profile).+--+-- /See:/ 'proFile' smart constructor.+data ProFile =+ ProFile'+ { _pParentLink :: !(Maybe ProFileParentLink)+ , _pECommerceTracking :: !(Maybe Bool)+ , _pSiteSearchCategoryParameters :: !(Maybe Text)+ , _pWebPropertyId :: !(Maybe Text)+ , _pChildLink :: !(Maybe ProFileChildLink)+ , _pSiteSearchQueryParameters :: !(Maybe Text)+ , _pKind :: !Text+ , _pDefaultPage :: !(Maybe Text)+ , _pCreated :: !(Maybe DateTime')+ , _pSelfLink :: !(Maybe Text)+ , _pAccountId :: !(Maybe Text)+ , _pBotFilteringEnabled :: !(Maybe Bool)+ , _pName :: !(Maybe Text)+ , _pCurrency :: !(Maybe Text)+ , _pStarred :: !(Maybe Bool)+ , _pInternalWebPropertyId :: !(Maybe Text)+ , _pId :: !(Maybe Text)+ , _pUpdated :: !(Maybe DateTime')+ , _pPermissions :: !(Maybe ProFilePermissions)+ , _pWebsiteURL :: !(Maybe Text)+ , _pType :: !(Maybe Text)+ , _pStripSiteSearchCategoryParameters :: !(Maybe Bool)+ , _pTimezone :: !(Maybe Text)+ , _pExcludeQueryParameters :: !(Maybe Text)+ , _pEnhancedECommerceTracking :: !(Maybe Bool)+ , _pStripSiteSearchQueryParameters :: !(Maybe Bool)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ProFile' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pParentLink'+--+-- * 'pECommerceTracking'+--+-- * 'pSiteSearchCategoryParameters'+--+-- * 'pWebPropertyId'+--+-- * 'pChildLink'+--+-- * 'pSiteSearchQueryParameters'+--+-- * 'pKind'+--+-- * 'pDefaultPage'+--+-- * 'pCreated'+--+-- * 'pSelfLink'+--+-- * 'pAccountId'+--+-- * 'pBotFilteringEnabled'+--+-- * 'pName'+--+-- * 'pCurrency'+--+-- * 'pStarred'+--+-- * 'pInternalWebPropertyId'+--+-- * 'pId'+--+-- * 'pUpdated'+--+-- * 'pPermissions'+--+-- * 'pWebsiteURL'+--+-- * 'pType'+--+-- * 'pStripSiteSearchCategoryParameters'+--+-- * 'pTimezone'+--+-- * 'pExcludeQueryParameters'+--+-- * 'pEnhancedECommerceTracking'+--+-- * 'pStripSiteSearchQueryParameters'+proFile+ :: ProFile+proFile =+ ProFile'+ { _pParentLink = Nothing+ , _pECommerceTracking = Nothing+ , _pSiteSearchCategoryParameters = Nothing+ , _pWebPropertyId = Nothing+ , _pChildLink = Nothing+ , _pSiteSearchQueryParameters = Nothing+ , _pKind = "analytics#profile"+ , _pDefaultPage = Nothing+ , _pCreated = Nothing+ , _pSelfLink = Nothing+ , _pAccountId = Nothing+ , _pBotFilteringEnabled = Nothing+ , _pName = Nothing+ , _pCurrency = Nothing+ , _pStarred = Nothing+ , _pInternalWebPropertyId = Nothing+ , _pId = Nothing+ , _pUpdated = Nothing+ , _pPermissions = Nothing+ , _pWebsiteURL = Nothing+ , _pType = Nothing+ , _pStripSiteSearchCategoryParameters = Nothing+ , _pTimezone = Nothing+ , _pExcludeQueryParameters = Nothing+ , _pEnhancedECommerceTracking = Nothing+ , _pStripSiteSearchQueryParameters = Nothing+ }+++-- | Parent link for this view (profile). Points to the web property to which+-- this view (profile) belongs.+pParentLink :: Lens' ProFile (Maybe ProFileParentLink)+pParentLink+ = lens _pParentLink (\ s a -> s{_pParentLink = a})++-- | Indicates whether ecommerce tracking is enabled for this view (profile).+pECommerceTracking :: Lens' ProFile (Maybe Bool)+pECommerceTracking+ = lens _pECommerceTracking+ (\ s a -> s{_pECommerceTracking = a})++-- | Site search category parameters for this view (profile).+pSiteSearchCategoryParameters :: Lens' ProFile (Maybe Text)+pSiteSearchCategoryParameters+ = lens _pSiteSearchCategoryParameters+ (\ s a -> s{_pSiteSearchCategoryParameters = a})++-- | Web property ID of the form UA-XXXXX-YY to which this view (profile)+-- belongs.+pWebPropertyId :: Lens' ProFile (Maybe Text)+pWebPropertyId+ = lens _pWebPropertyId+ (\ s a -> s{_pWebPropertyId = a})++-- | Child link for this view (profile). Points to the list of goals for this+-- view (profile).+pChildLink :: Lens' ProFile (Maybe ProFileChildLink)+pChildLink+ = lens _pChildLink (\ s a -> s{_pChildLink = a})++-- | The site search query parameters for this view (profile).+pSiteSearchQueryParameters :: Lens' ProFile (Maybe Text)+pSiteSearchQueryParameters+ = lens _pSiteSearchQueryParameters+ (\ s a -> s{_pSiteSearchQueryParameters = a})++-- | Resource type for Analytics view (profile).+pKind :: Lens' ProFile Text+pKind = lens _pKind (\ s a -> s{_pKind = a})++-- | Default page for this view (profile).+pDefaultPage :: Lens' ProFile (Maybe Text)+pDefaultPage+ = lens _pDefaultPage (\ s a -> s{_pDefaultPage = a})++-- | Time this view (profile) was created.+pCreated :: Lens' ProFile (Maybe UTCTime)+pCreated+ = lens _pCreated (\ s a -> s{_pCreated = a}) .+ mapping _DateTime++-- | Link for this view (profile).+pSelfLink :: Lens' ProFile (Maybe Text)+pSelfLink+ = lens _pSelfLink (\ s a -> s{_pSelfLink = a})++-- | Account ID to which this view (profile) belongs.+pAccountId :: Lens' ProFile (Maybe Text)+pAccountId+ = lens _pAccountId (\ s a -> s{_pAccountId = a})++-- | Indicates whether bot filtering is enabled for this view (profile).+pBotFilteringEnabled :: Lens' ProFile (Maybe Bool)+pBotFilteringEnabled+ = lens _pBotFilteringEnabled+ (\ s a -> s{_pBotFilteringEnabled = a})++-- | Name of this view (profile).+pName :: Lens' ProFile (Maybe Text)+pName = lens _pName (\ s a -> s{_pName = a})++-- | The currency type associated with this view (profile), defaults to USD.+-- The supported values are: USD, JPY, EUR, GBP, AUD, KRW, BRL, CNY, DKK,+-- RUB, SEK, NOK, PLN, TRY, TWD, HKD, THB, IDR, ARS, MXN, VND, PHP, INR,+-- CHF, CAD, CZK, NZD, HUF, BGN, LTL, ZAR, UAH, AED, BOB, CLP, COP, EGP,+-- HRK, ILS, MAD, MYR, PEN, PKR, RON, RSD, SAR, SGD, VEF, LVL+pCurrency :: Lens' ProFile (Maybe Text)+pCurrency+ = lens _pCurrency (\ s a -> s{_pCurrency = a})++-- | Indicates whether this view (profile) is starred or not.+pStarred :: Lens' ProFile (Maybe Bool)+pStarred = lens _pStarred (\ s a -> s{_pStarred = a})++-- | Internal ID for the web property to which this view (profile) belongs.+pInternalWebPropertyId :: Lens' ProFile (Maybe Text)+pInternalWebPropertyId+ = lens _pInternalWebPropertyId+ (\ s a -> s{_pInternalWebPropertyId = a})++-- | View (Profile) ID.+pId :: Lens' ProFile (Maybe Text)+pId = lens _pId (\ s a -> s{_pId = a})++-- | Time this view (profile) was last modified.+pUpdated :: Lens' ProFile (Maybe UTCTime)+pUpdated+ = lens _pUpdated (\ s a -> s{_pUpdated = a}) .+ mapping _DateTime++-- | Permissions the user has for this view (profile).+pPermissions :: Lens' ProFile (Maybe ProFilePermissions)+pPermissions+ = lens _pPermissions (\ s a -> s{_pPermissions = a})++-- | Website URL for this view (profile).+pWebsiteURL :: Lens' ProFile (Maybe Text)+pWebsiteURL+ = lens _pWebsiteURL (\ s a -> s{_pWebsiteURL = a})++-- | View (Profile) type. Supported types: WEB or APP.+pType :: Lens' ProFile (Maybe Text)+pType = lens _pType (\ s a -> s{_pType = a})++-- | Whether or not Analytics will strip search category parameters from the+-- URLs in your reports.+pStripSiteSearchCategoryParameters :: Lens' ProFile (Maybe Bool)+pStripSiteSearchCategoryParameters+ = lens _pStripSiteSearchCategoryParameters+ (\ s a -> s{_pStripSiteSearchCategoryParameters = a})++-- | Time zone for which this view (profile) has been configured. Time zones+-- are identified by strings from the TZ database.+pTimezone :: Lens' ProFile (Maybe Text)+pTimezone+ = lens _pTimezone (\ s a -> s{_pTimezone = a})++-- | The query parameters that are excluded from this view (profile).+pExcludeQueryParameters :: Lens' ProFile (Maybe Text)+pExcludeQueryParameters+ = lens _pExcludeQueryParameters+ (\ s a -> s{_pExcludeQueryParameters = a})++-- | Indicates whether enhanced ecommerce tracking is enabled for this view+-- (profile). This property can only be enabled if ecommerce tracking is+-- enabled.+pEnhancedECommerceTracking :: Lens' ProFile (Maybe Bool)+pEnhancedECommerceTracking+ = lens _pEnhancedECommerceTracking+ (\ s a -> s{_pEnhancedECommerceTracking = a})++-- | Whether or not Analytics will strip search query parameters from the+-- URLs in your reports.+pStripSiteSearchQueryParameters :: Lens' ProFile (Maybe Bool)+pStripSiteSearchQueryParameters+ = lens _pStripSiteSearchQueryParameters+ (\ s a -> s{_pStripSiteSearchQueryParameters = a})++instance FromJSON ProFile where+ parseJSON+ = withObject "ProFile"+ (\ o ->+ ProFile' <$>+ (o .:? "parentLink") <*> (o .:? "eCommerceTracking")+ <*> (o .:? "siteSearchCategoryParameters")+ <*> (o .:? "webPropertyId")+ <*> (o .:? "childLink")+ <*> (o .:? "siteSearchQueryParameters")+ <*> (o .:? "kind" .!= "analytics#profile")+ <*> (o .:? "defaultPage")+ <*> (o .:? "created")+ <*> (o .:? "selfLink")+ <*> (o .:? "accountId")+ <*> (o .:? "botFilteringEnabled")+ <*> (o .:? "name")+ <*> (o .:? "currency")+ <*> (o .:? "starred")+ <*> (o .:? "internalWebPropertyId")+ <*> (o .:? "id")+ <*> (o .:? "updated")+ <*> (o .:? "permissions")+ <*> (o .:? "websiteUrl")+ <*> (o .:? "type")+ <*> (o .:? "stripSiteSearchCategoryParameters")+ <*> (o .:? "timezone")+ <*> (o .:? "excludeQueryParameters")+ <*> (o .:? "enhancedECommerceTracking")+ <*> (o .:? "stripSiteSearchQueryParameters"))++instance ToJSON ProFile where+ toJSON ProFile'{..}+ = object+ (catMaybes+ [("parentLink" .=) <$> _pParentLink,+ ("eCommerceTracking" .=) <$> _pECommerceTracking,+ ("siteSearchCategoryParameters" .=) <$>+ _pSiteSearchCategoryParameters,+ ("webPropertyId" .=) <$> _pWebPropertyId,+ ("childLink" .=) <$> _pChildLink,+ ("siteSearchQueryParameters" .=) <$>+ _pSiteSearchQueryParameters,+ Just ("kind" .= _pKind),+ ("defaultPage" .=) <$> _pDefaultPage,+ ("created" .=) <$> _pCreated,+ ("selfLink" .=) <$> _pSelfLink,+ ("accountId" .=) <$> _pAccountId,+ ("botFilteringEnabled" .=) <$> _pBotFilteringEnabled,+ ("name" .=) <$> _pName,+ ("currency" .=) <$> _pCurrency,+ ("starred" .=) <$> _pStarred,+ ("internalWebPropertyId" .=) <$>+ _pInternalWebPropertyId,+ ("id" .=) <$> _pId, ("updated" .=) <$> _pUpdated,+ ("permissions" .=) <$> _pPermissions,+ ("websiteUrl" .=) <$> _pWebsiteURL,+ ("type" .=) <$> _pType,+ ("stripSiteSearchCategoryParameters" .=) <$>+ _pStripSiteSearchCategoryParameters,+ ("timezone" .=) <$> _pTimezone,+ ("excludeQueryParameters" .=) <$>+ _pExcludeQueryParameters,+ ("enhancedECommerceTracking" .=) <$>+ _pEnhancedECommerceTracking,+ ("stripSiteSearchQueryParameters" .=) <$>+ _pStripSiteSearchQueryParameters])++-- | An AccountSummary collection lists a summary of accounts, properties and+-- views (profiles) to which the user has access. Each resource in the+-- collection corresponds to a single AccountSummary.+--+-- /See:/ 'accountSummaries' smart constructor.+data AccountSummaries =+ AccountSummaries'+ { _asNextLink :: !(Maybe Text)+ , _asItemsPerPage :: !(Maybe (Textual Int32))+ , _asKind :: !Text+ , _asUsername :: !(Maybe Text)+ , _asItems :: !(Maybe [AccountSummary])+ , _asTotalResults :: !(Maybe (Textual Int32))+ , _asStartIndex :: !(Maybe (Textual Int32))+ , _asPreviousLink :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'AccountSummaries' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'asNextLink'+--+-- * 'asItemsPerPage'+--+-- * 'asKind'+--+-- * 'asUsername'+--+-- * 'asItems'+--+-- * 'asTotalResults'+--+-- * 'asStartIndex'+--+-- * 'asPreviousLink'+accountSummaries+ :: AccountSummaries+accountSummaries =+ AccountSummaries'+ { _asNextLink = Nothing+ , _asItemsPerPage = Nothing+ , _asKind = "analytics#accountSummaries"+ , _asUsername = Nothing+ , _asItems = Nothing+ , _asTotalResults = Nothing+ , _asStartIndex = Nothing+ , _asPreviousLink = Nothing+ }+++-- | Link to next page for this AccountSummary collection.+asNextLink :: Lens' AccountSummaries (Maybe Text)+asNextLink+ = lens _asNextLink (\ s a -> s{_asNextLink = a})++-- | The maximum number of resources the response can contain, regardless of+-- the actual number of resources returned. Its value ranges from 1 to 1000+-- with a value of 1000 by default, or otherwise specified by the+-- max-results query parameter.+asItemsPerPage :: Lens' AccountSummaries (Maybe Int32)+asItemsPerPage+ = lens _asItemsPerPage+ (\ s a -> s{_asItemsPerPage = a})+ . mapping _Coerce++-- | Collection type.+asKind :: Lens' AccountSummaries Text+asKind = lens _asKind (\ s a -> s{_asKind = a})++-- | Email ID of the authenticated user+asUsername :: Lens' AccountSummaries (Maybe Text)+asUsername+ = lens _asUsername (\ s a -> s{_asUsername = a})++-- | A list of AccountSummaries.+asItems :: Lens' AccountSummaries [AccountSummary]+asItems+ = lens _asItems (\ s a -> s{_asItems = a}) . _Default+ . _Coerce++-- | The total number of results for the query, regardless of the number of+-- results in the response.+asTotalResults :: Lens' AccountSummaries (Maybe Int32)+asTotalResults+ = lens _asTotalResults+ (\ s a -> s{_asTotalResults = a})+ . mapping _Coerce++-- | The starting index of the resources, which is 1 by default or otherwise+-- specified by the start-index query parameter.+asStartIndex :: Lens' AccountSummaries (Maybe Int32)+asStartIndex+ = lens _asStartIndex (\ s a -> s{_asStartIndex = a})+ . mapping _Coerce++-- | Link to previous page for this AccountSummary collection.+asPreviousLink :: Lens' AccountSummaries (Maybe Text)+asPreviousLink+ = lens _asPreviousLink+ (\ s a -> s{_asPreviousLink = a})++instance FromJSON AccountSummaries where+ parseJSON+ = withObject "AccountSummaries"+ (\ o ->+ AccountSummaries' <$>+ (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>+ (o .:? "kind" .!= "analytics#accountSummaries")+ <*> (o .:? "username")+ <*> (o .:? "items" .!= mempty)+ <*> (o .:? "totalResults")+ <*> (o .:? "startIndex")+ <*> (o .:? "previousLink"))++instance ToJSON AccountSummaries where+ toJSON AccountSummaries'{..}+ = object+ (catMaybes+ [("nextLink" .=) <$> _asNextLink,+ ("itemsPerPage" .=) <$> _asItemsPerPage,+ Just ("kind" .= _asKind),+ ("username" .=) <$> _asUsername,+ ("items" .=) <$> _asItems,+ ("totalResults" .=) <$> _asTotalResults,+ ("startIndex" .=) <$> _asStartIndex,+ ("previousLink" .=) <$> _asPreviousLink])++-- | Details for the goal of the type EVENT.+--+-- /See:/ 'goalEventDetails' smart constructor.+data GoalEventDetails =+ GoalEventDetails'+ { _gedUseEventValue :: !(Maybe Bool)+ , _gedEventConditions :: !(Maybe [GoalEventDetailsEventConditionsItem])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoalEventDetails' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gedUseEventValue'+--+-- * 'gedEventConditions'+goalEventDetails+ :: GoalEventDetails+goalEventDetails =+ GoalEventDetails' {_gedUseEventValue = Nothing, _gedEventConditions = Nothing}+++-- | Determines if the event value should be used as the value for this goal.+gedUseEventValue :: Lens' GoalEventDetails (Maybe Bool)+gedUseEventValue+ = lens _gedUseEventValue+ (\ s a -> s{_gedUseEventValue = a})++-- | List of event conditions.+gedEventConditions :: Lens' GoalEventDetails [GoalEventDetailsEventConditionsItem]+gedEventConditions+ = lens _gedEventConditions+ (\ s a -> s{_gedEventConditions = a})+ . _Default+ . _Coerce++instance FromJSON GoalEventDetails where+ parseJSON+ = withObject "GoalEventDetails"+ (\ o ->+ GoalEventDetails' <$>+ (o .:? "useEventValue") <*>+ (o .:? "eventConditions" .!= mempty))++instance ToJSON GoalEventDetails where+ toJSON GoalEventDetails'{..}+ = object+ (catMaybes+ [("useEventValue" .=) <$> _gedUseEventValue,+ ("eventConditions" .=) <$> _gedEventConditions])++-- | JSON template for an Analytics WebPropertySummary. WebPropertySummary+-- returns basic information (i.e., summary) for a web property.+--+-- /See:/ 'webPropertySummary' smart constructor.+data WebPropertySummary =+ WebPropertySummary'+ { _wpsKind :: !Text+ , _wpsProFiles :: !(Maybe [ProFileSummary])+ , _wpsName :: !(Maybe Text)+ , _wpsStarred :: !(Maybe Bool)+ , _wpsInternalWebPropertyId :: !(Maybe Text)+ , _wpsId :: !(Maybe Text)+ , _wpsWebsiteURL :: !(Maybe Text)+ , _wpsLevel :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'WebPropertySummary' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'wpsKind'+--+-- * 'wpsProFiles'+--+-- * 'wpsName'+--+-- * 'wpsStarred'+--+-- * 'wpsInternalWebPropertyId'+--+-- * 'wpsId'+--+-- * 'wpsWebsiteURL'+--+-- * 'wpsLevel'+webPropertySummary+ :: WebPropertySummary+webPropertySummary =+ WebPropertySummary'+ { _wpsKind = "analytics#webPropertySummary"+ , _wpsProFiles = Nothing+ , _wpsName = Nothing+ , _wpsStarred = Nothing+ , _wpsInternalWebPropertyId = Nothing+ , _wpsId = Nothing+ , _wpsWebsiteURL = Nothing+ , _wpsLevel = Nothing+ }+++-- | Resource type for Analytics WebPropertySummary.+wpsKind :: Lens' WebPropertySummary Text+wpsKind = lens _wpsKind (\ s a -> s{_wpsKind = a})++-- | List of profiles under this web property.+wpsProFiles :: Lens' WebPropertySummary [ProFileSummary]+wpsProFiles+ = lens _wpsProFiles (\ s a -> s{_wpsProFiles = a}) .+ _Default+ . _Coerce++-- | Web property name.+wpsName :: Lens' WebPropertySummary (Maybe Text)+wpsName = lens _wpsName (\ s a -> s{_wpsName = a})++-- | Indicates whether this web property is starred or not.+wpsStarred :: Lens' WebPropertySummary (Maybe Bool)+wpsStarred+ = lens _wpsStarred (\ s a -> s{_wpsStarred = a})++-- | Internal ID for this web property.+wpsInternalWebPropertyId :: Lens' WebPropertySummary (Maybe Text)+wpsInternalWebPropertyId+ = lens _wpsInternalWebPropertyId+ (\ s a -> s{_wpsInternalWebPropertyId = a})++-- | Web property ID of the form UA-XXXXX-YY.+wpsId :: Lens' WebPropertySummary (Maybe Text)+wpsId = lens _wpsId (\ s a -> s{_wpsId = a})++-- | Website url for this web property.+wpsWebsiteURL :: Lens' WebPropertySummary (Maybe Text)+wpsWebsiteURL+ = lens _wpsWebsiteURL+ (\ s a -> s{_wpsWebsiteURL = a})++-- | Level for this web property. Possible values are STANDARD or PREMIUM.+wpsLevel :: Lens' WebPropertySummary (Maybe Text)+wpsLevel = lens _wpsLevel (\ s a -> s{_wpsLevel = a})++instance FromJSON WebPropertySummary where+ parseJSON+ = withObject "WebPropertySummary"+ (\ o ->+ WebPropertySummary' <$>+ (o .:? "kind" .!= "analytics#webPropertySummary") <*>+ (o .:? "profiles" .!= mempty)+ <*> (o .:? "name")+ <*> (o .:? "starred")+ <*> (o .:? "internalWebPropertyId")+ <*> (o .:? "id")+ <*> (o .:? "websiteUrl")+ <*> (o .:? "level"))++instance ToJSON WebPropertySummary where+ toJSON WebPropertySummary'{..}+ = object+ (catMaybes+ [Just ("kind" .= _wpsKind),+ ("profiles" .=) <$> _wpsProFiles,+ ("name" .=) <$> _wpsName,+ ("starred" .=) <$> _wpsStarred,+ ("internalWebPropertyId" .=) <$>+ _wpsInternalWebPropertyId,+ ("id" .=) <$> _wpsId,+ ("websiteUrl" .=) <$> _wpsWebsiteURL,+ ("level" .=) <$> _wpsLevel])++-- | A filter collection lists filters created by users in an Analytics+-- account. Each resource in the collection corresponds to a filter.+--+-- /See:/ 'filters' smart constructor.+data Filters =+ Filters'+ { _fNextLink :: !(Maybe Text)+ , _fItemsPerPage :: !(Maybe (Textual Int32))+ , _fKind :: !Text+ , _fUsername :: !(Maybe Text)+ , _fItems :: !(Maybe [Filter])+ , _fTotalResults :: !(Maybe (Textual Int32))+ , _fStartIndex :: !(Maybe (Textual Int32))+ , _fPreviousLink :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Filters' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'fNextLink'+--+-- * 'fItemsPerPage'+--+-- * 'fKind'+--+-- * 'fUsername'+--+-- * 'fItems'+--+-- * 'fTotalResults'+--+-- * 'fStartIndex'+--+-- * 'fPreviousLink'+filters+ :: Filters+filters =+ Filters'+ { _fNextLink = Nothing+ , _fItemsPerPage = Nothing+ , _fKind = "analytics#filters"+ , _fUsername = Nothing+ , _fItems = Nothing+ , _fTotalResults = Nothing+ , _fStartIndex = Nothing+ , _fPreviousLink = Nothing+ }+++-- | Link to next page for this filter collection.+fNextLink :: Lens' Filters (Maybe Text)+fNextLink+ = lens _fNextLink (\ s a -> s{_fNextLink = a})++-- | The maximum number of resources the response can contain, regardless of+-- the actual number of resources returned. Its value ranges from 1 to+-- 1,000 with a value of 1000 by default, or otherwise specified by the+-- max-results query parameter.+fItemsPerPage :: Lens' Filters (Maybe Int32)+fItemsPerPage+ = lens _fItemsPerPage+ (\ s a -> s{_fItemsPerPage = a})+ . mapping _Coerce++-- | Collection type.+fKind :: Lens' Filters Text+fKind = lens _fKind (\ s a -> s{_fKind = a})++-- | Email ID of the authenticated user+fUsername :: Lens' Filters (Maybe Text)+fUsername+ = lens _fUsername (\ s a -> s{_fUsername = a})++-- | A list of filters.+fItems :: Lens' Filters [Filter]+fItems+ = lens _fItems (\ s a -> s{_fItems = a}) . _Default .+ _Coerce++-- | The total number of results for the query, regardless of the number of+-- results in the response.+fTotalResults :: Lens' Filters (Maybe Int32)+fTotalResults+ = lens _fTotalResults+ (\ s a -> s{_fTotalResults = a})+ . mapping _Coerce++-- | The starting index of the resources, which is 1 by default or otherwise+-- specified by the start-index query parameter.+fStartIndex :: Lens' Filters (Maybe Int32)+fStartIndex+ = lens _fStartIndex (\ s a -> s{_fStartIndex = a}) .+ mapping _Coerce++-- | Link to previous page for this filter collection.+fPreviousLink :: Lens' Filters (Maybe Text)+fPreviousLink+ = lens _fPreviousLink+ (\ s a -> s{_fPreviousLink = a})++instance FromJSON Filters where+ parseJSON+ = withObject "Filters"+ (\ o ->+ Filters' <$>+ (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>+ (o .:? "kind" .!= "analytics#filters")+ <*> (o .:? "username")+ <*> (o .:? "items" .!= mempty)+ <*> (o .:? "totalResults")+ <*> (o .:? "startIndex")+ <*> (o .:? "previousLink"))++instance ToJSON Filters where+ toJSON Filters'{..}+ = object+ (catMaybes+ [("nextLink" .=) <$> _fNextLink,+ ("itemsPerPage" .=) <$> _fItemsPerPage,+ Just ("kind" .= _fKind),+ ("username" .=) <$> _fUsername,+ ("items" .=) <$> _fItems,+ ("totalResults" .=) <$> _fTotalResults,+ ("startIndex" .=) <$> _fStartIndex,+ ("previousLink" .=) <$> _fPreviousLink])++-- | Analytics data for a given view (profile).+--+-- /See:/ 'gaData' smart constructor.+data GaData =+ GaData'+ { _gdNextLink :: !(Maybe Text)+ , _gdSampleSpace :: !(Maybe (Textual Int64))+ , _gdItemsPerPage :: !(Maybe (Textual Int32))+ , _gdProFileInfo :: !(Maybe GaDataProFileInfo)+ , _gdKind :: !Text+ , _gdSampleSize :: !(Maybe (Textual Int64))+ , _gdRows :: !(Maybe [[Text]])+ , _gdSelfLink :: !(Maybe Text)+ , _gdQuery :: !(Maybe GaDataQuery)+ , _gdColumnHeaders :: !(Maybe [GaDataColumnHeadersItem])+ , _gdId :: !(Maybe Text)+ , _gdTotalResults :: !(Maybe (Textual Int32))+ , _gdDataLastRefreshed :: !(Maybe (Textual Int64))+ , _gdDataTable :: !(Maybe GaDataDataTable)+ , _gdContainsSampledData :: !(Maybe Bool)+ , _gdTotalsForAllResults :: !(Maybe GaDataTotalsForAllResults)+ , _gdPreviousLink :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GaData' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gdNextLink'+--+-- * 'gdSampleSpace'+--+-- * 'gdItemsPerPage'+--+-- * 'gdProFileInfo'+--+-- * 'gdKind'+--+-- * 'gdSampleSize'+--+-- * 'gdRows'+--+-- * 'gdSelfLink'+--+-- * 'gdQuery'+--+-- * 'gdColumnHeaders'+--+-- * 'gdId'+--+-- * 'gdTotalResults'+--+-- * 'gdDataLastRefreshed'+--+-- * 'gdDataTable'+--+-- * 'gdContainsSampledData'+--+-- * 'gdTotalsForAllResults'+--+-- * 'gdPreviousLink'+gaData+ :: GaData+gaData =+ GaData'+ { _gdNextLink = Nothing+ , _gdSampleSpace = Nothing+ , _gdItemsPerPage = Nothing+ , _gdProFileInfo = Nothing+ , _gdKind = "analytics#gaData"+ , _gdSampleSize = Nothing+ , _gdRows = Nothing+ , _gdSelfLink = Nothing+ , _gdQuery = Nothing+ , _gdColumnHeaders = Nothing+ , _gdId = Nothing+ , _gdTotalResults = Nothing+ , _gdDataLastRefreshed = Nothing+ , _gdDataTable = Nothing+ , _gdContainsSampledData = Nothing+ , _gdTotalsForAllResults = Nothing+ , _gdPreviousLink = Nothing+ }+++-- | Link to next page for this Analytics data query.+gdNextLink :: Lens' GaData (Maybe Text)+gdNextLink+ = lens _gdNextLink (\ s a -> s{_gdNextLink = a})++-- | Total size of the sample space from which the samples were selected.+gdSampleSpace :: Lens' GaData (Maybe Int64)+gdSampleSpace+ = lens _gdSampleSpace+ (\ s a -> s{_gdSampleSpace = a})+ . mapping _Coerce++-- | The maximum number of rows the response can contain, regardless of the+-- actual number of rows returned. Its value ranges from 1 to 10,000 with a+-- value of 1000 by default, or otherwise specified by the max-results+-- query parameter.+gdItemsPerPage :: Lens' GaData (Maybe Int32)+gdItemsPerPage+ = lens _gdItemsPerPage+ (\ s a -> s{_gdItemsPerPage = a})+ . mapping _Coerce++-- | Information for the view (profile), for which the Analytics data was+-- requested.+gdProFileInfo :: Lens' GaData (Maybe GaDataProFileInfo)+gdProFileInfo+ = lens _gdProFileInfo+ (\ s a -> s{_gdProFileInfo = a})++-- | Resource type.+gdKind :: Lens' GaData Text+gdKind = lens _gdKind (\ s a -> s{_gdKind = a})++-- | The number of samples used to calculate the result.+gdSampleSize :: Lens' GaData (Maybe Int64)+gdSampleSize+ = lens _gdSampleSize (\ s a -> s{_gdSampleSize = a})+ . mapping _Coerce++-- | Analytics data rows, where each row contains a list of dimension values+-- followed by the metric values. The order of dimensions and metrics is+-- same as specified in the request.+gdRows :: Lens' GaData [[Text]]+gdRows+ = lens _gdRows (\ s a -> s{_gdRows = a}) . _Default .+ _Coerce++-- | Link to this page.+gdSelfLink :: Lens' GaData (Maybe Text)+gdSelfLink+ = lens _gdSelfLink (\ s a -> s{_gdSelfLink = a})++-- | Analytics data request query parameters.+gdQuery :: Lens' GaData (Maybe GaDataQuery)+gdQuery = lens _gdQuery (\ s a -> s{_gdQuery = a})++-- | Column headers that list dimension names followed by the metric names.+-- The order of dimensions and metrics is same as specified in the request.+gdColumnHeaders :: Lens' GaData [GaDataColumnHeadersItem]+gdColumnHeaders+ = lens _gdColumnHeaders+ (\ s a -> s{_gdColumnHeaders = a})+ . _Default+ . _Coerce++-- | Unique ID for this data response.+gdId :: Lens' GaData (Maybe Text)+gdId = lens _gdId (\ s a -> s{_gdId = a})++-- | The total number of rows for the query, regardless of the number of rows+-- in the response.+gdTotalResults :: Lens' GaData (Maybe Int32)+gdTotalResults+ = lens _gdTotalResults+ (\ s a -> s{_gdTotalResults = a})+ . mapping _Coerce++-- | The last refreshed time in seconds for Analytics data.+gdDataLastRefreshed :: Lens' GaData (Maybe Int64)+gdDataLastRefreshed+ = lens _gdDataLastRefreshed+ (\ s a -> s{_gdDataLastRefreshed = a})+ . mapping _Coerce++gdDataTable :: Lens' GaData (Maybe GaDataDataTable)+gdDataTable+ = lens _gdDataTable (\ s a -> s{_gdDataTable = a})++-- | Determines if Analytics data contains samples.+gdContainsSampledData :: Lens' GaData (Maybe Bool)+gdContainsSampledData+ = lens _gdContainsSampledData+ (\ s a -> s{_gdContainsSampledData = a})++-- | Total values for the requested metrics over all the results, not just+-- the results returned in this response. The order of the metric totals is+-- same as the metric order specified in the request.+gdTotalsForAllResults :: Lens' GaData (Maybe GaDataTotalsForAllResults)+gdTotalsForAllResults+ = lens _gdTotalsForAllResults+ (\ s a -> s{_gdTotalsForAllResults = a})++-- | Link to previous page for this Analytics data query.+gdPreviousLink :: Lens' GaData (Maybe Text)+gdPreviousLink+ = lens _gdPreviousLink+ (\ s a -> s{_gdPreviousLink = a})++instance FromJSON GaData where+ parseJSON+ = withObject "GaData"+ (\ o ->+ GaData' <$>+ (o .:? "nextLink") <*> (o .:? "sampleSpace") <*>+ (o .:? "itemsPerPage")+ <*> (o .:? "profileInfo")+ <*> (o .:? "kind" .!= "analytics#gaData")+ <*> (o .:? "sampleSize")+ <*> (o .:? "rows" .!= mempty)+ <*> (o .:? "selfLink")+ <*> (o .:? "query")+ <*> (o .:? "columnHeaders" .!= mempty)+ <*> (o .:? "id")+ <*> (o .:? "totalResults")+ <*> (o .:? "dataLastRefreshed")+ <*> (o .:? "dataTable")+ <*> (o .:? "containsSampledData")+ <*> (o .:? "totalsForAllResults")+ <*> (o .:? "previousLink"))++instance ToJSON GaData where+ toJSON GaData'{..}+ = object+ (catMaybes+ [("nextLink" .=) <$> _gdNextLink,+ ("sampleSpace" .=) <$> _gdSampleSpace,+ ("itemsPerPage" .=) <$> _gdItemsPerPage,+ ("profileInfo" .=) <$> _gdProFileInfo,+ Just ("kind" .= _gdKind),+ ("sampleSize" .=) <$> _gdSampleSize,+ ("rows" .=) <$> _gdRows,+ ("selfLink" .=) <$> _gdSelfLink,+ ("query" .=) <$> _gdQuery,+ ("columnHeaders" .=) <$> _gdColumnHeaders,+ ("id" .=) <$> _gdId,+ ("totalResults" .=) <$> _gdTotalResults,+ ("dataLastRefreshed" .=) <$> _gdDataLastRefreshed,+ ("dataTable" .=) <$> _gdDataTable,+ ("containsSampledData" .=) <$>+ _gdContainsSampledData,+ ("totalsForAllResults" .=) <$>+ _gdTotalsForAllResults,+ ("previousLink" .=) <$> _gdPreviousLink])++-- | Total values for the requested metrics over all the results, not just+-- the results returned in this response. The order of the metric totals is+-- same as the metric order specified in the request.+--+-- /See:/ 'realtimeDataTotalsForAllResults' smart constructor.+newtype RealtimeDataTotalsForAllResults =+ RealtimeDataTotalsForAllResults'+ { _rdtfarAddtional :: HashMap Text Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'RealtimeDataTotalsForAllResults' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rdtfarAddtional'+realtimeDataTotalsForAllResults+ :: HashMap Text Text -- ^ 'rdtfarAddtional'+ -> RealtimeDataTotalsForAllResults+realtimeDataTotalsForAllResults pRdtfarAddtional_ =+ RealtimeDataTotalsForAllResults'+ {_rdtfarAddtional = _Coerce # pRdtfarAddtional_}+++-- | Key-value pair for the total value of a metric. Key is the metric name+-- and the value is the total value for that metric.+rdtfarAddtional :: Lens' RealtimeDataTotalsForAllResults (HashMap Text Text)+rdtfarAddtional+ = lens _rdtfarAddtional+ (\ s a -> s{_rdtfarAddtional = a})+ . _Coerce++instance FromJSON RealtimeDataTotalsForAllResults+ where+ parseJSON+ = withObject "RealtimeDataTotalsForAllResults"+ (\ o ->+ RealtimeDataTotalsForAllResults' <$>+ (parseJSONObject o))++instance ToJSON RealtimeDataTotalsForAllResults where+ toJSON = toJSON . _rdtfarAddtional++-- | JSON template for an Analytics custom data source.+--+-- /See:/ 'customDataSource' smart constructor.+data CustomDataSource =+ CustomDataSource'+ { _cParentLink :: !(Maybe CustomDataSourceParentLink)+ , _cWebPropertyId :: !(Maybe Text)+ , _cChildLink :: !(Maybe CustomDataSourceChildLink)+ , _cKind :: !Text+ , _cCreated :: !(Maybe DateTime')+ , _cUploadType :: !(Maybe Text)+ , _cSchema :: !(Maybe [Text])+ , _cImportBehavior :: !(Maybe Text)+ , _cSelfLink :: !(Maybe Text)+ , _cAccountId :: !(Maybe Text)+ , _cName :: !(Maybe Text)+ , _cId :: !(Maybe Text)+ , _cUpdated :: !(Maybe DateTime')+ , _cType :: !(Maybe Text)+ , _cDescription :: !(Maybe Text)+ , _cProFilesLinked :: !(Maybe [Text])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'CustomDataSource' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cParentLink'+--+-- * 'cWebPropertyId'+--+-- * 'cChildLink'+--+-- * 'cKind'+--+-- * 'cCreated'+--+-- * 'cUploadType'+--+-- * 'cSchema'+--+-- * 'cImportBehavior'+--+-- * 'cSelfLink'+--+-- * 'cAccountId'+--+-- * 'cName'+--+-- * 'cId'+--+-- * 'cUpdated'+--+-- * 'cType'+--+-- * 'cDescription'+--+-- * 'cProFilesLinked'+customDataSource+ :: CustomDataSource+customDataSource =+ CustomDataSource'+ { _cParentLink = Nothing+ , _cWebPropertyId = Nothing+ , _cChildLink = Nothing+ , _cKind = "analytics#customDataSource"+ , _cCreated = Nothing+ , _cUploadType = Nothing+ , _cSchema = Nothing+ , _cImportBehavior = Nothing+ , _cSelfLink = Nothing+ , _cAccountId = Nothing+ , _cName = Nothing+ , _cId = Nothing+ , _cUpdated = Nothing+ , _cType = Nothing+ , _cDescription = Nothing+ , _cProFilesLinked = Nothing+ }+++-- | Parent link for this custom data source. Points to the web property to+-- which this custom data source belongs.+cParentLink :: Lens' CustomDataSource (Maybe CustomDataSourceParentLink)+cParentLink+ = lens _cParentLink (\ s a -> s{_cParentLink = a})++-- | Web property ID of the form UA-XXXXX-YY to which this custom data source+-- belongs.+cWebPropertyId :: Lens' CustomDataSource (Maybe Text)+cWebPropertyId+ = lens _cWebPropertyId+ (\ s a -> s{_cWebPropertyId = a})++cChildLink :: Lens' CustomDataSource (Maybe CustomDataSourceChildLink)+cChildLink+ = lens _cChildLink (\ s a -> s{_cChildLink = a})++-- | Resource type for Analytics custom data source.+cKind :: Lens' CustomDataSource Text+cKind = lens _cKind (\ s a -> s{_cKind = a})++-- | Time this custom data source was created.+cCreated :: Lens' CustomDataSource (Maybe UTCTime)+cCreated+ = lens _cCreated (\ s a -> s{_cCreated = a}) .+ mapping _DateTime++-- | Upload type of the custom data source.+cUploadType :: Lens' CustomDataSource (Maybe Text)+cUploadType+ = lens _cUploadType (\ s a -> s{_cUploadType = a})++-- | Collection of schema headers of the custom data source.+cSchema :: Lens' CustomDataSource [Text]+cSchema+ = lens _cSchema (\ s a -> s{_cSchema = a}) . _Default+ . _Coerce++cImportBehavior :: Lens' CustomDataSource (Maybe Text)+cImportBehavior+ = lens _cImportBehavior+ (\ s a -> s{_cImportBehavior = a})++-- | Link for this Analytics custom data source.+cSelfLink :: Lens' CustomDataSource (Maybe Text)+cSelfLink+ = lens _cSelfLink (\ s a -> s{_cSelfLink = a})++-- | Account ID to which this custom data source belongs.+cAccountId :: Lens' CustomDataSource (Maybe Text)+cAccountId+ = lens _cAccountId (\ s a -> s{_cAccountId = a})++-- | Name of this custom data source.+cName :: Lens' CustomDataSource (Maybe Text)+cName = lens _cName (\ s a -> s{_cName = a})++-- | Custom data source ID.+cId :: Lens' CustomDataSource (Maybe Text)+cId = lens _cId (\ s a -> s{_cId = a})++-- | Time this custom data source was last modified.+cUpdated :: Lens' CustomDataSource (Maybe UTCTime)+cUpdated+ = lens _cUpdated (\ s a -> s{_cUpdated = a}) .+ mapping _DateTime++-- | Type of the custom data source.+cType :: Lens' CustomDataSource (Maybe Text)+cType = lens _cType (\ s a -> s{_cType = a})++-- | Description of custom data source.+cDescription :: Lens' CustomDataSource (Maybe Text)+cDescription+ = lens _cDescription (\ s a -> s{_cDescription = a})++-- | IDs of views (profiles) linked to the custom data source.+cProFilesLinked :: Lens' CustomDataSource [Text]+cProFilesLinked+ = lens _cProFilesLinked+ (\ s a -> s{_cProFilesLinked = a})+ . _Default+ . _Coerce++instance FromJSON CustomDataSource where+ parseJSON+ = withObject "CustomDataSource"+ (\ o ->+ CustomDataSource' <$>+ (o .:? "parentLink") <*> (o .:? "webPropertyId") <*>+ (o .:? "childLink")+ <*> (o .:? "kind" .!= "analytics#customDataSource")+ <*> (o .:? "created")+ <*> (o .:? "uploadType")+ <*> (o .:? "schema" .!= mempty)+ <*> (o .:? "importBehavior")+ <*> (o .:? "selfLink")+ <*> (o .:? "accountId")+ <*> (o .:? "name")+ <*> (o .:? "id")+ <*> (o .:? "updated")+ <*> (o .:? "type")+ <*> (o .:? "description")+ <*> (o .:? "profilesLinked" .!= mempty))++instance ToJSON CustomDataSource where+ toJSON CustomDataSource'{..}+ = object+ (catMaybes+ [("parentLink" .=) <$> _cParentLink,+ ("webPropertyId" .=) <$> _cWebPropertyId,+ ("childLink" .=) <$> _cChildLink,+ Just ("kind" .= _cKind),+ ("created" .=) <$> _cCreated,+ ("uploadType" .=) <$> _cUploadType,+ ("schema" .=) <$> _cSchema,+ ("importBehavior" .=) <$> _cImportBehavior,+ ("selfLink" .=) <$> _cSelfLink,+ ("accountId" .=) <$> _cAccountId,+ ("name" .=) <$> _cName, ("id" .=) <$> _cId,+ ("updated" .=) <$> _cUpdated, ("type" .=) <$> _cType,+ ("description" .=) <$> _cDescription,+ ("profilesLinked" .=) <$> _cProFilesLinked])++-- | JSON template for an Analytics account tree requests. The account tree+-- request is used in the provisioning api to create an account, property,+-- and view (profile). It contains the basic information required to make+-- these fields.+--+-- /See:/ 'accountTreeRequest' smart constructor.+data AccountTreeRequest =+ AccountTreeRequest'+ { _atrWebPropertyName :: !(Maybe Text)+ , _atrKind :: !Text+ , _atrAccountName :: !(Maybe Text)+ , _atrProFileName :: !(Maybe Text)+ , _atrWebsiteURL :: !(Maybe Text)+ , _atrTimezone :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'AccountTreeRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'atrWebPropertyName'+--+-- * 'atrKind'+--+-- * 'atrAccountName'+--+-- * 'atrProFileName'+--+-- * 'atrWebsiteURL'+--+-- * 'atrTimezone'+accountTreeRequest+ :: AccountTreeRequest+accountTreeRequest =+ AccountTreeRequest'+ { _atrWebPropertyName = Nothing+ , _atrKind = "analytics#accountTreeRequest"+ , _atrAccountName = Nothing+ , _atrProFileName = Nothing+ , _atrWebsiteURL = Nothing+ , _atrTimezone = Nothing+ }+++atrWebPropertyName :: Lens' AccountTreeRequest (Maybe Text)+atrWebPropertyName+ = lens _atrWebPropertyName+ (\ s a -> s{_atrWebPropertyName = a})++-- | Resource type for account ticket.+atrKind :: Lens' AccountTreeRequest Text+atrKind = lens _atrKind (\ s a -> s{_atrKind = a})++atrAccountName :: Lens' AccountTreeRequest (Maybe Text)+atrAccountName+ = lens _atrAccountName+ (\ s a -> s{_atrAccountName = a})++atrProFileName :: Lens' AccountTreeRequest (Maybe Text)+atrProFileName+ = lens _atrProFileName+ (\ s a -> s{_atrProFileName = a})++atrWebsiteURL :: Lens' AccountTreeRequest (Maybe Text)+atrWebsiteURL+ = lens _atrWebsiteURL+ (\ s a -> s{_atrWebsiteURL = a})++atrTimezone :: Lens' AccountTreeRequest (Maybe Text)+atrTimezone+ = lens _atrTimezone (\ s a -> s{_atrTimezone = a})++instance FromJSON AccountTreeRequest where+ parseJSON+ = withObject "AccountTreeRequest"+ (\ o ->+ AccountTreeRequest' <$>+ (o .:? "webpropertyName") <*>+ (o .:? "kind" .!= "analytics#accountTreeRequest")+ <*> (o .:? "accountName")+ <*> (o .:? "profileName")+ <*> (o .:? "websiteUrl")+ <*> (o .:? "timezone"))++instance ToJSON AccountTreeRequest where+ toJSON AccountTreeRequest'{..}+ = object+ (catMaybes+ [("webpropertyName" .=) <$> _atrWebPropertyName,+ Just ("kind" .= _atrKind),+ ("accountName" .=) <$> _atrAccountName,+ ("profileName" .=) <$> _atrProFileName,+ ("websiteUrl" .=) <$> _atrWebsiteURL,+ ("timezone" .=) <$> _atrTimezone])++-- | JSON template for a web property reference.+--+-- /See:/ 'webPropertyRef' smart constructor.+data WebPropertyRef =+ WebPropertyRef'+ { _wprKind :: !Text+ , _wprHref :: !(Maybe Text)+ , _wprAccountId :: !(Maybe Text)+ , _wprName :: !(Maybe Text)+ , _wprInternalWebPropertyId :: !(Maybe Text)+ , _wprId :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'WebPropertyRef' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'wprKind'+--+-- * 'wprHref'+--+-- * 'wprAccountId'+--+-- * 'wprName'+--+-- * 'wprInternalWebPropertyId'+--+-- * 'wprId'+webPropertyRef+ :: WebPropertyRef+webPropertyRef =+ WebPropertyRef'+ { _wprKind = "analytics#webPropertyRef"+ , _wprHref = Nothing+ , _wprAccountId = Nothing+ , _wprName = Nothing+ , _wprInternalWebPropertyId = Nothing+ , _wprId = Nothing+ }+++-- | Analytics web property reference.+wprKind :: Lens' WebPropertyRef Text+wprKind = lens _wprKind (\ s a -> s{_wprKind = a})++-- | Link for this web property.+wprHref :: Lens' WebPropertyRef (Maybe Text)+wprHref = lens _wprHref (\ s a -> s{_wprHref = a})++-- | Account ID to which this web property belongs.+wprAccountId :: Lens' WebPropertyRef (Maybe Text)+wprAccountId+ = lens _wprAccountId (\ s a -> s{_wprAccountId = a})++-- | Name of this web property.+wprName :: Lens' WebPropertyRef (Maybe Text)+wprName = lens _wprName (\ s a -> s{_wprName = a})++-- | Internal ID for this web property.+wprInternalWebPropertyId :: Lens' WebPropertyRef (Maybe Text)+wprInternalWebPropertyId+ = lens _wprInternalWebPropertyId+ (\ s a -> s{_wprInternalWebPropertyId = a})++-- | Web property ID of the form UA-XXXXX-YY.+wprId :: Lens' WebPropertyRef (Maybe Text)+wprId = lens _wprId (\ s a -> s{_wprId = a})++instance FromJSON WebPropertyRef where+ parseJSON+ = withObject "WebPropertyRef"+ (\ o ->+ WebPropertyRef' <$>+ (o .:? "kind" .!= "analytics#webPropertyRef") <*>+ (o .:? "href")+ <*> (o .:? "accountId")+ <*> (o .:? "name")+ <*> (o .:? "internalWebPropertyId")+ <*> (o .:? "id"))++instance ToJSON WebPropertyRef where+ toJSON WebPropertyRef'{..}+ = object+ (catMaybes+ [Just ("kind" .= _wprKind), ("href" .=) <$> _wprHref,+ ("accountId" .=) <$> _wprAccountId,+ ("name" .=) <$> _wprName,+ ("internalWebPropertyId" .=) <$>+ _wprInternalWebPropertyId,+ ("id" .=) <$> _wprId])++-- | JSON template for an Analytics Remarketing Audience Foreign Link.+--+-- /See:/ 'linkedForeignAccount' smart constructor.+data LinkedForeignAccount =+ LinkedForeignAccount'+ { _lfaStatus :: !(Maybe Text)+ , _lfaWebPropertyId :: !(Maybe Text)+ , _lfaKind :: !Text+ , _lfaEligibleForSearch :: !(Maybe Bool)+ , _lfaAccountId :: !(Maybe Text)+ , _lfaRemarketingAudienceId :: !(Maybe Text)+ , _lfaLinkedAccountId :: !(Maybe Text)+ , _lfaInternalWebPropertyId :: !(Maybe Text)+ , _lfaId :: !(Maybe Text)+ , _lfaType :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'LinkedForeignAccount' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lfaStatus'+--+-- * 'lfaWebPropertyId'+--+-- * 'lfaKind'+--+-- * 'lfaEligibleForSearch'+--+-- * 'lfaAccountId'+--+-- * 'lfaRemarketingAudienceId'+--+-- * 'lfaLinkedAccountId'+--+-- * 'lfaInternalWebPropertyId'+--+-- * 'lfaId'+--+-- * 'lfaType'+linkedForeignAccount+ :: LinkedForeignAccount+linkedForeignAccount =+ LinkedForeignAccount'+ { _lfaStatus = Nothing+ , _lfaWebPropertyId = Nothing+ , _lfaKind = "analytics#linkedForeignAccount"+ , _lfaEligibleForSearch = Nothing+ , _lfaAccountId = Nothing+ , _lfaRemarketingAudienceId = Nothing+ , _lfaLinkedAccountId = Nothing+ , _lfaInternalWebPropertyId = Nothing+ , _lfaId = Nothing+ , _lfaType = Nothing+ }+++-- | The status of this foreign account link.+lfaStatus :: Lens' LinkedForeignAccount (Maybe Text)+lfaStatus+ = lens _lfaStatus (\ s a -> s{_lfaStatus = a})++-- | Web property ID of the form UA-XXXXX-YY to which this linked foreign+-- account belongs.+lfaWebPropertyId :: Lens' LinkedForeignAccount (Maybe Text)+lfaWebPropertyId+ = lens _lfaWebPropertyId+ (\ s a -> s{_lfaWebPropertyId = a})++-- | Resource type for linked foreign account.+lfaKind :: Lens' LinkedForeignAccount Text+lfaKind = lens _lfaKind (\ s a -> s{_lfaKind = a})++-- | Boolean indicating whether this is eligible for search.+lfaEligibleForSearch :: Lens' LinkedForeignAccount (Maybe Bool)+lfaEligibleForSearch+ = lens _lfaEligibleForSearch+ (\ s a -> s{_lfaEligibleForSearch = a})++-- | Account ID to which this linked foreign account belongs.+lfaAccountId :: Lens' LinkedForeignAccount (Maybe Text)+lfaAccountId+ = lens _lfaAccountId (\ s a -> s{_lfaAccountId = a})++-- | Remarketing audience ID to which this linked foreign account belongs.+lfaRemarketingAudienceId :: Lens' LinkedForeignAccount (Maybe Text)+lfaRemarketingAudienceId+ = lens _lfaRemarketingAudienceId+ (\ s a -> s{_lfaRemarketingAudienceId = a})++-- | The foreign account ID. For example the an Google Ads+-- \`linkedAccountId\` has the following format XXX-XXX-XXXX.+lfaLinkedAccountId :: Lens' LinkedForeignAccount (Maybe Text)+lfaLinkedAccountId+ = lens _lfaLinkedAccountId+ (\ s a -> s{_lfaLinkedAccountId = a})++-- | Internal ID for the web property to which this linked foreign account+-- belongs.+lfaInternalWebPropertyId :: Lens' LinkedForeignAccount (Maybe Text)+lfaInternalWebPropertyId+ = lens _lfaInternalWebPropertyId+ (\ s a -> s{_lfaInternalWebPropertyId = a})++-- | Entity ad account link ID.+lfaId :: Lens' LinkedForeignAccount (Maybe Text)+lfaId = lens _lfaId (\ s a -> s{_lfaId = a})++-- | The type of the foreign account. For example, \`ADWORDS_LINKS\`,+-- \`DBM_LINKS\`, \`MCC_LINKS\` or \`OPTIMIZE\`.+lfaType :: Lens' LinkedForeignAccount (Maybe Text)+lfaType = lens _lfaType (\ s a -> s{_lfaType = a})++instance FromJSON LinkedForeignAccount where+ parseJSON+ = withObject "LinkedForeignAccount"+ (\ o ->+ LinkedForeignAccount' <$>+ (o .:? "status") <*> (o .:? "webPropertyId") <*>+ (o .:? "kind" .!= "analytics#linkedForeignAccount")+ <*> (o .:? "eligibleForSearch")+ <*> (o .:? "accountId")+ <*> (o .:? "remarketingAudienceId")+ <*> (o .:? "linkedAccountId")+ <*> (o .:? "internalWebPropertyId")+ <*> (o .:? "id")+ <*> (o .:? "type"))++instance ToJSON LinkedForeignAccount where+ toJSON LinkedForeignAccount'{..}+ = object+ (catMaybes+ [("status" .=) <$> _lfaStatus,+ ("webPropertyId" .=) <$> _lfaWebPropertyId,+ Just ("kind" .= _lfaKind),+ ("eligibleForSearch" .=) <$> _lfaEligibleForSearch,+ ("accountId" .=) <$> _lfaAccountId,+ ("remarketingAudienceId" .=) <$>+ _lfaRemarketingAudienceId,+ ("linkedAccountId" .=) <$> _lfaLinkedAccountId,+ ("internalWebPropertyId" .=) <$>+ _lfaInternalWebPropertyId,+ ("id" .=) <$> _lfaId, ("type" .=) <$> _lfaType])++-- | A goal collection lists Analytics goals to which the user has access.+-- Each view (profile) can have a set of goals. Each resource in the Goal+-- collection corresponds to a single Analytics goal.+--+-- /See:/ 'goals' smart constructor.+data Goals =+ Goals'+ { _gNextLink :: !(Maybe Text)+ , _gItemsPerPage :: !(Maybe (Textual Int32))+ , _gKind :: !Text+ , _gUsername :: !(Maybe Text)+ , _gItems :: !(Maybe [Goal])+ , _gTotalResults :: !(Maybe (Textual Int32))+ , _gStartIndex :: !(Maybe (Textual Int32))+ , _gPreviousLink :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Goals' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gNextLink'+--+-- * 'gItemsPerPage'+--+-- * 'gKind'+--+-- * 'gUsername'+--+-- * 'gItems'+--+-- * 'gTotalResults'+--+-- * 'gStartIndex'+--+-- * 'gPreviousLink'+goals+ :: Goals+goals =+ Goals'+ { _gNextLink = Nothing+ , _gItemsPerPage = Nothing+ , _gKind = "analytics#goals"+ , _gUsername = Nothing+ , _gItems = Nothing+ , _gTotalResults = Nothing+ , _gStartIndex = Nothing+ , _gPreviousLink = Nothing+ }+++-- | Link to next page for this goal collection.+gNextLink :: Lens' Goals (Maybe Text)+gNextLink+ = lens _gNextLink (\ s a -> s{_gNextLink = a})++-- | The maximum number of resources the response can contain, regardless of+-- the actual number of resources returned. Its value ranges from 1 to 1000+-- with a value of 1000 by default, or otherwise specified by the+-- max-results query parameter.+gItemsPerPage :: Lens' Goals (Maybe Int32)+gItemsPerPage+ = lens _gItemsPerPage+ (\ s a -> s{_gItemsPerPage = a})+ . mapping _Coerce++-- | Collection type.+gKind :: Lens' Goals Text+gKind = lens _gKind (\ s a -> s{_gKind = a})++-- | Email ID of the authenticated user+gUsername :: Lens' Goals (Maybe Text)+gUsername+ = lens _gUsername (\ s a -> s{_gUsername = a})++-- | A list of goals.+gItems :: Lens' Goals [Goal]+gItems+ = lens _gItems (\ s a -> s{_gItems = a}) . _Default .+ _Coerce++-- | The total number of results for the query, regardless of the number of+-- resources in the result.+gTotalResults :: Lens' Goals (Maybe Int32)+gTotalResults+ = lens _gTotalResults+ (\ s a -> s{_gTotalResults = a})+ . mapping _Coerce++-- | The starting index of the resources, which is 1 by default or otherwise+-- specified by the start-index query parameter.+gStartIndex :: Lens' Goals (Maybe Int32)+gStartIndex+ = lens _gStartIndex (\ s a -> s{_gStartIndex = a}) .+ mapping _Coerce++-- | Link to previous page for this goal collection.+gPreviousLink :: Lens' Goals (Maybe Text)+gPreviousLink+ = lens _gPreviousLink+ (\ s a -> s{_gPreviousLink = a})++instance FromJSON Goals where+ parseJSON+ = withObject "Goals"+ (\ o ->+ Goals' <$>+ (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>+ (o .:? "kind" .!= "analytics#goals")+ <*> (o .:? "username")+ <*> (o .:? "items" .!= mempty)+ <*> (o .:? "totalResults")+ <*> (o .:? "startIndex")+ <*> (o .:? "previousLink"))++instance ToJSON Goals where+ toJSON Goals'{..}+ = object+ (catMaybes+ [("nextLink" .=) <$> _gNextLink,+ ("itemsPerPage" .=) <$> _gItemsPerPage,+ Just ("kind" .= _gKind),+ ("username" .=) <$> _gUsername,+ ("items" .=) <$> _gItems,+ ("totalResults" .=) <$> _gTotalResults,+ ("startIndex" .=) <$> _gStartIndex,+ ("previousLink" .=) <$> _gPreviousLink])++-- | A union object representing a dimension or metric value. Only one of+-- \"primitiveValue\" or \"conversionPathValue\" attribute will be+-- populated.+--+-- /See:/ 'mcfDataRowsItemItem' smart constructor.+data McfDataRowsItemItem =+ McfDataRowsItemItem'+ { _mdriiPrimitiveValue :: !(Maybe Text)+ , _mdriiConversionPathValue :: !(Maybe [McfDataRowsItemItemConversionPathValueItem])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'McfDataRowsItemItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mdriiPrimitiveValue'+--+-- * 'mdriiConversionPathValue'+mcfDataRowsItemItem+ :: McfDataRowsItemItem+mcfDataRowsItemItem =+ McfDataRowsItemItem'+ {_mdriiPrimitiveValue = Nothing, _mdriiConversionPathValue = Nothing}+++-- | A primitive dimension value. A primitive metric value.+mdriiPrimitiveValue :: Lens' McfDataRowsItemItem (Maybe Text)+mdriiPrimitiveValue+ = lens _mdriiPrimitiveValue+ (\ s a -> s{_mdriiPrimitiveValue = a})++-- | A conversion path dimension value, containing a list of interactions+-- with their attributes.+mdriiConversionPathValue :: Lens' McfDataRowsItemItem [McfDataRowsItemItemConversionPathValueItem]+mdriiConversionPathValue+ = lens _mdriiConversionPathValue+ (\ s a -> s{_mdriiConversionPathValue = a})+ . _Default+ . _Coerce++instance FromJSON McfDataRowsItemItem where+ parseJSON+ = withObject "McfDataRowsItemItem"+ (\ o ->+ McfDataRowsItemItem' <$>+ (o .:? "primitiveValue") <*>+ (o .:? "conversionPathValue" .!= mempty))++instance ToJSON McfDataRowsItemItem where+ toJSON McfDataRowsItemItem'{..}+ = object+ (catMaybes+ [("primitiveValue" .=) <$> _mdriiPrimitiveValue,+ ("conversionPathValue" .=) <$>+ _mdriiConversionPathValue])++-- | Permissions the user has for this account.+--+-- /See:/ 'accountPermissions' smart constructor.+newtype AccountPermissions =+ AccountPermissions'+ { _apEffective :: Maybe [Text]+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'AccountPermissions' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'apEffective'+accountPermissions+ :: AccountPermissions+accountPermissions = AccountPermissions' {_apEffective = Nothing}+++-- | All the permissions that the user has for this account. These include+-- any implied permissions (e.g., EDIT implies VIEW).+apEffective :: Lens' AccountPermissions [Text]+apEffective+ = lens _apEffective (\ s a -> s{_apEffective = a}) .+ _Default+ . _Coerce++instance FromJSON AccountPermissions where+ parseJSON+ = withObject "AccountPermissions"+ (\ o ->+ AccountPermissions' <$>+ (o .:? "effective" .!= mempty))++instance ToJSON AccountPermissions where+ toJSON AccountPermissions'{..}+ = object+ (catMaybes [("effective" .=) <$> _apEffective])++-- | Entity for this link. It can be an account, a web property, or a view+-- (profile).+--+-- /See:/ 'entityUserLinkEntity' smart constructor.+data EntityUserLinkEntity =+ EntityUserLinkEntity'+ { _euleProFileRef :: !(Maybe ProFileRef)+ , _euleAccountRef :: !(Maybe AccountRef)+ , _euleWebPropertyRef :: !(Maybe WebPropertyRef)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'EntityUserLinkEntity' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'euleProFileRef'+--+-- * 'euleAccountRef'+--+-- * 'euleWebPropertyRef'+entityUserLinkEntity+ :: EntityUserLinkEntity+entityUserLinkEntity =+ EntityUserLinkEntity'+ { _euleProFileRef = Nothing+ , _euleAccountRef = Nothing+ , _euleWebPropertyRef = Nothing+ }+++-- | View (Profile) for this link.+euleProFileRef :: Lens' EntityUserLinkEntity (Maybe ProFileRef)+euleProFileRef+ = lens _euleProFileRef+ (\ s a -> s{_euleProFileRef = a})++-- | Account for this link.+euleAccountRef :: Lens' EntityUserLinkEntity (Maybe AccountRef)+euleAccountRef+ = lens _euleAccountRef+ (\ s a -> s{_euleAccountRef = a})++-- | Web property for this link.+euleWebPropertyRef :: Lens' EntityUserLinkEntity (Maybe WebPropertyRef)+euleWebPropertyRef+ = lens _euleWebPropertyRef+ (\ s a -> s{_euleWebPropertyRef = a})++instance FromJSON EntityUserLinkEntity where+ parseJSON+ = withObject "EntityUserLinkEntity"+ (\ o ->+ EntityUserLinkEntity' <$>+ (o .:? "profileRef") <*> (o .:? "accountRef") <*>+ (o .:? "webPropertyRef"))++instance ToJSON EntityUserLinkEntity where+ toJSON EntityUserLinkEntity'{..}+ = object+ (catMaybes+ [("profileRef" .=) <$> _euleProFileRef,+ ("accountRef" .=) <$> _euleAccountRef,+ ("webPropertyRef" .=) <$> _euleWebPropertyRef])++-- | JSON template for Analytics account entry.+--+-- /See:/ 'account' smart constructor.+data Account =+ Account'+ { _accChildLink :: !(Maybe AccountChildLink)+ , _accKind :: !Text+ , _accCreated :: !(Maybe DateTime')+ , _accSelfLink :: !(Maybe Text)+ , _accName :: !(Maybe Text)+ , _accStarred :: !(Maybe Bool)+ , _accId :: !(Maybe Text)+ , _accUpdated :: !(Maybe DateTime')+ , _accPermissions :: !(Maybe AccountPermissions)+ }+ 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:+--+-- * 'accChildLink'+--+-- * 'accKind'+--+-- * 'accCreated'+--+-- * 'accSelfLink'+--+-- * 'accName'+--+-- * 'accStarred'+--+-- * 'accId'+--+-- * 'accUpdated'+--+-- * 'accPermissions'+account+ :: Account+account =+ Account'+ { _accChildLink = Nothing+ , _accKind = "analytics#account"+ , _accCreated = Nothing+ , _accSelfLink = Nothing+ , _accName = Nothing+ , _accStarred = Nothing+ , _accId = Nothing+ , _accUpdated = Nothing+ , _accPermissions = Nothing+ }+++-- | Child link for an account entry. Points to the list of web properties+-- for this account.+accChildLink :: Lens' Account (Maybe AccountChildLink)+accChildLink+ = lens _accChildLink (\ s a -> s{_accChildLink = a})++-- | Resource type for Analytics account.+accKind :: Lens' Account Text+accKind = lens _accKind (\ s a -> s{_accKind = a})++-- | Time the account was created.+accCreated :: Lens' Account (Maybe UTCTime)+accCreated+ = lens _accCreated (\ s a -> s{_accCreated = a}) .+ mapping _DateTime++-- | Link for this account.+accSelfLink :: Lens' Account (Maybe Text)+accSelfLink+ = lens _accSelfLink (\ s a -> s{_accSelfLink = a})++-- | Account name.+accName :: Lens' Account (Maybe Text)+accName = lens _accName (\ s a -> s{_accName = a})++-- | Indicates whether this account is starred or not.+accStarred :: Lens' Account (Maybe Bool)+accStarred+ = lens _accStarred (\ s a -> s{_accStarred = a})++-- | Account ID.+accId :: Lens' Account (Maybe Text)+accId = lens _accId (\ s a -> s{_accId = a})++-- | Time the account was last modified.+accUpdated :: Lens' Account (Maybe UTCTime)+accUpdated+ = lens _accUpdated (\ s a -> s{_accUpdated = a}) .+ mapping _DateTime++-- | Permissions the user has for this account.+accPermissions :: Lens' Account (Maybe AccountPermissions)+accPermissions+ = lens _accPermissions+ (\ s a -> s{_accPermissions = a})++instance FromJSON Account where+ parseJSON+ = withObject "Account"+ (\ o ->+ Account' <$>+ (o .:? "childLink") <*>+ (o .:? "kind" .!= "analytics#account")+ <*> (o .:? "created")+ <*> (o .:? "selfLink")+ <*> (o .:? "name")+ <*> (o .:? "starred")+ <*> (o .:? "id")+ <*> (o .:? "updated")+ <*> (o .:? "permissions"))++instance ToJSON Account where+ toJSON Account'{..}+ = object+ (catMaybes+ [("childLink" .=) <$> _accChildLink,+ Just ("kind" .= _accKind),+ ("created" .=) <$> _accCreated,+ ("selfLink" .=) <$> _accSelfLink,+ ("name" .=) <$> _accName,+ ("starred" .=) <$> _accStarred, ("id" .=) <$> _accId,+ ("updated" .=) <$> _accUpdated,+ ("permissions" .=) <$> _accPermissions])++-- | JSON template for Analytics experiment resource.+--+-- /See:/ 'experiment' smart constructor.+data Experiment =+ Experiment'+ { _expParentLink :: !(Maybe ExperimentParentLink)+ , _expEqualWeighting :: !(Maybe Bool)+ , _expStatus :: !(Maybe Text)+ , _expWebPropertyId :: !(Maybe Text)+ , _expStartTime :: !(Maybe DateTime')+ , _expSnippet :: !(Maybe Text)+ , _expKind :: !Text+ , _expCreated :: !(Maybe DateTime')+ , _expReasonExperimentEnded :: !(Maybe Text)+ , _expTrafficCoverage :: !(Maybe (Textual Double))+ , _expEditableInGaUi :: !(Maybe Bool)+ , _expMinimumExperimentLengthInDays :: !(Maybe (Textual Int32))+ , _expProFileId :: !(Maybe Text)+ , _expOptimizationType :: !(Maybe Text)+ , _expSelfLink :: !(Maybe Text)+ , _expAccountId :: !(Maybe Text)+ , _expName :: !(Maybe Text)+ , _expWinnerFound :: !(Maybe Bool)+ , _expEndTime :: !(Maybe DateTime')+ , _expVariations :: !(Maybe [ExperimentVariationsItem])+ , _expInternalWebPropertyId :: !(Maybe Text)+ , _expId :: !(Maybe Text)+ , _expUpdated :: !(Maybe DateTime')+ , _expRewriteVariationURLsAsOriginal :: !(Maybe Bool)+ , _expObjectiveMetric :: !(Maybe Text)+ , _expWinnerConfidenceLevel :: !(Maybe (Textual Double))+ , _expServingFramework :: !(Maybe Text)+ , _expDescription :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Experiment' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'expParentLink'+--+-- * 'expEqualWeighting'+--+-- * 'expStatus'+--+-- * 'expWebPropertyId'+--+-- * 'expStartTime'+--+-- * 'expSnippet'+--+-- * 'expKind'+--+-- * 'expCreated'+--+-- * 'expReasonExperimentEnded'+--+-- * 'expTrafficCoverage'+--+-- * 'expEditableInGaUi'+--+-- * 'expMinimumExperimentLengthInDays'+--+-- * 'expProFileId'+--+-- * 'expOptimizationType'+--+-- * 'expSelfLink'+--+-- * 'expAccountId'+--+-- * 'expName'+--+-- * 'expWinnerFound'+--+-- * 'expEndTime'+--+-- * 'expVariations'+--+-- * 'expInternalWebPropertyId'+--+-- * 'expId'+--+-- * 'expUpdated'+--+-- * 'expRewriteVariationURLsAsOriginal'+--+-- * 'expObjectiveMetric'+--+-- * 'expWinnerConfidenceLevel'+--+-- * 'expServingFramework'+--+-- * 'expDescription'+experiment+ :: Experiment+experiment =+ Experiment'+ { _expParentLink = Nothing+ , _expEqualWeighting = Nothing+ , _expStatus = Nothing+ , _expWebPropertyId = Nothing+ , _expStartTime = Nothing+ , _expSnippet = Nothing+ , _expKind = "analytics#experiment"+ , _expCreated = Nothing+ , _expReasonExperimentEnded = Nothing+ , _expTrafficCoverage = Nothing+ , _expEditableInGaUi = Nothing+ , _expMinimumExperimentLengthInDays = Nothing+ , _expProFileId = Nothing+ , _expOptimizationType = Nothing+ , _expSelfLink = Nothing+ , _expAccountId = Nothing+ , _expName = Nothing+ , _expWinnerFound = Nothing+ , _expEndTime = Nothing+ , _expVariations = Nothing+ , _expInternalWebPropertyId = Nothing+ , _expId = Nothing+ , _expUpdated = Nothing+ , _expRewriteVariationURLsAsOriginal = Nothing+ , _expObjectiveMetric = Nothing+ , _expWinnerConfidenceLevel = Nothing+ , _expServingFramework = Nothing+ , _expDescription = Nothing+ }+++-- | Parent link for an experiment. Points to the view (profile) to which+-- this experiment belongs.+expParentLink :: Lens' Experiment (Maybe ExperimentParentLink)+expParentLink+ = lens _expParentLink+ (\ s a -> s{_expParentLink = a})++-- | Boolean specifying whether to distribute traffic evenly across all+-- variations. If the value is False, content experiments follows the+-- default behavior of adjusting traffic dynamically based on variation+-- performance. Optional -- defaults to False. This field may not be+-- changed for an experiment whose status is ENDED.+expEqualWeighting :: Lens' Experiment (Maybe Bool)+expEqualWeighting+ = lens _expEqualWeighting+ (\ s a -> s{_expEqualWeighting = a})++-- | Experiment status. Possible values: \"DRAFT\", \"READY_TO_RUN\",+-- \"RUNNING\", \"ENDED\". Experiments can be created in the \"DRAFT\",+-- \"READY_TO_RUN\" or \"RUNNING\" state. This field is required when+-- creating an experiment.+expStatus :: Lens' Experiment (Maybe Text)+expStatus+ = lens _expStatus (\ s a -> s{_expStatus = a})++-- | Web property ID to which this experiment belongs. The web property ID is+-- of the form UA-XXXXX-YY. This field is read-only.+expWebPropertyId :: Lens' Experiment (Maybe Text)+expWebPropertyId+ = lens _expWebPropertyId+ (\ s a -> s{_expWebPropertyId = a})++-- | The starting time of the experiment (the time the status changed from+-- READY_TO_RUN to RUNNING). This field is present only if the experiment+-- has started. This field is read-only.+expStartTime :: Lens' Experiment (Maybe UTCTime)+expStartTime+ = lens _expStartTime (\ s a -> s{_expStartTime = a})+ . mapping _DateTime++-- | The snippet of code to include on the control page(s). This field is+-- read-only.+expSnippet :: Lens' Experiment (Maybe Text)+expSnippet+ = lens _expSnippet (\ s a -> s{_expSnippet = a})++-- | Resource type for an Analytics experiment. This field is read-only.+expKind :: Lens' Experiment Text+expKind = lens _expKind (\ s a -> s{_expKind = a})++-- | Time the experiment was created. This field is read-only.+expCreated :: Lens' Experiment (Maybe UTCTime)+expCreated+ = lens _expCreated (\ s a -> s{_expCreated = a}) .+ mapping _DateTime++-- | Why the experiment ended. Possible values: \"STOPPED_BY_USER\",+-- \"WINNER_FOUND\", \"EXPERIMENT_EXPIRED\", \"ENDED_WITH_NO_WINNER\",+-- \"GOAL_OBJECTIVE_CHANGED\". \"ENDED_WITH_NO_WINNER\" means that the+-- experiment didn\'t expire but no winner was projected to be found. If+-- the experiment status is changed via the API to ENDED this field is set+-- to STOPPED_BY_USER. This field is read-only.+expReasonExperimentEnded :: Lens' Experiment (Maybe Text)+expReasonExperimentEnded+ = lens _expReasonExperimentEnded+ (\ s a -> s{_expReasonExperimentEnded = a})++-- | A floating-point number in (0, 1]. Specifies the fraction of the traffic+-- that participates in the experiment. Can be changed for a running+-- experiment. This field may not be changed for an experiments whose+-- status is ENDED.+expTrafficCoverage :: Lens' Experiment (Maybe Double)+expTrafficCoverage+ = lens _expTrafficCoverage+ (\ s a -> s{_expTrafficCoverage = a})+ . mapping _Coerce++-- | If true, the end user will be able to edit the experiment via the Google+-- Analytics user interface.+expEditableInGaUi :: Lens' Experiment (Maybe Bool)+expEditableInGaUi+ = lens _expEditableInGaUi+ (\ s a -> s{_expEditableInGaUi = a})++-- | An integer number in [3, 90]. Specifies the minimum length of the+-- experiment. Can be changed for a running experiment. This field may not+-- be changed for an experiments whose status is ENDED.+expMinimumExperimentLengthInDays :: Lens' Experiment (Maybe Int32)+expMinimumExperimentLengthInDays+ = lens _expMinimumExperimentLengthInDays+ (\ s a -> s{_expMinimumExperimentLengthInDays = a})+ . mapping _Coerce++-- | View (Profile) ID to which this experiment belongs. This field is+-- read-only.+expProFileId :: Lens' Experiment (Maybe Text)+expProFileId+ = lens _expProFileId (\ s a -> s{_expProFileId = a})++-- | Whether the objectiveMetric should be minimized or maximized. Possible+-- values: \"MAXIMUM\", \"MINIMUM\". Optional--defaults to \"MAXIMUM\".+-- Cannot be specified without objectiveMetric. Cannot be modified when+-- status is \"RUNNING\" or \"ENDED\".+expOptimizationType :: Lens' Experiment (Maybe Text)+expOptimizationType+ = lens _expOptimizationType+ (\ s a -> s{_expOptimizationType = a})++-- | Link for this experiment. This field is read-only.+expSelfLink :: Lens' Experiment (Maybe Text)+expSelfLink+ = lens _expSelfLink (\ s a -> s{_expSelfLink = a})++-- | Account ID to which this experiment belongs. This field is read-only.+expAccountId :: Lens' Experiment (Maybe Text)+expAccountId+ = lens _expAccountId (\ s a -> s{_expAccountId = a})++-- | Experiment name. This field may not be changed for an experiment whose+-- status is ENDED. This field is required when creating an experiment.+expName :: Lens' Experiment (Maybe Text)+expName = lens _expName (\ s a -> s{_expName = a})++-- | Boolean specifying whether a winner has been found for this experiment.+-- This field is read-only.+expWinnerFound :: Lens' Experiment (Maybe Bool)+expWinnerFound+ = lens _expWinnerFound+ (\ s a -> s{_expWinnerFound = a})++-- | The ending time of the experiment (the time the status changed from+-- RUNNING to ENDED). This field is present only if the experiment has+-- ended. This field is read-only.+expEndTime :: Lens' Experiment (Maybe UTCTime)+expEndTime+ = lens _expEndTime (\ s a -> s{_expEndTime = a}) .+ mapping _DateTime++-- | Array of variations. The first variation in the array is the original.+-- The number of variations may not change once an experiment is in the+-- RUNNING state. At least two variations are required before status can be+-- set to RUNNING.+expVariations :: Lens' Experiment [ExperimentVariationsItem]+expVariations+ = lens _expVariations+ (\ s a -> s{_expVariations = a})+ . _Default+ . _Coerce++-- | Internal ID for the web property to which this experiment belongs. This+-- field is read-only.+expInternalWebPropertyId :: Lens' Experiment (Maybe Text)+expInternalWebPropertyId+ = lens _expInternalWebPropertyId+ (\ s a -> s{_expInternalWebPropertyId = a})++-- | Experiment ID. Required for patch and update. Disallowed for create.+expId :: Lens' Experiment (Maybe Text)+expId = lens _expId (\ s a -> s{_expId = a})++-- | Time the experiment was last modified. This field is read-only.+expUpdated :: Lens' Experiment (Maybe UTCTime)+expUpdated+ = lens _expUpdated (\ s a -> s{_expUpdated = a}) .+ mapping _DateTime++-- | Boolean specifying whether variations URLS are rewritten to match those+-- of the original. This field may not be changed for an experiments whose+-- status is ENDED.+expRewriteVariationURLsAsOriginal :: Lens' Experiment (Maybe Bool)+expRewriteVariationURLsAsOriginal+ = lens _expRewriteVariationURLsAsOriginal+ (\ s a -> s{_expRewriteVariationURLsAsOriginal = a})++-- | The metric that the experiment is optimizing. Valid values:+-- \"ga:goal(n)Completions\", \"ga:adsenseAdsClicks\",+-- \"ga:adsenseAdsViewed\", \"ga:adsenseRevenue\", \"ga:bounces\",+-- \"ga:pageviews\", \"ga:sessionDuration\", \"ga:transactions\",+-- \"ga:transactionRevenue\". This field is required if status is+-- \"RUNNING\" and servingFramework is one of \"REDIRECT\" or \"API\".+expObjectiveMetric :: Lens' Experiment (Maybe Text)+expObjectiveMetric+ = lens _expObjectiveMetric+ (\ s a -> s{_expObjectiveMetric = a})++-- | A floating-point number in (0, 1). Specifies the necessary confidence+-- level to choose a winner. This field may not be changed for an+-- experiments whose status is ENDED.+expWinnerConfidenceLevel :: Lens' Experiment (Maybe Double)+expWinnerConfidenceLevel+ = lens _expWinnerConfidenceLevel+ (\ s a -> s{_expWinnerConfidenceLevel = a})+ . mapping _Coerce++-- | The framework used to serve the experiment variations and evaluate the+-- results. One of: - REDIRECT: Google Analytics redirects traffic to+-- different variation pages, reports the chosen variation and evaluates+-- the results. - API: Google Analytics chooses and reports the variation+-- to serve and evaluates the results; the caller is responsible for+-- serving the selected variation. - EXTERNAL: The variations will be+-- served externally and the chosen variation reported to Google Analytics.+-- The caller is responsible for serving the selected variation and+-- evaluating the results.+expServingFramework :: Lens' Experiment (Maybe Text)+expServingFramework+ = lens _expServingFramework+ (\ s a -> s{_expServingFramework = a})++-- | Notes about this experiment.+expDescription :: Lens' Experiment (Maybe Text)+expDescription+ = lens _expDescription+ (\ s a -> s{_expDescription = a})++instance FromJSON Experiment where+ parseJSON+ = withObject "Experiment"+ (\ o ->+ Experiment' <$>+ (o .:? "parentLink") <*> (o .:? "equalWeighting") <*>+ (o .:? "status")+ <*> (o .:? "webPropertyId")+ <*> (o .:? "startTime")+ <*> (o .:? "snippet")+ <*> (o .:? "kind" .!= "analytics#experiment")+ <*> (o .:? "created")+ <*> (o .:? "reasonExperimentEnded")+ <*> (o .:? "trafficCoverage")+ <*> (o .:? "editableInGaUi")+ <*> (o .:? "minimumExperimentLengthInDays")+ <*> (o .:? "profileId")+ <*> (o .:? "optimizationType")+ <*> (o .:? "selfLink")+ <*> (o .:? "accountId")+ <*> (o .:? "name")+ <*> (o .:? "winnerFound")+ <*> (o .:? "endTime")+ <*> (o .:? "variations" .!= mempty)+ <*> (o .:? "internalWebPropertyId")+ <*> (o .:? "id")+ <*> (o .:? "updated")+ <*> (o .:? "rewriteVariationUrlsAsOriginal")+ <*> (o .:? "objectiveMetric")+ <*> (o .:? "winnerConfidenceLevel")+ <*> (o .:? "servingFramework")+ <*> (o .:? "description"))++instance ToJSON Experiment where+ toJSON Experiment'{..}+ = object+ (catMaybes+ [("parentLink" .=) <$> _expParentLink,+ ("equalWeighting" .=) <$> _expEqualWeighting,+ ("status" .=) <$> _expStatus,+ ("webPropertyId" .=) <$> _expWebPropertyId,+ ("startTime" .=) <$> _expStartTime,+ ("snippet" .=) <$> _expSnippet,+ Just ("kind" .= _expKind),+ ("created" .=) <$> _expCreated,+ ("reasonExperimentEnded" .=) <$>+ _expReasonExperimentEnded,+ ("trafficCoverage" .=) <$> _expTrafficCoverage,+ ("editableInGaUi" .=) <$> _expEditableInGaUi,+ ("minimumExperimentLengthInDays" .=) <$>+ _expMinimumExperimentLengthInDays,+ ("profileId" .=) <$> _expProFileId,+ ("optimizationType" .=) <$> _expOptimizationType,+ ("selfLink" .=) <$> _expSelfLink,+ ("accountId" .=) <$> _expAccountId,+ ("name" .=) <$> _expName,+ ("winnerFound" .=) <$> _expWinnerFound,+ ("endTime" .=) <$> _expEndTime,+ ("variations" .=) <$> _expVariations,+ ("internalWebPropertyId" .=) <$>+ _expInternalWebPropertyId,+ ("id" .=) <$> _expId, ("updated" .=) <$> _expUpdated,+ ("rewriteVariationUrlsAsOriginal" .=) <$>+ _expRewriteVariationURLsAsOriginal,+ ("objectiveMetric" .=) <$> _expObjectiveMetric,+ ("winnerConfidenceLevel" .=) <$>+ _expWinnerConfidenceLevel,+ ("servingFramework" .=) <$> _expServingFramework,+ ("description" .=) <$> _expDescription])++-- | An entity user link collection provides a list of Analytics ACL links+-- Each resource in this collection corresponds to a single link.+--+-- /See:/ 'entityUserLinks' smart constructor.+data EntityUserLinks =+ EntityUserLinks'+ { _eulNextLink :: !(Maybe Text)+ , _eulItemsPerPage :: !(Maybe (Textual Int32))+ , _eulKind :: !Text+ , _eulItems :: !(Maybe [EntityUserLink])+ , _eulTotalResults :: !(Maybe (Textual Int32))+ , _eulStartIndex :: !(Maybe (Textual Int32))+ , _eulPreviousLink :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'EntityUserLinks' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'eulNextLink'+--+-- * 'eulItemsPerPage'+--+-- * 'eulKind'+--+-- * 'eulItems'+--+-- * 'eulTotalResults'+--+-- * 'eulStartIndex'+--+-- * 'eulPreviousLink'+entityUserLinks+ :: EntityUserLinks+entityUserLinks =+ EntityUserLinks'+ { _eulNextLink = Nothing+ , _eulItemsPerPage = Nothing+ , _eulKind = "analytics#entityUserLinks"+ , _eulItems = Nothing+ , _eulTotalResults = Nothing+ , _eulStartIndex = Nothing+ , _eulPreviousLink = Nothing+ }+++-- | Next link for this account collection.+eulNextLink :: Lens' EntityUserLinks (Maybe Text)+eulNextLink+ = lens _eulNextLink (\ s a -> s{_eulNextLink = a})++-- | The maximum number of entries the response can contain, regardless of+-- the actual number of entries returned. Its value ranges from 1 to 1000+-- with a value of 1000 by default, or otherwise specified by the+-- max-results query parameter.+eulItemsPerPage :: Lens' EntityUserLinks (Maybe Int32)+eulItemsPerPage+ = lens _eulItemsPerPage+ (\ s a -> s{_eulItemsPerPage = a})+ . mapping _Coerce++-- | Collection type.+eulKind :: Lens' EntityUserLinks Text+eulKind = lens _eulKind (\ s a -> s{_eulKind = a})++-- | A list of entity user links.+eulItems :: Lens' EntityUserLinks [EntityUserLink]+eulItems+ = lens _eulItems (\ s a -> s{_eulItems = a}) .+ _Default+ . _Coerce++-- | The total number of results for the query, regardless of the number of+-- results in the response.+eulTotalResults :: Lens' EntityUserLinks (Maybe Int32)+eulTotalResults+ = lens _eulTotalResults+ (\ s a -> s{_eulTotalResults = a})+ . mapping _Coerce++-- | The starting index of the entries, which is 1 by default or otherwise+-- specified by the start-index query parameter.+eulStartIndex :: Lens' EntityUserLinks (Maybe Int32)+eulStartIndex+ = lens _eulStartIndex+ (\ s a -> s{_eulStartIndex = a})+ . mapping _Coerce++-- | Previous link for this account collection.+eulPreviousLink :: Lens' EntityUserLinks (Maybe Text)+eulPreviousLink+ = lens _eulPreviousLink+ (\ s a -> s{_eulPreviousLink = a})++instance FromJSON EntityUserLinks where+ parseJSON+ = withObject "EntityUserLinks"+ (\ o ->+ EntityUserLinks' <$>+ (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>+ (o .:? "kind" .!= "analytics#entityUserLinks")+ <*> (o .:? "items" .!= mempty)+ <*> (o .:? "totalResults")+ <*> (o .:? "startIndex")+ <*> (o .:? "previousLink"))++instance ToJSON EntityUserLinks where+ toJSON EntityUserLinks'{..}+ = object+ (catMaybes+ [("nextLink" .=) <$> _eulNextLink,+ ("itemsPerPage" .=) <$> _eulItemsPerPage,+ Just ("kind" .= _eulKind),+ ("items" .=) <$> _eulItems,+ ("totalResults" .=) <$> _eulTotalResults,+ ("startIndex" .=) <$> _eulStartIndex,+ ("previousLink" .=) <$> _eulPreviousLink])++-- | JSON template for an Google Ads account.+--+-- /See:/ 'adWordsAccount' smart constructor.+data AdWordsAccount =+ AdWordsAccount'+ { _awaAutoTaggingEnabled :: !(Maybe Bool)+ , _awaKind :: !Text+ , _awaCustomerId :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'AdWordsAccount' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'awaAutoTaggingEnabled'+--+-- * 'awaKind'+--+-- * 'awaCustomerId'+adWordsAccount+ :: AdWordsAccount+adWordsAccount =+ AdWordsAccount'+ { _awaAutoTaggingEnabled = Nothing+ , _awaKind = "analytics#adWordsAccount"+ , _awaCustomerId = Nothing+ }+++-- | True if auto-tagging is enabled on the Google Ads account. Read-only+-- after the insert operation.+awaAutoTaggingEnabled :: Lens' AdWordsAccount (Maybe Bool)+awaAutoTaggingEnabled+ = lens _awaAutoTaggingEnabled+ (\ s a -> s{_awaAutoTaggingEnabled = a})++-- | Resource type for Google Ads account.+awaKind :: Lens' AdWordsAccount Text+awaKind = lens _awaKind (\ s a -> s{_awaKind = a})++-- | Customer ID. This field is required when creating a Google Ads link.+awaCustomerId :: Lens' AdWordsAccount (Maybe Text)+awaCustomerId+ = lens _awaCustomerId+ (\ s a -> s{_awaCustomerId = a})++instance FromJSON AdWordsAccount where+ parseJSON+ = withObject "AdWordsAccount"+ (\ o ->+ AdWordsAccount' <$>+ (o .:? "autoTaggingEnabled") <*>+ (o .:? "kind" .!= "analytics#adWordsAccount")+ <*> (o .:? "customerId"))++instance ToJSON AdWordsAccount where+ toJSON AdWordsAccount'{..}+ = object+ (catMaybes+ [("autoTaggingEnabled" .=) <$>+ _awaAutoTaggingEnabled,+ Just ("kind" .= _awaKind),+ ("customerId" .=) <$> _awaCustomerId])++-- | JSON template for a profile filter link.+--+-- /See:/ 'filterRef' smart constructor.+data FilterRef =+ FilterRef'+ { _frKind :: !Text+ , _frHref :: !(Maybe Text)+ , _frAccountId :: !(Maybe Text)+ , _frName :: !(Maybe Text)+ , _frId :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'FilterRef' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'frKind'+--+-- * 'frHref'+--+-- * 'frAccountId'+--+-- * 'frName'+--+-- * 'frId'+filterRef+ :: FilterRef+filterRef =+ FilterRef'+ { _frKind = "analytics#filterRef"+ , _frHref = Nothing+ , _frAccountId = Nothing+ , _frName = Nothing+ , _frId = Nothing+ }+++-- | Kind value for filter reference.+frKind :: Lens' FilterRef Text+frKind = lens _frKind (\ s a -> s{_frKind = a})++-- | Link for this filter.+frHref :: Lens' FilterRef (Maybe Text)+frHref = lens _frHref (\ s a -> s{_frHref = a})++-- | Account ID to which this filter belongs.+frAccountId :: Lens' FilterRef (Maybe Text)+frAccountId+ = lens _frAccountId (\ s a -> s{_frAccountId = a})++-- | Name of this filter.+frName :: Lens' FilterRef (Maybe Text)+frName = lens _frName (\ s a -> s{_frName = a})++-- | Filter ID.+frId :: Lens' FilterRef (Maybe Text)+frId = lens _frId (\ s a -> s{_frId = a})++instance FromJSON FilterRef where+ parseJSON+ = withObject "FilterRef"+ (\ o ->+ FilterRef' <$>+ (o .:? "kind" .!= "analytics#filterRef") <*>+ (o .:? "href")+ <*> (o .:? "accountId")+ <*> (o .:? "name")+ <*> (o .:? "id"))++instance ToJSON FilterRef where+ toJSON FilterRef'{..}+ = object+ (catMaybes+ [Just ("kind" .= _frKind), ("href" .=) <$> _frHref,+ ("accountId" .=) <$> _frAccountId,+ ("name" .=) <$> _frName, ("id" .=) <$> _frId])++-- | Details for the goal of the type VISIT_TIME_ON_SITE.+--+-- /See:/ 'goalVisitTimeOnSiteDetails' smart constructor.+data GoalVisitTimeOnSiteDetails =+ GoalVisitTimeOnSiteDetails'+ { _gvtosdComparisonValue :: !(Maybe (Textual Int64))+ , _gvtosdComparisonType :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoalVisitTimeOnSiteDetails' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gvtosdComparisonValue'+--+-- * 'gvtosdComparisonType'+goalVisitTimeOnSiteDetails+ :: GoalVisitTimeOnSiteDetails+goalVisitTimeOnSiteDetails =+ GoalVisitTimeOnSiteDetails'+ {_gvtosdComparisonValue = Nothing, _gvtosdComparisonType = Nothing}+++-- | Value used for this comparison.+gvtosdComparisonValue :: Lens' GoalVisitTimeOnSiteDetails (Maybe Int64)+gvtosdComparisonValue+ = lens _gvtosdComparisonValue+ (\ s a -> s{_gvtosdComparisonValue = a})+ . mapping _Coerce++-- | Type of comparison. Possible values are LESS_THAN or GREATER_THAN.+gvtosdComparisonType :: Lens' GoalVisitTimeOnSiteDetails (Maybe Text)+gvtosdComparisonType+ = lens _gvtosdComparisonType+ (\ s a -> s{_gvtosdComparisonType = a})++instance FromJSON GoalVisitTimeOnSiteDetails where+ parseJSON+ = withObject "GoalVisitTimeOnSiteDetails"+ (\ o ->+ GoalVisitTimeOnSiteDetails' <$>+ (o .:? "comparisonValue") <*>+ (o .:? "comparisonType"))++instance ToJSON GoalVisitTimeOnSiteDetails where+ toJSON GoalVisitTimeOnSiteDetails'{..}+ = object+ (catMaybes+ [("comparisonValue" .=) <$> _gvtosdComparisonValue,+ ("comparisonType" .=) <$> _gvtosdComparisonType])++-- | A web property collection lists Analytics web properties to which the+-- user has access. Each resource in the collection corresponds to a single+-- Analytics web property.+--+-- /See:/ 'webProperties' smart constructor.+data WebProperties =+ WebProperties'+ { _wpNextLink :: !(Maybe Text)+ , _wpItemsPerPage :: !(Maybe (Textual Int32))+ , _wpKind :: !Text+ , _wpUsername :: !(Maybe Text)+ , _wpItems :: !(Maybe [WebProperty])+ , _wpTotalResults :: !(Maybe (Textual Int32))+ , _wpStartIndex :: !(Maybe (Textual Int32))+ , _wpPreviousLink :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'WebProperties' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'wpNextLink'+--+-- * 'wpItemsPerPage'+--+-- * 'wpKind'+--+-- * 'wpUsername'+--+-- * 'wpItems'+--+-- * 'wpTotalResults'+--+-- * 'wpStartIndex'+--+-- * 'wpPreviousLink'+webProperties+ :: WebProperties+webProperties =+ WebProperties'+ { _wpNextLink = Nothing+ , _wpItemsPerPage = Nothing+ , _wpKind = "analytics#webproperties"+ , _wpUsername = Nothing+ , _wpItems = Nothing+ , _wpTotalResults = Nothing+ , _wpStartIndex = Nothing+ , _wpPreviousLink = Nothing+ }+++-- | Link to next page for this web property collection.+wpNextLink :: Lens' WebProperties (Maybe Text)+wpNextLink+ = lens _wpNextLink (\ s a -> s{_wpNextLink = a})++-- | The maximum number of resources the response can contain, regardless of+-- the actual number of resources returned. Its value ranges from 1 to 1000+-- with a value of 1000 by default, or otherwise specified by the+-- max-results query parameter.+wpItemsPerPage :: Lens' WebProperties (Maybe Int32)+wpItemsPerPage+ = lens _wpItemsPerPage+ (\ s a -> s{_wpItemsPerPage = a})+ . mapping _Coerce++-- | Collection type.+wpKind :: Lens' WebProperties Text+wpKind = lens _wpKind (\ s a -> s{_wpKind = a})++-- | Email ID of the authenticated user+wpUsername :: Lens' WebProperties (Maybe Text)+wpUsername+ = lens _wpUsername (\ s a -> s{_wpUsername = a})++-- | A list of web properties.+wpItems :: Lens' WebProperties [WebProperty]+wpItems+ = lens _wpItems (\ s a -> s{_wpItems = a}) . _Default+ . _Coerce++-- | The total number of results for the query, regardless of the number of+-- results in the response.+wpTotalResults :: Lens' WebProperties (Maybe Int32)+wpTotalResults+ = lens _wpTotalResults+ (\ s a -> s{_wpTotalResults = a})+ . mapping _Coerce++-- | The starting index of the resources, which is 1 by default or otherwise+-- specified by the start-index query parameter.+wpStartIndex :: Lens' WebProperties (Maybe Int32)+wpStartIndex+ = lens _wpStartIndex (\ s a -> s{_wpStartIndex = a})+ . mapping _Coerce++-- | Link to previous page for this web property collection.+wpPreviousLink :: Lens' WebProperties (Maybe Text)+wpPreviousLink+ = lens _wpPreviousLink+ (\ s a -> s{_wpPreviousLink = a})++instance FromJSON WebProperties where+ parseJSON+ = withObject "WebProperties"+ (\ o ->+ WebProperties' <$>+ (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>+ (o .:? "kind" .!= "analytics#webproperties")+ <*> (o .:? "username")+ <*> (o .:? "items" .!= mempty)+ <*> (o .:? "totalResults")+ <*> (o .:? "startIndex")+ <*> (o .:? "previousLink"))++instance ToJSON WebProperties where+ toJSON WebProperties'{..}+ = object+ (catMaybes+ [("nextLink" .=) <$> _wpNextLink,+ ("itemsPerPage" .=) <$> _wpItemsPerPage,+ Just ("kind" .= _wpKind),+ ("username" .=) <$> _wpUsername,+ ("items" .=) <$> _wpItems,+ ("totalResults" .=) <$> _wpTotalResults,+ ("startIndex" .=) <$> _wpStartIndex,+ ("previousLink" .=) <$> _wpPreviousLink])++-- | A custom metric collection lists Analytics custom metrics to which the+-- user has access. Each resource in the collection corresponds to a single+-- Analytics custom metric.+--+-- /See:/ 'customMetrics' smart constructor.+data CustomMetrics =+ CustomMetrics'+ { _cmNextLink :: !(Maybe Text)+ , _cmItemsPerPage :: !(Maybe (Textual Int32))+ , _cmKind :: !Text+ , _cmUsername :: !(Maybe Text)+ , _cmItems :: !(Maybe [CustomMetric])+ , _cmTotalResults :: !(Maybe (Textual Int32))+ , _cmStartIndex :: !(Maybe (Textual Int32))+ , _cmPreviousLink :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'CustomMetrics' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cmNextLink'+--+-- * 'cmItemsPerPage'+--+-- * 'cmKind'+--+-- * 'cmUsername'+--+-- * 'cmItems'+--+-- * 'cmTotalResults'+--+-- * 'cmStartIndex'+--+-- * 'cmPreviousLink'+customMetrics+ :: CustomMetrics+customMetrics =+ CustomMetrics'+ { _cmNextLink = Nothing+ , _cmItemsPerPage = Nothing+ , _cmKind = "analytics#customMetrics"+ , _cmUsername = Nothing+ , _cmItems = Nothing+ , _cmTotalResults = Nothing+ , _cmStartIndex = Nothing+ , _cmPreviousLink = Nothing+ }+++-- | Link to next page for this custom metric collection.+cmNextLink :: Lens' CustomMetrics (Maybe Text)+cmNextLink+ = lens _cmNextLink (\ s a -> s{_cmNextLink = a})++-- | The maximum number of resources the response can contain, regardless of+-- the actual number of resources returned. Its value ranges from 1 to 1000+-- with a value of 1000 by default, or otherwise specified by the+-- max-results query parameter.+cmItemsPerPage :: Lens' CustomMetrics (Maybe Int32)+cmItemsPerPage+ = lens _cmItemsPerPage+ (\ s a -> s{_cmItemsPerPage = a})+ . mapping _Coerce++-- | Collection type.+cmKind :: Lens' CustomMetrics Text+cmKind = lens _cmKind (\ s a -> s{_cmKind = a})++-- | Email ID of the authenticated user+cmUsername :: Lens' CustomMetrics (Maybe Text)+cmUsername+ = lens _cmUsername (\ s a -> s{_cmUsername = a})++-- | Collection of custom metrics.+cmItems :: Lens' CustomMetrics [CustomMetric]+cmItems+ = lens _cmItems (\ s a -> s{_cmItems = a}) . _Default+ . _Coerce++-- | The total number of results for the query, regardless of the number of+-- results in the response.+cmTotalResults :: Lens' CustomMetrics (Maybe Int32)+cmTotalResults+ = lens _cmTotalResults+ (\ s a -> s{_cmTotalResults = a})+ . mapping _Coerce++-- | The starting index of the resources, which is 1 by default or otherwise+-- specified by the start-index query parameter.+cmStartIndex :: Lens' CustomMetrics (Maybe Int32)+cmStartIndex+ = lens _cmStartIndex (\ s a -> s{_cmStartIndex = a})+ . mapping _Coerce++-- | Link to previous page for this custom metric collection.+cmPreviousLink :: Lens' CustomMetrics (Maybe Text)+cmPreviousLink+ = lens _cmPreviousLink+ (\ s a -> s{_cmPreviousLink = a})++instance FromJSON CustomMetrics where+ parseJSON+ = withObject "CustomMetrics"+ (\ o ->+ CustomMetrics' <$>+ (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>+ (o .:? "kind" .!= "analytics#customMetrics")+ <*> (o .:? "username")+ <*> (o .:? "items" .!= mempty)+ <*> (o .:? "totalResults")+ <*> (o .:? "startIndex")+ <*> (o .:? "previousLink"))++instance ToJSON CustomMetrics where+ toJSON CustomMetrics'{..}+ = object+ (catMaybes+ [("nextLink" .=) <$> _cmNextLink,+ ("itemsPerPage" .=) <$> _cmItemsPerPage,+ Just ("kind" .= _cmKind),+ ("username" .=) <$> _cmUsername,+ ("items" .=) <$> _cmItems,+ ("totalResults" .=) <$> _cmTotalResults,+ ("startIndex" .=) <$> _cmStartIndex,+ ("previousLink" .=) <$> _cmPreviousLink])++-- | Details for the filter of the type ADVANCED.+--+-- /See:/ 'filterAdvancedDetails' smart constructor.+data FilterAdvancedDetails =+ FilterAdvancedDetails'+ { _fadExtractA :: !(Maybe Text)+ , _fadFieldARequired :: !(Maybe Bool)+ , _fadFieldA :: !(Maybe Text)+ , _fadFieldBIndex :: !(Maybe (Textual Int32))+ , _fadOutputToField :: !(Maybe Text)+ , _fadOutputConstructor :: !(Maybe Text)+ , _fadExtractB :: !(Maybe Text)+ , _fadFieldAIndex :: !(Maybe (Textual Int32))+ , _fadCaseSensitive :: !(Maybe Bool)+ , _fadOutputToFieldIndex :: !(Maybe (Textual Int32))+ , _fadFieldB :: !(Maybe Text)+ , _fadFieldBRequired :: !(Maybe Bool)+ , _fadOverrideOutputField :: !(Maybe Bool)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'FilterAdvancedDetails' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'fadExtractA'+--+-- * 'fadFieldARequired'+--+-- * 'fadFieldA'+--+-- * 'fadFieldBIndex'+--+-- * 'fadOutputToField'+--+-- * 'fadOutputConstructor'+--+-- * 'fadExtractB'+--+-- * 'fadFieldAIndex'+--+-- * 'fadCaseSensitive'+--+-- * 'fadOutputToFieldIndex'+--+-- * 'fadFieldB'+--+-- * 'fadFieldBRequired'+--+-- * 'fadOverrideOutputField'+filterAdvancedDetails+ :: FilterAdvancedDetails+filterAdvancedDetails =+ FilterAdvancedDetails'+ { _fadExtractA = Nothing+ , _fadFieldARequired = Nothing+ , _fadFieldA = Nothing+ , _fadFieldBIndex = Nothing+ , _fadOutputToField = Nothing+ , _fadOutputConstructor = Nothing+ , _fadExtractB = Nothing+ , _fadFieldAIndex = Nothing+ , _fadCaseSensitive = Nothing+ , _fadOutputToFieldIndex = Nothing+ , _fadFieldB = Nothing+ , _fadFieldBRequired = Nothing+ , _fadOverrideOutputField = Nothing+ }+++-- | Expression to extract from field A.+fadExtractA :: Lens' FilterAdvancedDetails (Maybe Text)+fadExtractA+ = lens _fadExtractA (\ s a -> s{_fadExtractA = a})++-- | Indicates if field A is required to match.+fadFieldARequired :: Lens' FilterAdvancedDetails (Maybe Bool)+fadFieldARequired+ = lens _fadFieldARequired+ (\ s a -> s{_fadFieldARequired = a})++-- | Field A.+fadFieldA :: Lens' FilterAdvancedDetails (Maybe Text)+fadFieldA+ = lens _fadFieldA (\ s a -> s{_fadFieldA = a})++-- | The Index of the custom dimension. Required if field is a+-- CUSTOM_DIMENSION.+fadFieldBIndex :: Lens' FilterAdvancedDetails (Maybe Int32)+fadFieldBIndex+ = lens _fadFieldBIndex+ (\ s a -> s{_fadFieldBIndex = a})+ . mapping _Coerce++-- | Output field.+fadOutputToField :: Lens' FilterAdvancedDetails (Maybe Text)+fadOutputToField+ = lens _fadOutputToField+ (\ s a -> s{_fadOutputToField = a})++-- | Expression used to construct the output value.+fadOutputConstructor :: Lens' FilterAdvancedDetails (Maybe Text)+fadOutputConstructor+ = lens _fadOutputConstructor+ (\ s a -> s{_fadOutputConstructor = a})++-- | Expression to extract from field B.+fadExtractB :: Lens' FilterAdvancedDetails (Maybe Text)+fadExtractB+ = lens _fadExtractB (\ s a -> s{_fadExtractB = a})++-- | The Index of the custom dimension. Required if field is a+-- CUSTOM_DIMENSION.+fadFieldAIndex :: Lens' FilterAdvancedDetails (Maybe Int32)+fadFieldAIndex+ = lens _fadFieldAIndex+ (\ s a -> s{_fadFieldAIndex = a})+ . mapping _Coerce++-- | Indicates if the filter expressions are case sensitive.+fadCaseSensitive :: Lens' FilterAdvancedDetails (Maybe Bool)+fadCaseSensitive+ = lens _fadCaseSensitive+ (\ s a -> s{_fadCaseSensitive = a})++-- | The Index of the custom dimension. Required if field is a+-- CUSTOM_DIMENSION.+fadOutputToFieldIndex :: Lens' FilterAdvancedDetails (Maybe Int32)+fadOutputToFieldIndex+ = lens _fadOutputToFieldIndex+ (\ s a -> s{_fadOutputToFieldIndex = a})+ . mapping _Coerce++-- | Field B.+fadFieldB :: Lens' FilterAdvancedDetails (Maybe Text)+fadFieldB+ = lens _fadFieldB (\ s a -> s{_fadFieldB = a})++-- | Indicates if field B is required to match.+fadFieldBRequired :: Lens' FilterAdvancedDetails (Maybe Bool)+fadFieldBRequired+ = lens _fadFieldBRequired+ (\ s a -> s{_fadFieldBRequired = a})++-- | Indicates if the existing value of the output field, if any, should be+-- overridden by the output expression.+fadOverrideOutputField :: Lens' FilterAdvancedDetails (Maybe Bool)+fadOverrideOutputField+ = lens _fadOverrideOutputField+ (\ s a -> s{_fadOverrideOutputField = a})++instance FromJSON FilterAdvancedDetails where+ parseJSON+ = withObject "FilterAdvancedDetails"+ (\ o ->+ FilterAdvancedDetails' <$>+ (o .:? "extractA") <*> (o .:? "fieldARequired") <*>+ (o .:? "fieldA")+ <*> (o .:? "fieldBIndex")+ <*> (o .:? "outputToField")+ <*> (o .:? "outputConstructor")+ <*> (o .:? "extractB")+ <*> (o .:? "fieldAIndex")+ <*> (o .:? "caseSensitive")+ <*> (o .:? "outputToFieldIndex")+ <*> (o .:? "fieldB")+ <*> (o .:? "fieldBRequired")+ <*> (o .:? "overrideOutputField"))++instance ToJSON FilterAdvancedDetails where+ toJSON FilterAdvancedDetails'{..}+ = object+ (catMaybes+ [("extractA" .=) <$> _fadExtractA,+ ("fieldARequired" .=) <$> _fadFieldARequired,+ ("fieldA" .=) <$> _fadFieldA,+ ("fieldBIndex" .=) <$> _fadFieldBIndex,+ ("outputToField" .=) <$> _fadOutputToField,+ ("outputConstructor" .=) <$> _fadOutputConstructor,+ ("extractB" .=) <$> _fadExtractB,+ ("fieldAIndex" .=) <$> _fadFieldAIndex,+ ("caseSensitive" .=) <$> _fadCaseSensitive,+ ("outputToFieldIndex" .=) <$> _fadOutputToFieldIndex,+ ("fieldB" .=) <$> _fadFieldB,+ ("fieldBRequired" .=) <$> _fadFieldBRequired,+ ("overrideOutputField" .=) <$>+ _fadOverrideOutputField])++-- | JSON template for an Analytics account tree response. The account tree+-- response is used in the provisioning api to return the result of+-- creating an account, property, and view (profile).+--+-- /See:/ 'accountTreeResponse' smart constructor.+data AccountTreeResponse =+ AccountTreeResponse'+ { _atrtKind :: !Text+ , _atrtProFile :: !(Maybe ProFile)+ , _atrtAccount :: !(Maybe Account)+ , _atrtWebProperty :: !(Maybe WebProperty)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'AccountTreeResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'atrtKind'+--+-- * 'atrtProFile'+--+-- * 'atrtAccount'+--+-- * 'atrtWebProperty'+accountTreeResponse+ :: AccountTreeResponse+accountTreeResponse =+ AccountTreeResponse'+ { _atrtKind = "analytics#accountTreeResponse"+ , _atrtProFile = Nothing+ , _atrtAccount = Nothing+ , _atrtWebProperty = Nothing+ }+++-- | Resource type for account ticket.+atrtKind :: Lens' AccountTreeResponse Text+atrtKind = lens _atrtKind (\ s a -> s{_atrtKind = a})++-- | View (Profile) for the account.+atrtProFile :: Lens' AccountTreeResponse (Maybe ProFile)+atrtProFile+ = lens _atrtProFile (\ s a -> s{_atrtProFile = a})++-- | The account created.+atrtAccount :: Lens' AccountTreeResponse (Maybe Account)+atrtAccount+ = lens _atrtAccount (\ s a -> s{_atrtAccount = a})++-- | Web property for the account.+atrtWebProperty :: Lens' AccountTreeResponse (Maybe WebProperty)+atrtWebProperty+ = lens _atrtWebProperty+ (\ s a -> s{_atrtWebProperty = a})++instance FromJSON AccountTreeResponse where+ parseJSON+ = withObject "AccountTreeResponse"+ (\ o ->+ AccountTreeResponse' <$>+ (o .:? "kind" .!= "analytics#accountTreeResponse")+ <*> (o .:? "profile")+ <*> (o .:? "account")+ <*> (o .:? "webproperty"))++instance ToJSON AccountTreeResponse where+ toJSON AccountTreeResponse'{..}+ = object+ (catMaybes+ [Just ("kind" .= _atrtKind),+ ("profile" .=) <$> _atrtProFile,+ ("account" .=) <$> _atrtAccount,+ ("webproperty" .=) <$> _atrtWebProperty])++-- | Details for the filter of the type UPPER.+--+-- /See:/ 'filterUppercaseDetails' smart constructor.+data FilterUppercaseDetails =+ FilterUppercaseDetails'+ { _fudFieldIndex :: !(Maybe (Textual Int32))+ , _fudField :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'FilterUppercaseDetails' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'fudFieldIndex'+--+-- * 'fudField'+filterUppercaseDetails+ :: FilterUppercaseDetails+filterUppercaseDetails =+ FilterUppercaseDetails' {_fudFieldIndex = Nothing, _fudField = Nothing}+++-- | The Index of the custom dimension. Required if field is a+-- CUSTOM_DIMENSION.+fudFieldIndex :: Lens' FilterUppercaseDetails (Maybe Int32)+fudFieldIndex+ = lens _fudFieldIndex+ (\ s a -> s{_fudFieldIndex = a})+ . mapping _Coerce++-- | Field to use in the filter.+fudField :: Lens' FilterUppercaseDetails (Maybe Text)+fudField = lens _fudField (\ s a -> s{_fudField = a})++instance FromJSON FilterUppercaseDetails where+ parseJSON+ = withObject "FilterUppercaseDetails"+ (\ o ->+ FilterUppercaseDetails' <$>+ (o .:? "fieldIndex") <*> (o .:? "field"))++instance ToJSON FilterUppercaseDetails where+ toJSON FilterUppercaseDetails'{..}+ = object+ (catMaybes+ [("fieldIndex" .=) <$> _fudFieldIndex,+ ("field" .=) <$> _fudField])++--+-- /See:/ 'customDataSourceChildLink' smart constructor.+data CustomDataSourceChildLink =+ CustomDataSourceChildLink'+ { _cdsclHref :: !(Maybe Text)+ , _cdsclType :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'CustomDataSourceChildLink' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cdsclHref'+--+-- * 'cdsclType'+customDataSourceChildLink+ :: CustomDataSourceChildLink+customDataSourceChildLink =+ CustomDataSourceChildLink' {_cdsclHref = Nothing, _cdsclType = Nothing}+++-- | Link to the list of daily uploads for this custom data source. Link to+-- the list of uploads for this custom data source.+cdsclHref :: Lens' CustomDataSourceChildLink (Maybe Text)+cdsclHref+ = lens _cdsclHref (\ s a -> s{_cdsclHref = a})++-- | Value is \"analytics#dailyUploads\". Value is \"analytics#uploads\".+cdsclType :: Lens' CustomDataSourceChildLink (Maybe Text)+cdsclType+ = lens _cdsclType (\ s a -> s{_cdsclType = a})++instance FromJSON CustomDataSourceChildLink where+ parseJSON+ = withObject "CustomDataSourceChildLink"+ (\ o ->+ CustomDataSourceChildLink' <$>+ (o .:? "href") <*> (o .:? "type"))++instance ToJSON CustomDataSourceChildLink where+ toJSON CustomDataSourceChildLink'{..}+ = object+ (catMaybes+ [("href" .=) <$> _cdsclHref,+ ("type" .=) <$> _cdsclType])++-- | JSON template for an Analytics Remarketing Include Conditions.+--+-- /See:/ 'includeConditions' smart constructor.+data IncludeConditions =+ IncludeConditions'+ { _icKind :: !Text+ , _icDaysToLookBack :: !(Maybe (Textual Int32))+ , _icMembershipDurationDays :: !(Maybe (Textual Int32))+ , _icSegment :: !(Maybe Text)+ , _icIsSmartList :: !(Maybe Bool)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'IncludeConditions' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'icKind'+--+-- * 'icDaysToLookBack'+--+-- * 'icMembershipDurationDays'+--+-- * 'icSegment'+--+-- * 'icIsSmartList'+includeConditions+ :: IncludeConditions+includeConditions =+ IncludeConditions'+ { _icKind = "analytics#includeConditions"+ , _icDaysToLookBack = Nothing+ , _icMembershipDurationDays = Nothing+ , _icSegment = Nothing+ , _icIsSmartList = Nothing+ }+++-- | Resource type for include conditions.+icKind :: Lens' IncludeConditions Text+icKind = lens _icKind (\ s a -> s{_icKind = a})++-- | The look-back window lets you specify a time frame for evaluating the+-- behavior that qualifies users for your audience. For example, if your+-- filters include users from Central Asia, and Transactions Greater than+-- 2, and you set the look-back window to 14 days, then any user from+-- Central Asia whose cumulative transactions exceed 2 during the last 14+-- days is added to the audience.+icDaysToLookBack :: Lens' IncludeConditions (Maybe Int32)+icDaysToLookBack+ = lens _icDaysToLookBack+ (\ s a -> s{_icDaysToLookBack = a})+ . mapping _Coerce++-- | Number of days (in the range 1 to 540) a user remains in the audience.+icMembershipDurationDays :: Lens' IncludeConditions (Maybe Int32)+icMembershipDurationDays+ = lens _icMembershipDurationDays+ (\ s a -> s{_icMembershipDurationDays = a})+ . mapping _Coerce++-- | The segment condition that will cause a user to be added to an audience.+icSegment :: Lens' IncludeConditions (Maybe Text)+icSegment+ = lens _icSegment (\ s a -> s{_icSegment = a})++-- | Boolean indicating whether this segment is a smart list.+-- https:\/\/support.google.com\/analytics\/answer\/4628577+icIsSmartList :: Lens' IncludeConditions (Maybe Bool)+icIsSmartList+ = lens _icIsSmartList+ (\ s a -> s{_icIsSmartList = a})++instance FromJSON IncludeConditions where+ parseJSON+ = withObject "IncludeConditions"+ (\ o ->+ IncludeConditions' <$>+ (o .:? "kind" .!= "analytics#includeConditions") <*>+ (o .:? "daysToLookBack")+ <*> (o .:? "membershipDurationDays")+ <*> (o .:? "segment")+ <*> (o .:? "isSmartList"))++instance ToJSON IncludeConditions where+ toJSON IncludeConditions'{..}+ = object+ (catMaybes+ [Just ("kind" .= _icKind),+ ("daysToLookBack" .=) <$> _icDaysToLookBack,+ ("membershipDurationDays" .=) <$>+ _icMembershipDurationDays,+ ("segment" .=) <$> _icSegment,+ ("isSmartList" .=) <$> _icIsSmartList])++-- | Parent link for this filter. Points to the account to which this filter+-- belongs.+--+-- /See:/ 'filterParentLink' smart constructor.+data FilterParentLink =+ FilterParentLink'+ { _fplHref :: !(Maybe Text)+ , _fplType :: !Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'FilterParentLink' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'fplHref'+--+-- * 'fplType'+filterParentLink+ :: FilterParentLink+filterParentLink =+ FilterParentLink' {_fplHref = Nothing, _fplType = "analytics#account"}+++-- | Link to the account to which this filter belongs.+fplHref :: Lens' FilterParentLink (Maybe Text)+fplHref = lens _fplHref (\ s a -> s{_fplHref = a})++-- | Value is \"analytics#account\".+fplType :: Lens' FilterParentLink Text+fplType = lens _fplType (\ s a -> s{_fplType = a})++instance FromJSON FilterParentLink where+ parseJSON+ = withObject "FilterParentLink"+ (\ o ->+ FilterParentLink' <$>+ (o .:? "href") <*>+ (o .:? "type" .!= "analytics#account"))++instance ToJSON FilterParentLink where+ toJSON FilterParentLink'{..}+ = object+ (catMaybes+ [("href" .=) <$> _fplHref,+ Just ("type" .= _fplType)])++-- | JSON template for a hash Client Id request resource.+--+-- /See:/ 'hashClientIdRequest' smart constructor.+data HashClientIdRequest =+ HashClientIdRequest'+ { _hClientId :: !(Maybe Text)+ , _hWebPropertyId :: !(Maybe Text)+ , _hKind :: !Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'HashClientIdRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'hClientId'+--+-- * 'hWebPropertyId'+--+-- * 'hKind'+hashClientIdRequest+ :: HashClientIdRequest+hashClientIdRequest =+ HashClientIdRequest'+ { _hClientId = Nothing+ , _hWebPropertyId = Nothing+ , _hKind = "analytics#hashClientIdRequest"+ }+++hClientId :: Lens' HashClientIdRequest (Maybe Text)+hClientId+ = lens _hClientId (\ s a -> s{_hClientId = a})++hWebPropertyId :: Lens' HashClientIdRequest (Maybe Text)+hWebPropertyId+ = lens _hWebPropertyId+ (\ s a -> s{_hWebPropertyId = a})++hKind :: Lens' HashClientIdRequest Text+hKind = lens _hKind (\ s a -> s{_hKind = a})++instance FromJSON HashClientIdRequest where+ parseJSON+ = withObject "HashClientIdRequest"+ (\ o ->+ HashClientIdRequest' <$>+ (o .:? "clientId") <*> (o .:? "webPropertyId") <*>+ (o .:? "kind" .!= "analytics#hashClientIdRequest"))++instance ToJSON HashClientIdRequest where+ toJSON HashClientIdRequest'{..}+ = object+ (catMaybes+ [("clientId" .=) <$> _hClientId,+ ("webPropertyId" .=) <$> _hWebPropertyId,+ Just ("kind" .= _hKind)])++-- | Real time data for a given view (profile).+--+-- /See:/ 'realtimeData' smart constructor.+data RealtimeData =+ RealtimeData'+ { _rdProFileInfo :: !(Maybe RealtimeDataProFileInfo)+ , _rdKind :: !Text+ , _rdRows :: !(Maybe [[Text]])+ , _rdSelfLink :: !(Maybe Text)+ , _rdQuery :: !(Maybe RealtimeDataQuery)+ , _rdColumnHeaders :: !(Maybe [RealtimeDataColumnHeadersItem])+ , _rdId :: !(Maybe Text)+ , _rdTotalResults :: !(Maybe (Textual Int32))+ , _rdTotalsForAllResults :: !(Maybe RealtimeDataTotalsForAllResults)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'RealtimeData' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rdProFileInfo'+--+-- * 'rdKind'+--+-- * 'rdRows'+--+-- * 'rdSelfLink'+--+-- * 'rdQuery'+--+-- * 'rdColumnHeaders'+--+-- * 'rdId'+--+-- * 'rdTotalResults'+--+-- * 'rdTotalsForAllResults'+realtimeData+ :: RealtimeData+realtimeData =+ RealtimeData'+ { _rdProFileInfo = Nothing+ , _rdKind = "analytics#realtimeData"+ , _rdRows = Nothing+ , _rdSelfLink = Nothing+ , _rdQuery = Nothing+ , _rdColumnHeaders = Nothing+ , _rdId = Nothing+ , _rdTotalResults = Nothing+ , _rdTotalsForAllResults = Nothing+ }+++-- | Information for the view (profile), for which the real time data was+-- requested.+rdProFileInfo :: Lens' RealtimeData (Maybe RealtimeDataProFileInfo)+rdProFileInfo+ = lens _rdProFileInfo+ (\ s a -> s{_rdProFileInfo = a})++-- | Resource type.+rdKind :: Lens' RealtimeData Text+rdKind = lens _rdKind (\ s a -> s{_rdKind = a})++-- | Real time data rows, where each row contains a list of dimension values+-- followed by the metric values. The order of dimensions and metrics is+-- same as specified in the request.+rdRows :: Lens' RealtimeData [[Text]]+rdRows+ = lens _rdRows (\ s a -> s{_rdRows = a}) . _Default .+ _Coerce++-- | Link to this page.+rdSelfLink :: Lens' RealtimeData (Maybe Text)+rdSelfLink+ = lens _rdSelfLink (\ s a -> s{_rdSelfLink = a})++-- | Real time data request query parameters.+rdQuery :: Lens' RealtimeData (Maybe RealtimeDataQuery)+rdQuery = lens _rdQuery (\ s a -> s{_rdQuery = a})++-- | Column headers that list dimension names followed by the metric names.+-- The order of dimensions and metrics is same as specified in the request.+rdColumnHeaders :: Lens' RealtimeData [RealtimeDataColumnHeadersItem]+rdColumnHeaders+ = lens _rdColumnHeaders+ (\ s a -> s{_rdColumnHeaders = a})+ . _Default+ . _Coerce++-- | Unique ID for this data response.+rdId :: Lens' RealtimeData (Maybe Text)+rdId = lens _rdId (\ s a -> s{_rdId = a})++-- | The total number of rows for the query, regardless of the number of rows+-- in the response.+rdTotalResults :: Lens' RealtimeData (Maybe Int32)+rdTotalResults+ = lens _rdTotalResults+ (\ s a -> s{_rdTotalResults = a})+ . mapping _Coerce++-- | Total values for the requested metrics over all the results, not just+-- the results returned in this response. The order of the metric totals is+-- same as the metric order specified in the request.+rdTotalsForAllResults :: Lens' RealtimeData (Maybe RealtimeDataTotalsForAllResults)+rdTotalsForAllResults+ = lens _rdTotalsForAllResults+ (\ s a -> s{_rdTotalsForAllResults = a})++instance FromJSON RealtimeData where+ parseJSON+ = withObject "RealtimeData"+ (\ o ->+ RealtimeData' <$>+ (o .:? "profileInfo") <*>+ (o .:? "kind" .!= "analytics#realtimeData")+ <*> (o .:? "rows" .!= mempty)+ <*> (o .:? "selfLink")+ <*> (o .:? "query")+ <*> (o .:? "columnHeaders" .!= mempty)+ <*> (o .:? "id")+ <*> (o .:? "totalResults")+ <*> (o .:? "totalsForAllResults"))++instance ToJSON RealtimeData where+ toJSON RealtimeData'{..}+ = object+ (catMaybes+ [("profileInfo" .=) <$> _rdProFileInfo,+ Just ("kind" .= _rdKind), ("rows" .=) <$> _rdRows,+ ("selfLink" .=) <$> _rdSelfLink,+ ("query" .=) <$> _rdQuery,+ ("columnHeaders" .=) <$> _rdColumnHeaders,+ ("id" .=) <$> _rdId,+ ("totalResults" .=) <$> _rdTotalResults,+ ("totalsForAllResults" .=) <$>+ _rdTotalsForAllResults])++-- | JSON template for Analytics Custom Metric.+--+-- /See:/ 'customMetric' smart constructor.+data CustomMetric =+ CustomMetric'+ { _cusParentLink :: !(Maybe CustomMetricParentLink)+ , _cusWebPropertyId :: !(Maybe Text)+ , _cusKind :: !Text+ , _cusMaxValue :: !(Maybe Text)+ , _cusCreated :: !(Maybe DateTime')+ , _cusMinValue :: !(Maybe Text)+ , _cusActive :: !(Maybe Bool)+ , _cusSelfLink :: !(Maybe Text)+ , _cusAccountId :: !(Maybe Text)+ , _cusName :: !(Maybe Text)+ , _cusScope :: !(Maybe Text)+ , _cusId :: !(Maybe Text)+ , _cusUpdated :: !(Maybe DateTime')+ , _cusType :: !(Maybe Text)+ , _cusIndex :: !(Maybe (Textual Int32))+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'CustomMetric' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cusParentLink'+--+-- * 'cusWebPropertyId'+--+-- * 'cusKind'+--+-- * 'cusMaxValue'+--+-- * 'cusCreated'+--+-- * 'cusMinValue'+--+-- * 'cusActive'+--+-- * 'cusSelfLink'+--+-- * 'cusAccountId'+--+-- * 'cusName'+--+-- * 'cusScope'+--+-- * 'cusId'+--+-- * 'cusUpdated'+--+-- * 'cusType'+--+-- * 'cusIndex'+customMetric+ :: CustomMetric+customMetric =+ CustomMetric'+ { _cusParentLink = Nothing+ , _cusWebPropertyId = Nothing+ , _cusKind = "analytics#customMetric"+ , _cusMaxValue = Nothing+ , _cusCreated = Nothing+ , _cusMinValue = Nothing+ , _cusActive = Nothing+ , _cusSelfLink = Nothing+ , _cusAccountId = Nothing+ , _cusName = Nothing+ , _cusScope = Nothing+ , _cusId = Nothing+ , _cusUpdated = Nothing+ , _cusType = Nothing+ , _cusIndex = Nothing+ }+++-- | Parent link for the custom metric. Points to the property to which the+-- custom metric belongs.+cusParentLink :: Lens' CustomMetric (Maybe CustomMetricParentLink)+cusParentLink+ = lens _cusParentLink+ (\ s a -> s{_cusParentLink = a})++-- | Property ID.+cusWebPropertyId :: Lens' CustomMetric (Maybe Text)+cusWebPropertyId+ = lens _cusWebPropertyId+ (\ s a -> s{_cusWebPropertyId = a})++-- | Kind value for a custom metric. Set to \"analytics#customMetric\". It is+-- a read-only field.+cusKind :: Lens' CustomMetric Text+cusKind = lens _cusKind (\ s a -> s{_cusKind = a})++-- | Max value of custom metric.+cusMaxValue :: Lens' CustomMetric (Maybe Text)+cusMaxValue+ = lens _cusMaxValue (\ s a -> s{_cusMaxValue = a})++-- | Time the custom metric was created.+cusCreated :: Lens' CustomMetric (Maybe UTCTime)+cusCreated+ = lens _cusCreated (\ s a -> s{_cusCreated = a}) .+ mapping _DateTime++-- | Min value of custom metric.+cusMinValue :: Lens' CustomMetric (Maybe Text)+cusMinValue+ = lens _cusMinValue (\ s a -> s{_cusMinValue = a})++-- | Boolean indicating whether the custom metric is active.+cusActive :: Lens' CustomMetric (Maybe Bool)+cusActive+ = lens _cusActive (\ s a -> s{_cusActive = a})++-- | Link for the custom metric+cusSelfLink :: Lens' CustomMetric (Maybe Text)+cusSelfLink+ = lens _cusSelfLink (\ s a -> s{_cusSelfLink = a})++-- | Account ID.+cusAccountId :: Lens' CustomMetric (Maybe Text)+cusAccountId+ = lens _cusAccountId (\ s a -> s{_cusAccountId = a})++-- | Name of the custom metric.+cusName :: Lens' CustomMetric (Maybe Text)+cusName = lens _cusName (\ s a -> s{_cusName = a})++-- | Scope of the custom metric: HIT or PRODUCT.+cusScope :: Lens' CustomMetric (Maybe Text)+cusScope = lens _cusScope (\ s a -> s{_cusScope = a})++-- | Custom metric ID.+cusId :: Lens' CustomMetric (Maybe Text)+cusId = lens _cusId (\ s a -> s{_cusId = a})++-- | Time the custom metric was last modified.+cusUpdated :: Lens' CustomMetric (Maybe UTCTime)+cusUpdated+ = lens _cusUpdated (\ s a -> s{_cusUpdated = a}) .+ mapping _DateTime++-- | Data type of custom metric.+cusType :: Lens' CustomMetric (Maybe Text)+cusType = lens _cusType (\ s a -> s{_cusType = a})++-- | Index of the custom metric.+cusIndex :: Lens' CustomMetric (Maybe Int32)+cusIndex+ = lens _cusIndex (\ s a -> s{_cusIndex = a}) .+ mapping _Coerce++instance FromJSON CustomMetric where+ parseJSON+ = withObject "CustomMetric"+ (\ o ->+ CustomMetric' <$>+ (o .:? "parentLink") <*> (o .:? "webPropertyId") <*>+ (o .:? "kind" .!= "analytics#customMetric")+ <*> (o .:? "max_value")+ <*> (o .:? "created")+ <*> (o .:? "min_value")+ <*> (o .:? "active")+ <*> (o .:? "selfLink")+ <*> (o .:? "accountId")+ <*> (o .:? "name")+ <*> (o .:? "scope")+ <*> (o .:? "id")+ <*> (o .:? "updated")+ <*> (o .:? "type")+ <*> (o .:? "index"))++instance ToJSON CustomMetric where+ toJSON CustomMetric'{..}+ = object+ (catMaybes+ [("parentLink" .=) <$> _cusParentLink,+ ("webPropertyId" .=) <$> _cusWebPropertyId,+ Just ("kind" .= _cusKind),+ ("max_value" .=) <$> _cusMaxValue,+ ("created" .=) <$> _cusCreated,+ ("min_value" .=) <$> _cusMinValue,+ ("active" .=) <$> _cusActive,+ ("selfLink" .=) <$> _cusSelfLink,+ ("accountId" .=) <$> _cusAccountId,+ ("name" .=) <$> _cusName, ("scope" .=) <$> _cusScope,+ ("id" .=) <$> _cusId, ("updated" .=) <$> _cusUpdated,+ ("type" .=) <$> _cusType,+ ("index" .=) <$> _cusIndex])++-- | JSON template for an Analytics ProfileSummary. ProfileSummary returns+-- basic information (i.e., summary) for a profile.+--+-- /See:/ 'proFileSummary' smart constructor.+data ProFileSummary =+ ProFileSummary'+ { _pfsKind :: !Text+ , _pfsName :: !(Maybe Text)+ , _pfsStarred :: !(Maybe Bool)+ , _pfsId :: !(Maybe Text)+ , _pfsType :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ProFileSummary' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pfsKind'+--+-- * 'pfsName'+--+-- * 'pfsStarred'+--+-- * 'pfsId'+--+-- * 'pfsType'+proFileSummary+ :: ProFileSummary+proFileSummary =+ ProFileSummary'+ { _pfsKind = "analytics#profileSummary"+ , _pfsName = Nothing+ , _pfsStarred = Nothing+ , _pfsId = Nothing+ , _pfsType = Nothing+ }+++-- | Resource type for Analytics ProfileSummary.+pfsKind :: Lens' ProFileSummary Text+pfsKind = lens _pfsKind (\ s a -> s{_pfsKind = a})++-- | View (profile) name.+pfsName :: Lens' ProFileSummary (Maybe Text)+pfsName = lens _pfsName (\ s a -> s{_pfsName = a})++-- | Indicates whether this view (profile) is starred or not.+pfsStarred :: Lens' ProFileSummary (Maybe Bool)+pfsStarred+ = lens _pfsStarred (\ s a -> s{_pfsStarred = a})++-- | View (profile) ID.+pfsId :: Lens' ProFileSummary (Maybe Text)+pfsId = lens _pfsId (\ s a -> s{_pfsId = a})++-- | View (Profile) type. Supported types: WEB or APP.+pfsType :: Lens' ProFileSummary (Maybe Text)+pfsType = lens _pfsType (\ s a -> s{_pfsType = a})++instance FromJSON ProFileSummary where+ parseJSON+ = withObject "ProFileSummary"+ (\ o ->+ ProFileSummary' <$>+ (o .:? "kind" .!= "analytics#profileSummary") <*>+ (o .:? "name")+ <*> (o .:? "starred")+ <*> (o .:? "id")+ <*> (o .:? "type"))++instance ToJSON ProFileSummary where+ toJSON ProFileSummary'{..}+ = object+ (catMaybes+ [Just ("kind" .= _pfsKind), ("name" .=) <$> _pfsName,+ ("starred" .=) <$> _pfsStarred, ("id" .=) <$> _pfsId,+ ("type" .=) <$> _pfsType])++-- | Parent link for the custom dimension. Points to the property to which+-- the custom dimension belongs.+--+-- /See:/ 'customDimensionParentLink' smart constructor.+data CustomDimensionParentLink =+ CustomDimensionParentLink'+ { _cdplHref :: !(Maybe Text)+ , _cdplType :: !Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'CustomDimensionParentLink' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cdplHref'+--+-- * 'cdplType'+customDimensionParentLink+ :: CustomDimensionParentLink+customDimensionParentLink =+ CustomDimensionParentLink'+ {_cdplHref = Nothing, _cdplType = "analytics#webproperty"}+++-- | Link to the property to which the custom dimension belongs.+cdplHref :: Lens' CustomDimensionParentLink (Maybe Text)+cdplHref = lens _cdplHref (\ s a -> s{_cdplHref = a})++-- | Type of the parent link. Set to \"analytics#webproperty\".+cdplType :: Lens' CustomDimensionParentLink Text+cdplType = lens _cdplType (\ s a -> s{_cdplType = a})++instance FromJSON CustomDimensionParentLink where+ parseJSON+ = withObject "CustomDimensionParentLink"+ (\ o ->+ CustomDimensionParentLink' <$>+ (o .:? "href") <*>+ (o .:? "type" .!= "analytics#webproperty"))++instance ToJSON CustomDimensionParentLink where+ toJSON CustomDimensionParentLink'{..}+ = object+ (catMaybes+ [("href" .=) <$> _cdplHref,+ Just ("type" .= _cdplType)])++-- | JSON template for an Analytics web property.+--+-- /See:/ 'webProperty' smart constructor.+data WebProperty =+ WebProperty'+ { _wParentLink :: !(Maybe WebPropertyParentLink)+ , _wChildLink :: !(Maybe WebPropertyChildLink)+ , _wDefaultProFileId :: !(Maybe (Textual Int64))+ , _wKind :: !Text+ , _wCreated :: !(Maybe DateTime')+ , _wDataRetentionTtl :: !(Maybe Text)+ , _wDataRetentionResetOnNewActivity :: !(Maybe Bool)+ , _wSelfLink :: !(Maybe Text)+ , _wAccountId :: !(Maybe Text)+ , _wName :: !(Maybe Text)+ , _wStarred :: !(Maybe Bool)+ , _wInternalWebPropertyId :: !(Maybe Text)+ , _wId :: !(Maybe Text)+ , _wUpdated :: !(Maybe DateTime')+ , _wProFileCount :: !(Maybe (Textual Int32))+ , _wPermissions :: !(Maybe WebPropertyPermissions)+ , _wWebsiteURL :: !(Maybe Text)+ , _wIndustryVertical :: !(Maybe Text)+ , _wLevel :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'WebProperty' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'wParentLink'+--+-- * 'wChildLink'+--+-- * 'wDefaultProFileId'+--+-- * 'wKind'+--+-- * 'wCreated'+--+-- * 'wDataRetentionTtl'+--+-- * 'wDataRetentionResetOnNewActivity'+--+-- * 'wSelfLink'+--+-- * 'wAccountId'+--+-- * 'wName'+--+-- * 'wStarred'+--+-- * 'wInternalWebPropertyId'+--+-- * 'wId'+--+-- * 'wUpdated'+--+-- * 'wProFileCount'+--+-- * 'wPermissions'+--+-- * 'wWebsiteURL'+--+-- * 'wIndustryVertical'+--+-- * 'wLevel'+webProperty+ :: WebProperty+webProperty =+ WebProperty'+ { _wParentLink = Nothing+ , _wChildLink = Nothing+ , _wDefaultProFileId = Nothing+ , _wKind = "analytics#webproperty"+ , _wCreated = Nothing+ , _wDataRetentionTtl = Nothing+ , _wDataRetentionResetOnNewActivity = Nothing+ , _wSelfLink = Nothing+ , _wAccountId = Nothing+ , _wName = Nothing+ , _wStarred = Nothing+ , _wInternalWebPropertyId = Nothing+ , _wId = Nothing+ , _wUpdated = Nothing+ , _wProFileCount = Nothing+ , _wPermissions = Nothing+ , _wWebsiteURL = Nothing+ , _wIndustryVertical = Nothing+ , _wLevel = Nothing+ }+++-- | Parent link for this web property. Points to the account to which this+-- web property belongs.+wParentLink :: Lens' WebProperty (Maybe WebPropertyParentLink)+wParentLink+ = lens _wParentLink (\ s a -> s{_wParentLink = a})++-- | Child link for this web property. Points to the list of views (profiles)+-- for this web property.+wChildLink :: Lens' WebProperty (Maybe WebPropertyChildLink)+wChildLink+ = lens _wChildLink (\ s a -> s{_wChildLink = a})++-- | Default view (profile) ID.+wDefaultProFileId :: Lens' WebProperty (Maybe Int64)+wDefaultProFileId+ = lens _wDefaultProFileId+ (\ s a -> s{_wDefaultProFileId = a})+ . mapping _Coerce++-- | Resource type for Analytics WebProperty.+wKind :: Lens' WebProperty Text+wKind = lens _wKind (\ s a -> s{_wKind = a})++-- | Time this web property was created.+wCreated :: Lens' WebProperty (Maybe UTCTime)+wCreated+ = lens _wCreated (\ s a -> s{_wCreated = a}) .+ mapping _DateTime++-- | The length of time for which user and event data is retained. This+-- property cannot be set on insert.+wDataRetentionTtl :: Lens' WebProperty (Maybe Text)+wDataRetentionTtl+ = lens _wDataRetentionTtl+ (\ s a -> s{_wDataRetentionTtl = a})++-- | Set to true to reset the retention period of the user identifier with+-- each new event from that user (thus setting the expiration date to+-- current time plus retention period). Set to false to delete data+-- associated with the user identifer automatically after the rentention+-- period. This property cannot be set on insert.+wDataRetentionResetOnNewActivity :: Lens' WebProperty (Maybe Bool)+wDataRetentionResetOnNewActivity+ = lens _wDataRetentionResetOnNewActivity+ (\ s a -> s{_wDataRetentionResetOnNewActivity = a})++-- | Link for this web property.+wSelfLink :: Lens' WebProperty (Maybe Text)+wSelfLink+ = lens _wSelfLink (\ s a -> s{_wSelfLink = a})++-- | Account ID to which this web property belongs.+wAccountId :: Lens' WebProperty (Maybe Text)+wAccountId+ = lens _wAccountId (\ s a -> s{_wAccountId = a})++-- | Name of this web property.+wName :: Lens' WebProperty (Maybe Text)+wName = lens _wName (\ s a -> s{_wName = a})++-- | Indicates whether this web property is starred or not.+wStarred :: Lens' WebProperty (Maybe Bool)+wStarred = lens _wStarred (\ s a -> s{_wStarred = a})++-- | Internal ID for this web property.+wInternalWebPropertyId :: Lens' WebProperty (Maybe Text)+wInternalWebPropertyId+ = lens _wInternalWebPropertyId+ (\ s a -> s{_wInternalWebPropertyId = a})++-- | Web property ID of the form UA-XXXXX-YY.+wId :: Lens' WebProperty (Maybe Text)+wId = lens _wId (\ s a -> s{_wId = a})++-- | Time this web property was last modified.+wUpdated :: Lens' WebProperty (Maybe UTCTime)+wUpdated+ = lens _wUpdated (\ s a -> s{_wUpdated = a}) .+ mapping _DateTime++-- | View (Profile) count for this web property.+wProFileCount :: Lens' WebProperty (Maybe Int32)+wProFileCount+ = lens _wProFileCount+ (\ s a -> s{_wProFileCount = a})+ . mapping _Coerce++-- | Permissions the user has for this web property.+wPermissions :: Lens' WebProperty (Maybe WebPropertyPermissions)+wPermissions+ = lens _wPermissions (\ s a -> s{_wPermissions = a})++-- | Website url for this web property.+wWebsiteURL :: Lens' WebProperty (Maybe Text)+wWebsiteURL+ = lens _wWebsiteURL (\ s a -> s{_wWebsiteURL = a})++-- | The industry vertical\/category selected for this web property.+wIndustryVertical :: Lens' WebProperty (Maybe Text)+wIndustryVertical+ = lens _wIndustryVertical+ (\ s a -> s{_wIndustryVertical = a})++-- | Level for this web property. Possible values are STANDARD or PREMIUM.+wLevel :: Lens' WebProperty (Maybe Text)+wLevel = lens _wLevel (\ s a -> s{_wLevel = a})++instance FromJSON WebProperty where+ parseJSON+ = withObject "WebProperty"+ (\ o ->+ WebProperty' <$>+ (o .:? "parentLink") <*> (o .:? "childLink") <*>+ (o .:? "defaultProfileId")+ <*> (o .:? "kind" .!= "analytics#webproperty")+ <*> (o .:? "created")+ <*> (o .:? "dataRetentionTtl")+ <*> (o .:? "dataRetentionResetOnNewActivity")+ <*> (o .:? "selfLink")+ <*> (o .:? "accountId")+ <*> (o .:? "name")+ <*> (o .:? "starred")+ <*> (o .:? "internalWebPropertyId")+ <*> (o .:? "id")+ <*> (o .:? "updated")+ <*> (o .:? "profileCount")+ <*> (o .:? "permissions")+ <*> (o .:? "websiteUrl")+ <*> (o .:? "industryVertical")+ <*> (o .:? "level"))++instance ToJSON WebProperty where+ toJSON WebProperty'{..}+ = object+ (catMaybes+ [("parentLink" .=) <$> _wParentLink,+ ("childLink" .=) <$> _wChildLink,+ ("defaultProfileId" .=) <$> _wDefaultProFileId,+ Just ("kind" .= _wKind),+ ("created" .=) <$> _wCreated,+ ("dataRetentionTtl" .=) <$> _wDataRetentionTtl,+ ("dataRetentionResetOnNewActivity" .=) <$>+ _wDataRetentionResetOnNewActivity,+ ("selfLink" .=) <$> _wSelfLink,+ ("accountId" .=) <$> _wAccountId,+ ("name" .=) <$> _wName, ("starred" .=) <$> _wStarred,+ ("internalWebPropertyId" .=) <$>+ _wInternalWebPropertyId,+ ("id" .=) <$> _wId, ("updated" .=) <$> _wUpdated,+ ("profileCount" .=) <$> _wProFileCount,+ ("permissions" .=) <$> _wPermissions,+ ("websiteUrl" .=) <$> _wWebsiteURL,+ ("industryVertical" .=) <$> _wIndustryVertical,+ ("level" .=) <$> _wLevel])++-- | Permissions the user has for this web property.+--+-- /See:/ 'webPropertyPermissions' smart constructor.+newtype WebPropertyPermissions =+ WebPropertyPermissions'+ { _wppEffective :: Maybe [Text]+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'WebPropertyPermissions' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'wppEffective'+webPropertyPermissions+ :: WebPropertyPermissions+webPropertyPermissions = WebPropertyPermissions' {_wppEffective = Nothing}+++-- | All the permissions that the user has for this web property. These+-- include any implied permissions (e.g., EDIT implies VIEW) or inherited+-- permissions from the parent account.+wppEffective :: Lens' WebPropertyPermissions [Text]+wppEffective+ = lens _wppEffective (\ s a -> s{_wppEffective = a})+ . _Default+ . _Coerce++instance FromJSON WebPropertyPermissions where+ parseJSON+ = withObject "WebPropertyPermissions"+ (\ o ->+ WebPropertyPermissions' <$>+ (o .:? "effective" .!= mempty))++instance ToJSON WebPropertyPermissions where+ toJSON WebPropertyPermissions'{..}+ = object+ (catMaybes [("effective" .=) <$> _wppEffective])++-- | JSON template for an Analytics Entity-User Link. Returns permissions+-- that a user has for an entity.+--+-- /See:/ 'entityUserLink' smart constructor.+data EntityUserLink =+ EntityUserLink'+ { _euluKind :: !Text+ , _euluUserRef :: !(Maybe UserRef)+ , _euluSelfLink :: !(Maybe Text)+ , _euluId :: !(Maybe Text)+ , _euluPermissions :: !(Maybe EntityUserLinkPermissions)+ , _euluEntity :: !(Maybe EntityUserLinkEntity)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'EntityUserLink' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'euluKind'+--+-- * 'euluUserRef'+--+-- * 'euluSelfLink'+--+-- * 'euluId'+--+-- * 'euluPermissions'+--+-- * 'euluEntity'+entityUserLink+ :: EntityUserLink+entityUserLink =+ EntityUserLink'+ { _euluKind = "analytics#entityUserLink"+ , _euluUserRef = Nothing+ , _euluSelfLink = Nothing+ , _euluId = Nothing+ , _euluPermissions = Nothing+ , _euluEntity = Nothing+ }+++-- | Resource type for entity user link.+euluKind :: Lens' EntityUserLink Text+euluKind = lens _euluKind (\ s a -> s{_euluKind = a})++-- | User reference.+euluUserRef :: Lens' EntityUserLink (Maybe UserRef)+euluUserRef+ = lens _euluUserRef (\ s a -> s{_euluUserRef = a})++-- | Self link for this resource.+euluSelfLink :: Lens' EntityUserLink (Maybe Text)+euluSelfLink+ = lens _euluSelfLink (\ s a -> s{_euluSelfLink = a})++-- | Entity user link ID+euluId :: Lens' EntityUserLink (Maybe Text)+euluId = lens _euluId (\ s a -> s{_euluId = a})++-- | Permissions the user has for this entity.+euluPermissions :: Lens' EntityUserLink (Maybe EntityUserLinkPermissions)+euluPermissions+ = lens _euluPermissions+ (\ s a -> s{_euluPermissions = a})++-- | Entity for this link. It can be an account, a web property, or a view+-- (profile).+euluEntity :: Lens' EntityUserLink (Maybe EntityUserLinkEntity)+euluEntity+ = lens _euluEntity (\ s a -> s{_euluEntity = a})++instance FromJSON EntityUserLink where+ parseJSON+ = withObject "EntityUserLink"+ (\ o ->+ EntityUserLink' <$>+ (o .:? "kind" .!= "analytics#entityUserLink") <*>+ (o .:? "userRef")+ <*> (o .:? "selfLink")+ <*> (o .:? "id")+ <*> (o .:? "permissions")+ <*> (o .:? "entity"))++instance ToJSON EntityUserLink where+ toJSON EntityUserLink'{..}+ = object+ (catMaybes+ [Just ("kind" .= _euluKind),+ ("userRef" .=) <$> _euluUserRef,+ ("selfLink" .=) <$> _euluSelfLink,+ ("id" .=) <$> _euluId,+ ("permissions" .=) <$> _euluPermissions,+ ("entity" .=) <$> _euluEntity])++-- | Parent link for this custom data source. Points to the web property to+-- which this custom data source belongs.+--+-- /See:/ 'customDataSourceParentLink' smart constructor.+data CustomDataSourceParentLink =+ CustomDataSourceParentLink'+ { _cdsplHref :: !(Maybe Text)+ , _cdsplType :: !Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'CustomDataSourceParentLink' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cdsplHref'+--+-- * 'cdsplType'+customDataSourceParentLink+ :: CustomDataSourceParentLink+customDataSourceParentLink =+ CustomDataSourceParentLink'+ {_cdsplHref = Nothing, _cdsplType = "analytics#webproperty"}+++-- | Link to the web property to which this custom data source belongs.+cdsplHref :: Lens' CustomDataSourceParentLink (Maybe Text)+cdsplHref+ = lens _cdsplHref (\ s a -> s{_cdsplHref = a})++-- | Value is \"analytics#webproperty\".+cdsplType :: Lens' CustomDataSourceParentLink Text+cdsplType+ = lens _cdsplType (\ s a -> s{_cdsplType = a})++instance FromJSON CustomDataSourceParentLink where+ parseJSON+ = withObject "CustomDataSourceParentLink"+ (\ o ->+ CustomDataSourceParentLink' <$>+ (o .:? "href") <*>+ (o .:? "type" .!= "analytics#webproperty"))++instance ToJSON CustomDataSourceParentLink where+ toJSON CustomDataSourceParentLink'{..}+ = object+ (catMaybes+ [("href" .=) <$> _cdsplHref,+ Just ("type" .= _cdsplType)])++--+-- /See:/ 'goalEventDetailsEventConditionsItem' smart constructor.+data GoalEventDetailsEventConditionsItem =+ GoalEventDetailsEventConditionsItem'+ { _gedeciMatchType :: !(Maybe Text)+ , _gedeciExpression :: !(Maybe Text)+ , _gedeciComparisonValue :: !(Maybe (Textual Int64))+ , _gedeciType :: !(Maybe Text)+ , _gedeciComparisonType :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoalEventDetailsEventConditionsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gedeciMatchType'+--+-- * 'gedeciExpression'+--+-- * 'gedeciComparisonValue'+--+-- * 'gedeciType'+--+-- * 'gedeciComparisonType'+goalEventDetailsEventConditionsItem+ :: GoalEventDetailsEventConditionsItem+goalEventDetailsEventConditionsItem =+ GoalEventDetailsEventConditionsItem'+ { _gedeciMatchType = Nothing+ , _gedeciExpression = Nothing+ , _gedeciComparisonValue = Nothing+ , _gedeciType = Nothing+ , _gedeciComparisonType = Nothing+ }+++-- | Type of the match to be performed. Possible values are REGEXP,+-- BEGINS_WITH, or EXACT.+gedeciMatchType :: Lens' GoalEventDetailsEventConditionsItem (Maybe Text)+gedeciMatchType+ = lens _gedeciMatchType+ (\ s a -> s{_gedeciMatchType = a})++-- | Expression used for this match.+gedeciExpression :: Lens' GoalEventDetailsEventConditionsItem (Maybe Text)+gedeciExpression+ = lens _gedeciExpression+ (\ s a -> s{_gedeciExpression = a})++-- | Value used for this comparison.+gedeciComparisonValue :: Lens' GoalEventDetailsEventConditionsItem (Maybe Int64)+gedeciComparisonValue+ = lens _gedeciComparisonValue+ (\ s a -> s{_gedeciComparisonValue = a})+ . mapping _Coerce++-- | Type of this event condition. Possible values are CATEGORY, ACTION,+-- LABEL, or VALUE.+gedeciType :: Lens' GoalEventDetailsEventConditionsItem (Maybe Text)+gedeciType+ = lens _gedeciType (\ s a -> s{_gedeciType = a})++-- | Type of comparison. Possible values are LESS_THAN, GREATER_THAN or+-- EQUAL.+gedeciComparisonType :: Lens' GoalEventDetailsEventConditionsItem (Maybe Text)+gedeciComparisonType+ = lens _gedeciComparisonType+ (\ s a -> s{_gedeciComparisonType = a})++instance FromJSON GoalEventDetailsEventConditionsItem+ where+ parseJSON+ = withObject "GoalEventDetailsEventConditionsItem"+ (\ o ->+ GoalEventDetailsEventConditionsItem' <$>+ (o .:? "matchType") <*> (o .:? "expression") <*>+ (o .:? "comparisonValue")+ <*> (o .:? "type")+ <*> (o .:? "comparisonType"))++instance ToJSON GoalEventDetailsEventConditionsItem+ where+ toJSON GoalEventDetailsEventConditionsItem'{..}+ = object+ (catMaybes+ [("matchType" .=) <$> _gedeciMatchType,+ ("expression" .=) <$> _gedeciExpression,+ ("comparisonValue" .=) <$> _gedeciComparisonValue,+ ("type" .=) <$> _gedeciType,+ ("comparisonType" .=) <$> _gedeciComparisonType])++-- | Analytics data request query parameters.+--+-- /See:/ 'mcfDataQuery' smart constructor.+data McfDataQuery =+ McfDataQuery'+ { _mdqMetrics :: !(Maybe [Text])+ , _mdqSamplingLevel :: !(Maybe Text)+ , _mdqFilters :: !(Maybe Text)+ , _mdqIds :: !(Maybe Text)+ , _mdqEndDate :: !(Maybe Text)+ , _mdqSort :: !(Maybe [Text])+ , _mdqDimensions :: !(Maybe Text)+ , _mdqStartIndex :: !(Maybe (Textual Int32))+ , _mdqMaxResults :: !(Maybe (Textual Int32))+ , _mdqSegment :: !(Maybe Text)+ , _mdqStartDate :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'McfDataQuery' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mdqMetrics'+--+-- * 'mdqSamplingLevel'+--+-- * 'mdqFilters'+--+-- * 'mdqIds'+--+-- * 'mdqEndDate'+--+-- * 'mdqSort'+--+-- * 'mdqDimensions'+--+-- * 'mdqStartIndex'+--+-- * 'mdqMaxResults'+--+-- * 'mdqSegment'+--+-- * 'mdqStartDate'+mcfDataQuery+ :: McfDataQuery+mcfDataQuery =+ McfDataQuery'+ { _mdqMetrics = Nothing+ , _mdqSamplingLevel = Nothing+ , _mdqFilters = Nothing+ , _mdqIds = Nothing+ , _mdqEndDate = Nothing+ , _mdqSort = Nothing+ , _mdqDimensions = Nothing+ , _mdqStartIndex = Nothing+ , _mdqMaxResults = Nothing+ , _mdqSegment = Nothing+ , _mdqStartDate = Nothing+ }+++-- | List of analytics metrics.+mdqMetrics :: Lens' McfDataQuery [Text]+mdqMetrics+ = lens _mdqMetrics (\ s a -> s{_mdqMetrics = a}) .+ _Default+ . _Coerce++-- | Desired sampling level+mdqSamplingLevel :: Lens' McfDataQuery (Maybe Text)+mdqSamplingLevel+ = lens _mdqSamplingLevel+ (\ s a -> s{_mdqSamplingLevel = a})++-- | Comma-separated list of dimension or metric filters.+mdqFilters :: Lens' McfDataQuery (Maybe Text)+mdqFilters+ = lens _mdqFilters (\ s a -> s{_mdqFilters = a})++-- | Unique table ID.+mdqIds :: Lens' McfDataQuery (Maybe Text)+mdqIds = lens _mdqIds (\ s a -> s{_mdqIds = a})++-- | End date.+mdqEndDate :: Lens' McfDataQuery (Maybe Text)+mdqEndDate+ = lens _mdqEndDate (\ s a -> s{_mdqEndDate = a})++-- | List of dimensions or metrics based on which Analytics data is sorted.+mdqSort :: Lens' McfDataQuery [Text]+mdqSort+ = lens _mdqSort (\ s a -> s{_mdqSort = a}) . _Default+ . _Coerce++-- | List of analytics dimensions.+mdqDimensions :: Lens' McfDataQuery (Maybe Text)+mdqDimensions+ = lens _mdqDimensions+ (\ s a -> s{_mdqDimensions = a})++-- | Start index.+mdqStartIndex :: Lens' McfDataQuery (Maybe Int32)+mdqStartIndex+ = lens _mdqStartIndex+ (\ s a -> s{_mdqStartIndex = a})+ . mapping _Coerce++-- | Maximum results per page.+mdqMaxResults :: Lens' McfDataQuery (Maybe Int32)+mdqMaxResults+ = lens _mdqMaxResults+ (\ s a -> s{_mdqMaxResults = a})+ . mapping _Coerce++-- | Analytics advanced segment.+mdqSegment :: Lens' McfDataQuery (Maybe Text)+mdqSegment+ = lens _mdqSegment (\ s a -> s{_mdqSegment = a})++-- | Start date.+mdqStartDate :: Lens' McfDataQuery (Maybe Text)+mdqStartDate+ = lens _mdqStartDate (\ s a -> s{_mdqStartDate = a})++instance FromJSON McfDataQuery where+ parseJSON+ = withObject "McfDataQuery"+ (\ o ->+ McfDataQuery' <$>+ (o .:? "metrics" .!= mempty) <*>+ (o .:? "samplingLevel")+ <*> (o .:? "filters")+ <*> (o .:? "ids")+ <*> (o .:? "end-date")+ <*> (o .:? "sort" .!= mempty)+ <*> (o .:? "dimensions")+ <*> (o .:? "start-index")+ <*> (o .:? "max-results")+ <*> (o .:? "segment")+ <*> (o .:? "start-date"))++instance ToJSON McfDataQuery where+ toJSON McfDataQuery'{..}+ = object+ (catMaybes+ [("metrics" .=) <$> _mdqMetrics,+ ("samplingLevel" .=) <$> _mdqSamplingLevel,+ ("filters" .=) <$> _mdqFilters,+ ("ids" .=) <$> _mdqIds,+ ("end-date" .=) <$> _mdqEndDate,+ ("sort" .=) <$> _mdqSort,+ ("dimensions" .=) <$> _mdqDimensions,+ ("start-index" .=) <$> _mdqStartIndex,+ ("max-results" .=) <$> _mdqMaxResults,+ ("segment" .=) <$> _mdqSegment,+ ("start-date" .=) <$> _mdqStartDate])++-- | JSON template for Analytics goal resource.+--+-- /See:/ 'goal' smart constructor.+data Goal =+ Goal'+ { _goaParentLink :: !(Maybe GoalParentLink)+ , _goaWebPropertyId :: !(Maybe Text)+ , _goaKind :: !Text+ , _goaCreated :: !(Maybe DateTime')+ , _goaValue :: !(Maybe (Textual Double))+ , _goaProFileId :: !(Maybe Text)+ , _goaEventDetails :: !(Maybe GoalEventDetails)+ , _goaActive :: !(Maybe Bool)+ , _goaSelfLink :: !(Maybe Text)+ , _goaVisitTimeOnSiteDetails :: !(Maybe GoalVisitTimeOnSiteDetails)+ , _goaAccountId :: !(Maybe Text)+ , _goaName :: !(Maybe Text)+ , _goaInternalWebPropertyId :: !(Maybe Text)+ , _goaId :: !(Maybe Text)+ , _goaURLDestinationDetails :: !(Maybe GoalURLDestinationDetails)+ , _goaVisitNumPagesDetails :: !(Maybe GoalVisitNumPagesDetails)+ , _goaUpdated :: !(Maybe DateTime')+ , _goaType :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Goal' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'goaParentLink'+--+-- * 'goaWebPropertyId'+--+-- * 'goaKind'+--+-- * 'goaCreated'+--+-- * 'goaValue'+--+-- * 'goaProFileId'+--+-- * 'goaEventDetails'+--+-- * 'goaActive'+--+-- * 'goaSelfLink'+--+-- * 'goaVisitTimeOnSiteDetails'+--+-- * 'goaAccountId'+--+-- * 'goaName'+--+-- * 'goaInternalWebPropertyId'+--+-- * 'goaId'+--+-- * 'goaURLDestinationDetails'+--+-- * 'goaVisitNumPagesDetails'+--+-- * 'goaUpdated'+--+-- * 'goaType'+goal+ :: Goal+goal =+ Goal'+ { _goaParentLink = Nothing+ , _goaWebPropertyId = Nothing+ , _goaKind = "analytics#goal"+ , _goaCreated = Nothing+ , _goaValue = Nothing+ , _goaProFileId = Nothing+ , _goaEventDetails = Nothing+ , _goaActive = Nothing+ , _goaSelfLink = Nothing+ , _goaVisitTimeOnSiteDetails = Nothing+ , _goaAccountId = Nothing+ , _goaName = Nothing+ , _goaInternalWebPropertyId = Nothing+ , _goaId = Nothing+ , _goaURLDestinationDetails = Nothing+ , _goaVisitNumPagesDetails = Nothing+ , _goaUpdated = Nothing+ , _goaType = Nothing+ }+++-- | Parent link for a goal. Points to the view (profile) to which this goal+-- belongs.+goaParentLink :: Lens' Goal (Maybe GoalParentLink)+goaParentLink+ = lens _goaParentLink+ (\ s a -> s{_goaParentLink = a})++-- | Web property ID to which this goal belongs. The web property ID is of+-- the form UA-XXXXX-YY.+goaWebPropertyId :: Lens' Goal (Maybe Text)+goaWebPropertyId+ = lens _goaWebPropertyId+ (\ s a -> s{_goaWebPropertyId = a})++-- | Resource type for an Analytics goal.+goaKind :: Lens' Goal Text+goaKind = lens _goaKind (\ s a -> s{_goaKind = a})++-- | Time this goal was created.+goaCreated :: Lens' Goal (Maybe UTCTime)+goaCreated+ = lens _goaCreated (\ s a -> s{_goaCreated = a}) .+ mapping _DateTime++-- | Goal value.+goaValue :: Lens' Goal (Maybe Double)+goaValue+ = lens _goaValue (\ s a -> s{_goaValue = a}) .+ mapping _Coerce++-- | View (Profile) ID to which this goal belongs.+goaProFileId :: Lens' Goal (Maybe Text)+goaProFileId+ = lens _goaProFileId (\ s a -> s{_goaProFileId = a})++-- | Details for the goal of the type EVENT.+goaEventDetails :: Lens' Goal (Maybe GoalEventDetails)+goaEventDetails+ = lens _goaEventDetails+ (\ s a -> s{_goaEventDetails = a})++-- | Determines whether this goal is active.+goaActive :: Lens' Goal (Maybe Bool)+goaActive+ = lens _goaActive (\ s a -> s{_goaActive = a})++-- | Link for this goal.+goaSelfLink :: Lens' Goal (Maybe Text)+goaSelfLink+ = lens _goaSelfLink (\ s a -> s{_goaSelfLink = a})++-- | Details for the goal of the type VISIT_TIME_ON_SITE.+goaVisitTimeOnSiteDetails :: Lens' Goal (Maybe GoalVisitTimeOnSiteDetails)+goaVisitTimeOnSiteDetails+ = lens _goaVisitTimeOnSiteDetails+ (\ s a -> s{_goaVisitTimeOnSiteDetails = a})++-- | Account ID to which this goal belongs.+goaAccountId :: Lens' Goal (Maybe Text)+goaAccountId+ = lens _goaAccountId (\ s a -> s{_goaAccountId = a})++-- | Goal name.+goaName :: Lens' Goal (Maybe Text)+goaName = lens _goaName (\ s a -> s{_goaName = a})++-- | Internal ID for the web property to which this goal belongs.+goaInternalWebPropertyId :: Lens' Goal (Maybe Text)+goaInternalWebPropertyId+ = lens _goaInternalWebPropertyId+ (\ s a -> s{_goaInternalWebPropertyId = a})++-- | Goal ID.+goaId :: Lens' Goal (Maybe Text)+goaId = lens _goaId (\ s a -> s{_goaId = a})++-- | Details for the goal of the type URL_DESTINATION.+goaURLDestinationDetails :: Lens' Goal (Maybe GoalURLDestinationDetails)+goaURLDestinationDetails+ = lens _goaURLDestinationDetails+ (\ s a -> s{_goaURLDestinationDetails = a})++-- | Details for the goal of the type VISIT_NUM_PAGES.+goaVisitNumPagesDetails :: Lens' Goal (Maybe GoalVisitNumPagesDetails)+goaVisitNumPagesDetails+ = lens _goaVisitNumPagesDetails+ (\ s a -> s{_goaVisitNumPagesDetails = a})++-- | Time this goal was last modified.+goaUpdated :: Lens' Goal (Maybe UTCTime)+goaUpdated+ = lens _goaUpdated (\ s a -> s{_goaUpdated = a}) .+ mapping _DateTime++-- | Goal type. Possible values are URL_DESTINATION, VISIT_TIME_ON_SITE,+-- VISIT_NUM_PAGES, AND EVENT.+goaType :: Lens' Goal (Maybe Text)+goaType = lens _goaType (\ s a -> s{_goaType = a})++instance FromJSON Goal where+ parseJSON+ = withObject "Goal"+ (\ o ->+ Goal' <$>+ (o .:? "parentLink") <*> (o .:? "webPropertyId") <*>+ (o .:? "kind" .!= "analytics#goal")+ <*> (o .:? "created")+ <*> (o .:? "value")+ <*> (o .:? "profileId")+ <*> (o .:? "eventDetails")+ <*> (o .:? "active")+ <*> (o .:? "selfLink")+ <*> (o .:? "visitTimeOnSiteDetails")+ <*> (o .:? "accountId")+ <*> (o .:? "name")+ <*> (o .:? "internalWebPropertyId")+ <*> (o .:? "id")+ <*> (o .:? "urlDestinationDetails")+ <*> (o .:? "visitNumPagesDetails")+ <*> (o .:? "updated")+ <*> (o .:? "type"))++instance ToJSON Goal where+ toJSON Goal'{..}+ = object+ (catMaybes+ [("parentLink" .=) <$> _goaParentLink,+ ("webPropertyId" .=) <$> _goaWebPropertyId,+ Just ("kind" .= _goaKind),+ ("created" .=) <$> _goaCreated,+ ("value" .=) <$> _goaValue,+ ("profileId" .=) <$> _goaProFileId,+ ("eventDetails" .=) <$> _goaEventDetails,+ ("active" .=) <$> _goaActive,+ ("selfLink" .=) <$> _goaSelfLink,+ ("visitTimeOnSiteDetails" .=) <$>+ _goaVisitTimeOnSiteDetails,+ ("accountId" .=) <$> _goaAccountId,+ ("name" .=) <$> _goaName,+ ("internalWebPropertyId" .=) <$>+ _goaInternalWebPropertyId,+ ("id" .=) <$> _goaId,+ ("urlDestinationDetails" .=) <$>+ _goaURLDestinationDetails,+ ("visitNumPagesDetails" .=) <$>+ _goaVisitNumPagesDetails,+ ("updated" .=) <$> _goaUpdated,+ ("type" .=) <$> _goaType])++-- | JSON template for an Analytics account ticket. The account ticket+-- consists of the ticket ID and the basic information for the account,+-- property and profile.+--+-- /See:/ 'accountTicket' smart constructor.+data AccountTicket =+ AccountTicket'+ { _atRedirectURI :: !(Maybe Text)+ , _atKind :: !Text+ , _atProFile :: !(Maybe ProFile)+ , _atAccount :: !(Maybe Account)+ , _atWebProperty :: !(Maybe WebProperty)+ , _atId :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'AccountTicket' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'atRedirectURI'+--+-- * 'atKind'+--+-- * 'atProFile'+--+-- * 'atAccount'+--+-- * 'atWebProperty'+--+-- * 'atId'+accountTicket+ :: AccountTicket+accountTicket =+ AccountTicket'+ { _atRedirectURI = Nothing+ , _atKind = "analytics#accountTicket"+ , _atProFile = Nothing+ , _atAccount = Nothing+ , _atWebProperty = Nothing+ , _atId = Nothing+ }+++-- | Redirect URI where the user will be sent after accepting Terms of+-- Service. Must be configured in APIs console as a callback URL.+atRedirectURI :: Lens' AccountTicket (Maybe Text)+atRedirectURI+ = lens _atRedirectURI+ (\ s a -> s{_atRedirectURI = a})++-- | Resource type for account ticket.+atKind :: Lens' AccountTicket Text+atKind = lens _atKind (\ s a -> s{_atKind = a})++-- | View (Profile) for the account.+atProFile :: Lens' AccountTicket (Maybe ProFile)+atProFile+ = lens _atProFile (\ s a -> s{_atProFile = a})++-- | Account for this ticket.+atAccount :: Lens' AccountTicket (Maybe Account)+atAccount+ = lens _atAccount (\ s a -> s{_atAccount = a})++-- | Web property for the account.+atWebProperty :: Lens' AccountTicket (Maybe WebProperty)+atWebProperty+ = lens _atWebProperty+ (\ s a -> s{_atWebProperty = a})++-- | Account ticket ID used to access the account ticket.+atId :: Lens' AccountTicket (Maybe Text)+atId = lens _atId (\ s a -> s{_atId = a})++instance FromJSON AccountTicket where+ parseJSON+ = withObject "AccountTicket"+ (\ o ->+ AccountTicket' <$>+ (o .:? "redirectUri") <*>+ (o .:? "kind" .!= "analytics#accountTicket")+ <*> (o .:? "profile")+ <*> (o .:? "account")+ <*> (o .:? "webproperty")+ <*> (o .:? "id"))++instance ToJSON AccountTicket where+ toJSON AccountTicket'{..}+ = object+ (catMaybes+ [("redirectUri" .=) <$> _atRedirectURI,+ Just ("kind" .= _atKind),+ ("profile" .=) <$> _atProFile,+ ("account" .=) <$> _atAccount,+ ("webproperty" .=) <$> _atWebProperty,+ ("id" .=) <$> _atId])++-- | JSON template for an Analytics AccountSummary. An AccountSummary is a+-- lightweight tree comprised of properties\/profiles.+--+-- /See:/ 'accountSummary' smart constructor.+data AccountSummary =+ AccountSummary'+ { _assKind :: !Text+ , _assWebProperties :: !(Maybe [WebPropertySummary])+ , _assName :: !(Maybe Text)+ , _assStarred :: !(Maybe Bool)+ , _assId :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'AccountSummary' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'assKind'+--+-- * 'assWebProperties'+--+-- * 'assName'+--+-- * 'assStarred'+--+-- * 'assId'+accountSummary+ :: AccountSummary+accountSummary =+ AccountSummary'+ { _assKind = "analytics#accountSummary"+ , _assWebProperties = Nothing+ , _assName = Nothing+ , _assStarred = Nothing+ , _assId = Nothing+ }+++-- | Resource type for Analytics AccountSummary.+assKind :: Lens' AccountSummary Text+assKind = lens _assKind (\ s a -> s{_assKind = a})++-- | List of web properties under this account.+assWebProperties :: Lens' AccountSummary [WebPropertySummary]+assWebProperties+ = lens _assWebProperties+ (\ s a -> s{_assWebProperties = a})+ . _Default+ . _Coerce++-- | Account name.+assName :: Lens' AccountSummary (Maybe Text)+assName = lens _assName (\ s a -> s{_assName = a})++-- | Indicates whether this account is starred or not.+assStarred :: Lens' AccountSummary (Maybe Bool)+assStarred+ = lens _assStarred (\ s a -> s{_assStarred = a})++-- | Account ID.+assId :: Lens' AccountSummary (Maybe Text)+assId = lens _assId (\ s a -> s{_assId = a})++instance FromJSON AccountSummary where+ parseJSON+ = withObject "AccountSummary"+ (\ o ->+ AccountSummary' <$>+ (o .:? "kind" .!= "analytics#accountSummary") <*>+ (o .:? "webProperties" .!= mempty)+ <*> (o .:? "name")+ <*> (o .:? "starred")+ <*> (o .:? "id"))++instance ToJSON AccountSummary where+ toJSON AccountSummary'{..}+ = object+ (catMaybes+ [Just ("kind" .= _assKind),+ ("webProperties" .=) <$> _assWebProperties,+ ("name" .=) <$> _assName,+ ("starred" .=) <$> _assStarred,+ ("id" .=) <$> _assId])++-- | Real time data request query parameters.+--+-- /See:/ 'realtimeDataQuery' smart constructor.+data RealtimeDataQuery =+ RealtimeDataQuery'+ { _rdqMetrics :: !(Maybe [Text])+ , _rdqFilters :: !(Maybe Text)+ , _rdqIds :: !(Maybe Text)+ , _rdqSort :: !(Maybe [Text])+ , _rdqDimensions :: !(Maybe Text)+ , _rdqMaxResults :: !(Maybe (Textual Int32))+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'RealtimeDataQuery' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rdqMetrics'+--+-- * 'rdqFilters'+--+-- * 'rdqIds'+--+-- * 'rdqSort'+--+-- * 'rdqDimensions'+--+-- * 'rdqMaxResults'+realtimeDataQuery+ :: RealtimeDataQuery+realtimeDataQuery =+ RealtimeDataQuery'+ { _rdqMetrics = Nothing+ , _rdqFilters = Nothing+ , _rdqIds = Nothing+ , _rdqSort = Nothing+ , _rdqDimensions = Nothing+ , _rdqMaxResults = Nothing+ }+++-- | List of real time metrics.+rdqMetrics :: Lens' RealtimeDataQuery [Text]+rdqMetrics+ = lens _rdqMetrics (\ s a -> s{_rdqMetrics = a}) .+ _Default+ . _Coerce++-- | Comma-separated list of dimension or metric filters.+rdqFilters :: Lens' RealtimeDataQuery (Maybe Text)+rdqFilters+ = lens _rdqFilters (\ s a -> s{_rdqFilters = a})++-- | Unique table ID.+rdqIds :: Lens' RealtimeDataQuery (Maybe Text)+rdqIds = lens _rdqIds (\ s a -> s{_rdqIds = a})++-- | List of dimensions or metrics based on which real time data is sorted.+rdqSort :: Lens' RealtimeDataQuery [Text]+rdqSort+ = lens _rdqSort (\ s a -> s{_rdqSort = a}) . _Default+ . _Coerce++-- | List of real time dimensions.+rdqDimensions :: Lens' RealtimeDataQuery (Maybe Text)+rdqDimensions+ = lens _rdqDimensions+ (\ s a -> s{_rdqDimensions = a})++-- | Maximum results per page.+rdqMaxResults :: Lens' RealtimeDataQuery (Maybe Int32)+rdqMaxResults+ = lens _rdqMaxResults+ (\ s a -> s{_rdqMaxResults = a})+ . mapping _Coerce++instance FromJSON RealtimeDataQuery where+ parseJSON+ = withObject "RealtimeDataQuery"+ (\ o ->+ RealtimeDataQuery' <$>+ (o .:? "metrics" .!= mempty) <*> (o .:? "filters")+ <*> (o .:? "ids")+ <*> (o .:? "sort" .!= mempty)+ <*> (o .:? "dimensions")+ <*> (o .:? "max-results"))++instance ToJSON RealtimeDataQuery where+ toJSON RealtimeDataQuery'{..}+ = object+ (catMaybes+ [("metrics" .=) <$> _rdqMetrics,+ ("filters" .=) <$> _rdqFilters,+ ("ids" .=) <$> _rdqIds, ("sort" .=) <$> _rdqSort,+ ("dimensions" .=) <$> _rdqDimensions,+ ("max-results" .=) <$> _rdqMaxResults])++-- | Lists columns (dimensions and metrics) for a particular report type.+--+-- /See:/ 'columns' smart constructor.+data Columns =+ Columns'+ { _colEtag :: !(Maybe Text)+ , _colKind :: !Text+ , _colItems :: !(Maybe [Column])+ , _colTotalResults :: !(Maybe (Textual Int32))+ , _colAttributeNames :: !(Maybe [Text])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Columns' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'colEtag'+--+-- * 'colKind'+--+-- * 'colItems'+--+-- * 'colTotalResults'+--+-- * 'colAttributeNames'+columns+ :: Columns+columns =+ Columns'+ { _colEtag = Nothing+ , _colKind = "analytics#columns"+ , _colItems = Nothing+ , _colTotalResults = Nothing+ , _colAttributeNames = Nothing+ }+++-- | Etag of collection. This etag can be compared with the last response+-- etag to check if response has changed.+colEtag :: Lens' Columns (Maybe Text)+colEtag = lens _colEtag (\ s a -> s{_colEtag = a})++-- | Collection type.+colKind :: Lens' Columns Text+colKind = lens _colKind (\ s a -> s{_colKind = a})++-- | List of columns for a report type.+colItems :: Lens' Columns [Column]+colItems+ = lens _colItems (\ s a -> s{_colItems = a}) .+ _Default+ . _Coerce++-- | Total number of columns returned in the response.+colTotalResults :: Lens' Columns (Maybe Int32)+colTotalResults+ = lens _colTotalResults+ (\ s a -> s{_colTotalResults = a})+ . mapping _Coerce++-- | List of attributes names returned by columns.+colAttributeNames :: Lens' Columns [Text]+colAttributeNames+ = lens _colAttributeNames+ (\ s a -> s{_colAttributeNames = a})+ . _Default+ . _Coerce++instance FromJSON Columns where+ parseJSON+ = withObject "Columns"+ (\ o ->+ Columns' <$>+ (o .:? "etag") <*>+ (o .:? "kind" .!= "analytics#columns")+ <*> (o .:? "items" .!= mempty)+ <*> (o .:? "totalResults")+ <*> (o .:? "attributeNames" .!= mempty))++instance ToJSON Columns where+ toJSON Columns'{..}+ = object+ (catMaybes+ [("etag" .=) <$> _colEtag, Just ("kind" .= _colKind),+ ("items" .=) <$> _colItems,+ ("totalResults" .=) <$> _colTotalResults,+ ("attributeNames" .=) <$> _colAttributeNames])++-- | Details for the filter of the type LOWER.+--+-- /See:/ 'filterLowercaseDetails' smart constructor.+data FilterLowercaseDetails =+ FilterLowercaseDetails'+ { _fldFieldIndex :: !(Maybe (Textual Int32))+ , _fldField :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'FilterLowercaseDetails' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'fldFieldIndex'+--+-- * 'fldField'+filterLowercaseDetails+ :: FilterLowercaseDetails+filterLowercaseDetails =+ FilterLowercaseDetails' {_fldFieldIndex = Nothing, _fldField = Nothing}+++-- | The Index of the custom dimension. Required if field is a+-- CUSTOM_DIMENSION.+fldFieldIndex :: Lens' FilterLowercaseDetails (Maybe Int32)+fldFieldIndex+ = lens _fldFieldIndex+ (\ s a -> s{_fldFieldIndex = a})+ . mapping _Coerce++-- | Field to use in the filter.+fldField :: Lens' FilterLowercaseDetails (Maybe Text)+fldField = lens _fldField (\ s a -> s{_fldField = a})++instance FromJSON FilterLowercaseDetails where+ parseJSON+ = withObject "FilterLowercaseDetails"+ (\ o ->+ FilterLowercaseDetails' <$>+ (o .:? "fieldIndex") <*> (o .:? "field"))++instance ToJSON FilterLowercaseDetails where+ toJSON FilterLowercaseDetails'{..}+ = object+ (catMaybes+ [("fieldIndex" .=) <$> _fldFieldIndex,+ ("field" .=) <$> _fldField])++-- | JSON template for an Analytics account filter.+--+-- /See:/ 'filter'' smart constructor.+data Filter =+ Filter'+ { _filParentLink :: !(Maybe FilterParentLink)+ , _filAdvancedDetails :: !(Maybe FilterAdvancedDetails)+ , _filUppercaseDetails :: !(Maybe FilterUppercaseDetails)+ , _filLowercaseDetails :: !(Maybe FilterLowercaseDetails)+ , _filKind :: !Text+ , _filCreated :: !(Maybe DateTime')+ , _filIncludeDetails :: !(Maybe FilterExpression)+ , _filExcludeDetails :: !(Maybe FilterExpression)+ , _filSelfLink :: !(Maybe Text)+ , _filAccountId :: !(Maybe Text)+ , _filName :: !(Maybe Text)+ , _filId :: !(Maybe Text)+ , _filUpdated :: !(Maybe DateTime')+ , _filType :: !(Maybe Text)+ , _filSearchAndReplaceDetails :: !(Maybe FilterSearchAndReplaceDetails)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Filter' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'filParentLink'+--+-- * 'filAdvancedDetails'+--+-- * 'filUppercaseDetails'+--+-- * 'filLowercaseDetails'+--+-- * 'filKind'+--+-- * 'filCreated'+--+-- * 'filIncludeDetails'+--+-- * 'filExcludeDetails'+--+-- * 'filSelfLink'+--+-- * 'filAccountId'+--+-- * 'filName'+--+-- * 'filId'+--+-- * 'filUpdated'+--+-- * 'filType'+--+-- * 'filSearchAndReplaceDetails'+filter'+ :: Filter+filter' =+ Filter'+ { _filParentLink = Nothing+ , _filAdvancedDetails = Nothing+ , _filUppercaseDetails = Nothing+ , _filLowercaseDetails = Nothing+ , _filKind = "analytics#filter"+ , _filCreated = Nothing+ , _filIncludeDetails = Nothing+ , _filExcludeDetails = Nothing+ , _filSelfLink = Nothing+ , _filAccountId = Nothing+ , _filName = Nothing+ , _filId = Nothing+ , _filUpdated = Nothing+ , _filType = Nothing+ , _filSearchAndReplaceDetails = Nothing+ }+++-- | Parent link for this filter. Points to the account to which this filter+-- belongs.+filParentLink :: Lens' Filter (Maybe FilterParentLink)+filParentLink+ = lens _filParentLink+ (\ s a -> s{_filParentLink = a})++-- | Details for the filter of the type ADVANCED.+filAdvancedDetails :: Lens' Filter (Maybe FilterAdvancedDetails)+filAdvancedDetails+ = lens _filAdvancedDetails+ (\ s a -> s{_filAdvancedDetails = a})++-- | Details for the filter of the type UPPER.+filUppercaseDetails :: Lens' Filter (Maybe FilterUppercaseDetails)+filUppercaseDetails+ = lens _filUppercaseDetails+ (\ s a -> s{_filUppercaseDetails = a})++-- | Details for the filter of the type LOWER.+filLowercaseDetails :: Lens' Filter (Maybe FilterLowercaseDetails)+filLowercaseDetails+ = lens _filLowercaseDetails+ (\ s a -> s{_filLowercaseDetails = a})++-- | Resource type for Analytics filter.+filKind :: Lens' Filter Text+filKind = lens _filKind (\ s a -> s{_filKind = a})++-- | Time this filter was created.+filCreated :: Lens' Filter (Maybe UTCTime)+filCreated+ = lens _filCreated (\ s a -> s{_filCreated = a}) .+ mapping _DateTime++-- | Details for the filter of the type INCLUDE.+filIncludeDetails :: Lens' Filter (Maybe FilterExpression)+filIncludeDetails+ = lens _filIncludeDetails+ (\ s a -> s{_filIncludeDetails = a})++-- | Details for the filter of the type EXCLUDE.+filExcludeDetails :: Lens' Filter (Maybe FilterExpression)+filExcludeDetails+ = lens _filExcludeDetails+ (\ s a -> s{_filExcludeDetails = a})++-- | Link for this filter.+filSelfLink :: Lens' Filter (Maybe Text)+filSelfLink+ = lens _filSelfLink (\ s a -> s{_filSelfLink = a})++-- | Account ID to which this filter belongs.+filAccountId :: Lens' Filter (Maybe Text)+filAccountId+ = lens _filAccountId (\ s a -> s{_filAccountId = a})++-- | Name of this filter.+filName :: Lens' Filter (Maybe Text)+filName = lens _filName (\ s a -> s{_filName = a})++-- | Filter ID.+filId :: Lens' Filter (Maybe Text)+filId = lens _filId (\ s a -> s{_filId = a})++-- | Time this filter was last modified.+filUpdated :: Lens' Filter (Maybe UTCTime)+filUpdated+ = lens _filUpdated (\ s a -> s{_filUpdated = a}) .+ mapping _DateTime++-- | Type of this filter. Possible values are INCLUDE, EXCLUDE, LOWERCASE,+-- UPPERCASE, SEARCH_AND_REPLACE and ADVANCED.+filType :: Lens' Filter (Maybe Text)+filType = lens _filType (\ s a -> s{_filType = a})++-- | Details for the filter of the type SEARCH_AND_REPLACE.+filSearchAndReplaceDetails :: Lens' Filter (Maybe FilterSearchAndReplaceDetails)+filSearchAndReplaceDetails+ = lens _filSearchAndReplaceDetails+ (\ s a -> s{_filSearchAndReplaceDetails = a})++instance FromJSON Filter where+ parseJSON+ = withObject "Filter"+ (\ o ->+ Filter' <$>+ (o .:? "parentLink") <*> (o .:? "advancedDetails")+ <*> (o .:? "uppercaseDetails")+ <*> (o .:? "lowercaseDetails")+ <*> (o .:? "kind" .!= "analytics#filter")+ <*> (o .:? "created")+ <*> (o .:? "includeDetails")+ <*> (o .:? "excludeDetails")+ <*> (o .:? "selfLink")+ <*> (o .:? "accountId")+ <*> (o .:? "name")+ <*> (o .:? "id")+ <*> (o .:? "updated")+ <*> (o .:? "type")+ <*> (o .:? "searchAndReplaceDetails"))++instance ToJSON Filter where+ toJSON Filter'{..}+ = object+ (catMaybes+ [("parentLink" .=) <$> _filParentLink,+ ("advancedDetails" .=) <$> _filAdvancedDetails,+ ("uppercaseDetails" .=) <$> _filUppercaseDetails,+ ("lowercaseDetails" .=) <$> _filLowercaseDetails,+ Just ("kind" .= _filKind),+ ("created" .=) <$> _filCreated,+ ("includeDetails" .=) <$> _filIncludeDetails,+ ("excludeDetails" .=) <$> _filExcludeDetails,+ ("selfLink" .=) <$> _filSelfLink,+ ("accountId" .=) <$> _filAccountId,+ ("name" .=) <$> _filName, ("id" .=) <$> _filId,+ ("updated" .=) <$> _filUpdated,+ ("type" .=) <$> _filType,+ ("searchAndReplaceDetails" .=) <$>+ _filSearchAndReplaceDetails])++-- | Upload collection lists Analytics uploads to which the user has access.+-- Each custom data source can have a set of uploads. Each resource in the+-- upload collection corresponds to a single Analytics data upload.+--+-- /See:/ 'uploads' smart constructor.+data Uploads =+ Uploads'+ { _uplNextLink :: !(Maybe Text)+ , _uplItemsPerPage :: !(Maybe (Textual Int32))+ , _uplKind :: !Text+ , _uplItems :: !(Maybe [Upload])+ , _uplTotalResults :: !(Maybe (Textual Int32))+ , _uplStartIndex :: !(Maybe (Textual Int32))+ , _uplPreviousLink :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Uploads' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uplNextLink'+--+-- * 'uplItemsPerPage'+--+-- * 'uplKind'+--+-- * 'uplItems'+--+-- * 'uplTotalResults'+--+-- * 'uplStartIndex'+--+-- * 'uplPreviousLink'+uploads+ :: Uploads+uploads =+ Uploads'+ { _uplNextLink = Nothing+ , _uplItemsPerPage = Nothing+ , _uplKind = "analytics#uploads"+ , _uplItems = Nothing+ , _uplTotalResults = Nothing+ , _uplStartIndex = Nothing+ , _uplPreviousLink = Nothing+ }+++-- | Link to next page for this upload collection.+uplNextLink :: Lens' Uploads (Maybe Text)+uplNextLink+ = lens _uplNextLink (\ s a -> s{_uplNextLink = a})++-- | The maximum number of resources the response can contain, regardless of+-- the actual number of resources returned. Its value ranges from 1 to 1000+-- with a value of 1000 by default, or otherwise specified by the+-- max-results query parameter.+uplItemsPerPage :: Lens' Uploads (Maybe Int32)+uplItemsPerPage+ = lens _uplItemsPerPage+ (\ s a -> s{_uplItemsPerPage = a})+ . mapping _Coerce++-- | Collection type.+uplKind :: Lens' Uploads Text+uplKind = lens _uplKind (\ s a -> s{_uplKind = a})++-- | A list of uploads.+uplItems :: Lens' Uploads [Upload]+uplItems+ = lens _uplItems (\ s a -> s{_uplItems = a}) .+ _Default+ . _Coerce++-- | The total number of results for the query, regardless of the number of+-- resources in the result.+uplTotalResults :: Lens' Uploads (Maybe Int32)+uplTotalResults+ = lens _uplTotalResults+ (\ s a -> s{_uplTotalResults = a})+ . mapping _Coerce++-- | The starting index of the resources, which is 1 by default or otherwise+-- specified by the start-index query parameter.+uplStartIndex :: Lens' Uploads (Maybe Int32)+uplStartIndex+ = lens _uplStartIndex+ (\ s a -> s{_uplStartIndex = a})+ . mapping _Coerce++-- | Link to previous page for this upload collection.+uplPreviousLink :: Lens' Uploads (Maybe Text)+uplPreviousLink+ = lens _uplPreviousLink+ (\ s a -> s{_uplPreviousLink = a})++instance FromJSON Uploads where+ parseJSON+ = withObject "Uploads"+ (\ o ->+ Uploads' <$>+ (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>+ (o .:? "kind" .!= "analytics#uploads")+ <*> (o .:? "items" .!= mempty)+ <*> (o .:? "totalResults")+ <*> (o .:? "startIndex")+ <*> (o .:? "previousLink"))++instance ToJSON Uploads where+ toJSON Uploads'{..}+ = object+ (catMaybes+ [("nextLink" .=) <$> _uplNextLink,+ ("itemsPerPage" .=) <$> _uplItemsPerPage,+ Just ("kind" .= _uplKind),+ ("items" .=) <$> _uplItems,+ ("totalResults" .=) <$> _uplTotalResults,+ ("startIndex" .=) <$> _uplStartIndex,+ ("previousLink" .=) <$> _uplPreviousLink])++-- | A custom dimension collection lists Analytics custom dimensions to which+-- the user has access. Each resource in the collection corresponds to a+-- single Analytics custom dimension.+--+-- /See:/ 'customDimensions' smart constructor.+data CustomDimensions =+ CustomDimensions'+ { _cdNextLink :: !(Maybe Text)+ , _cdItemsPerPage :: !(Maybe (Textual Int32))+ , _cdKind :: !Text+ , _cdUsername :: !(Maybe Text)+ , _cdItems :: !(Maybe [CustomDimension])+ , _cdTotalResults :: !(Maybe (Textual Int32))+ , _cdStartIndex :: !(Maybe (Textual Int32))+ , _cdPreviousLink :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'CustomDimensions' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cdNextLink'+--+-- * 'cdItemsPerPage'+--+-- * 'cdKind'+--+-- * 'cdUsername'+--+-- * 'cdItems'+--+-- * 'cdTotalResults'+--+-- * 'cdStartIndex'+--+-- * 'cdPreviousLink'+customDimensions+ :: CustomDimensions+customDimensions =+ CustomDimensions'+ { _cdNextLink = Nothing+ , _cdItemsPerPage = Nothing+ , _cdKind = "analytics#customDimensions"+ , _cdUsername = Nothing+ , _cdItems = Nothing+ , _cdTotalResults = Nothing+ , _cdStartIndex = Nothing+ , _cdPreviousLink = Nothing+ }+++-- | Link to next page for this custom dimension collection.+cdNextLink :: Lens' CustomDimensions (Maybe Text)+cdNextLink+ = lens _cdNextLink (\ s a -> s{_cdNextLink = a})++-- | The maximum number of resources the response can contain, regardless of+-- the actual number of resources returned. Its value ranges from 1 to 1000+-- with a value of 1000 by default, or otherwise specified by the+-- max-results query parameter.+cdItemsPerPage :: Lens' CustomDimensions (Maybe Int32)+cdItemsPerPage+ = lens _cdItemsPerPage+ (\ s a -> s{_cdItemsPerPage = a})+ . mapping _Coerce++-- | Collection type.+cdKind :: Lens' CustomDimensions Text+cdKind = lens _cdKind (\ s a -> s{_cdKind = a})++-- | Email ID of the authenticated user+cdUsername :: Lens' CustomDimensions (Maybe Text)+cdUsername+ = lens _cdUsername (\ s a -> s{_cdUsername = a})++-- | Collection of custom dimensions.+cdItems :: Lens' CustomDimensions [CustomDimension]+cdItems+ = lens _cdItems (\ s a -> s{_cdItems = a}) . _Default+ . _Coerce++-- | The total number of results for the query, regardless of the number of+-- results in the response.+cdTotalResults :: Lens' CustomDimensions (Maybe Int32)+cdTotalResults+ = lens _cdTotalResults+ (\ s a -> s{_cdTotalResults = a})+ . mapping _Coerce++-- | The starting index of the resources, which is 1 by default or otherwise+-- specified by the start-index query parameter.+cdStartIndex :: Lens' CustomDimensions (Maybe Int32)+cdStartIndex+ = lens _cdStartIndex (\ s a -> s{_cdStartIndex = a})+ . mapping _Coerce++-- | Link to previous page for this custom dimension collection.+cdPreviousLink :: Lens' CustomDimensions (Maybe Text)+cdPreviousLink+ = lens _cdPreviousLink+ (\ s a -> s{_cdPreviousLink = a})++instance FromJSON CustomDimensions where+ parseJSON+ = withObject "CustomDimensions"+ (\ o ->+ CustomDimensions' <$>+ (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>+ (o .:? "kind" .!= "analytics#customDimensions")+ <*> (o .:? "username")+ <*> (o .:? "items" .!= mempty)+ <*> (o .:? "totalResults")+ <*> (o .:? "startIndex")+ <*> (o .:? "previousLink"))++instance ToJSON CustomDimensions where+ toJSON CustomDimensions'{..}+ = object+ (catMaybes+ [("nextLink" .=) <$> _cdNextLink,+ ("itemsPerPage" .=) <$> _cdItemsPerPage,+ Just ("kind" .= _cdKind),+ ("username" .=) <$> _cdUsername,+ ("items" .=) <$> _cdItems,+ ("totalResults" .=) <$> _cdTotalResults,+ ("startIndex" .=) <$> _cdStartIndex,+ ("previousLink" .=) <$> _cdPreviousLink])++-- | An segment collection lists Analytics segments that the user has access+-- to. Each resource in the collection corresponds to a single Analytics+-- segment.+--+-- /See:/ 'segments' smart constructor.+data Segments =+ Segments'+ { _sNextLink :: !(Maybe Text)+ , _sItemsPerPage :: !(Maybe (Textual Int32))+ , _sKind :: !Text+ , _sUsername :: !(Maybe Text)+ , _sItems :: !(Maybe [Segment])+ , _sTotalResults :: !(Maybe (Textual Int32))+ , _sStartIndex :: !(Maybe (Textual Int32))+ , _sPreviousLink :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Segments' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sNextLink'+--+-- * 'sItemsPerPage'+--+-- * 'sKind'+--+-- * 'sUsername'+--+-- * 'sItems'+--+-- * 'sTotalResults'+--+-- * 'sStartIndex'+--+-- * 'sPreviousLink'+segments+ :: Segments+segments =+ Segments'+ { _sNextLink = Nothing+ , _sItemsPerPage = Nothing+ , _sKind = "analytics#segments"+ , _sUsername = Nothing+ , _sItems = Nothing+ , _sTotalResults = Nothing+ , _sStartIndex = Nothing+ , _sPreviousLink = Nothing+ }+++-- | Link to next page for this segment collection.+sNextLink :: Lens' Segments (Maybe Text)+sNextLink+ = lens _sNextLink (\ s a -> s{_sNextLink = a})++-- | The maximum number of resources the response can contain, regardless of+-- the actual number of resources returned. Its value ranges from 1 to 1000+-- with a value of 1000 by default, or otherwise specified by the+-- max-results query parameter.+sItemsPerPage :: Lens' Segments (Maybe Int32)+sItemsPerPage+ = lens _sItemsPerPage+ (\ s a -> s{_sItemsPerPage = a})+ . mapping _Coerce++-- | Collection type for segments.+sKind :: Lens' Segments Text+sKind = lens _sKind (\ s a -> s{_sKind = a})++-- | Email ID of the authenticated user+sUsername :: Lens' Segments (Maybe Text)+sUsername+ = lens _sUsername (\ s a -> s{_sUsername = a})++-- | A list of segments.+sItems :: Lens' Segments [Segment]+sItems+ = lens _sItems (\ s a -> s{_sItems = a}) . _Default .+ _Coerce++-- | The total number of results for the query, regardless of the number of+-- results in the response.+sTotalResults :: Lens' Segments (Maybe Int32)+sTotalResults+ = lens _sTotalResults+ (\ s a -> s{_sTotalResults = a})+ . mapping _Coerce++-- | The starting index of the resources, which is 1 by default or otherwise+-- specified by the start-index query parameter.+sStartIndex :: Lens' Segments (Maybe Int32)+sStartIndex+ = lens _sStartIndex (\ s a -> s{_sStartIndex = a}) .+ mapping _Coerce++-- | Link to previous page for this segment collection.+sPreviousLink :: Lens' Segments (Maybe Text)+sPreviousLink+ = lens _sPreviousLink+ (\ s a -> s{_sPreviousLink = a})++instance FromJSON Segments where+ parseJSON+ = withObject "Segments"+ (\ o ->+ Segments' <$>+ (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>+ (o .:? "kind" .!= "analytics#segments")+ <*> (o .:? "username")+ <*> (o .:? "items" .!= mempty)+ <*> (o .:? "totalResults")+ <*> (o .:? "startIndex")+ <*> (o .:? "previousLink"))++instance ToJSON Segments where+ toJSON Segments'{..}+ = object+ (catMaybes+ [("nextLink" .=) <$> _sNextLink,+ ("itemsPerPage" .=) <$> _sItemsPerPage,+ Just ("kind" .= _sKind),+ ("username" .=) <$> _sUsername,+ ("items" .=) <$> _sItems,+ ("totalResults" .=) <$> _sTotalResults,+ ("startIndex" .=) <$> _sStartIndex,+ ("previousLink" .=) <$> _sPreviousLink])++--+-- /See:/ 'gaDataDataTable' smart constructor.+data GaDataDataTable =+ GaDataDataTable'+ { _gddtCols :: !(Maybe [GaDataDataTableColsItem])+ , _gddtRows :: !(Maybe [GaDataDataTableRowsItem])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GaDataDataTable' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gddtCols'+--+-- * 'gddtRows'+gaDataDataTable+ :: GaDataDataTable+gaDataDataTable = GaDataDataTable' {_gddtCols = Nothing, _gddtRows = Nothing}+++gddtCols :: Lens' GaDataDataTable [GaDataDataTableColsItem]+gddtCols+ = lens _gddtCols (\ s a -> s{_gddtCols = a}) .+ _Default+ . _Coerce++gddtRows :: Lens' GaDataDataTable [GaDataDataTableRowsItem]+gddtRows+ = lens _gddtRows (\ s a -> s{_gddtRows = a}) .+ _Default+ . _Coerce++instance FromJSON GaDataDataTable where+ parseJSON+ = withObject "GaDataDataTable"+ (\ o ->+ GaDataDataTable' <$>+ (o .:? "cols" .!= mempty) <*>+ (o .:? "rows" .!= mempty))++instance ToJSON GaDataDataTable where+ toJSON GaDataDataTable'{..}+ = object+ (catMaybes+ [("cols" .=) <$> _gddtCols,+ ("rows" .=) <$> _gddtRows])++-- | Web property being linked.+--+-- /See:/ 'entityAdWordsLinkEntity' smart constructor.+newtype EntityAdWordsLinkEntity =+ EntityAdWordsLinkEntity'+ { _eawleWebPropertyRef :: Maybe WebPropertyRef+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'EntityAdWordsLinkEntity' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'eawleWebPropertyRef'+entityAdWordsLinkEntity+ :: EntityAdWordsLinkEntity+entityAdWordsLinkEntity =+ EntityAdWordsLinkEntity' {_eawleWebPropertyRef = Nothing}+++eawleWebPropertyRef :: Lens' EntityAdWordsLinkEntity (Maybe WebPropertyRef)+eawleWebPropertyRef+ = lens _eawleWebPropertyRef+ (\ s a -> s{_eawleWebPropertyRef = a})++instance FromJSON EntityAdWordsLinkEntity where+ parseJSON+ = withObject "EntityAdWordsLinkEntity"+ (\ o ->+ EntityAdWordsLinkEntity' <$>+ (o .:? "webPropertyRef"))++instance ToJSON EntityAdWordsLinkEntity where+ toJSON EntityAdWordsLinkEntity'{..}+ = object+ (catMaybes+ [("webPropertyRef" .=) <$> _eawleWebPropertyRef])++-- | A state based audience definition that will cause a user to be added or+-- removed from an audience.+--+-- /See:/ 'remarketingAudienceStateBasedAudienceDefinition' smart constructor.+data RemarketingAudienceStateBasedAudienceDefinition =+ RemarketingAudienceStateBasedAudienceDefinition'+ { _rasbadExcludeConditions :: !(Maybe RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions)+ , _rasbadIncludeConditions :: !(Maybe IncludeConditions)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'RemarketingAudienceStateBasedAudienceDefinition' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rasbadExcludeConditions'+--+-- * 'rasbadIncludeConditions'+remarketingAudienceStateBasedAudienceDefinition+ :: RemarketingAudienceStateBasedAudienceDefinition+remarketingAudienceStateBasedAudienceDefinition =+ RemarketingAudienceStateBasedAudienceDefinition'+ {_rasbadExcludeConditions = Nothing, _rasbadIncludeConditions = Nothing}+++-- | Defines the conditions to exclude users from the audience.+rasbadExcludeConditions :: Lens' RemarketingAudienceStateBasedAudienceDefinition (Maybe RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions)+rasbadExcludeConditions+ = lens _rasbadExcludeConditions+ (\ s a -> s{_rasbadExcludeConditions = a})++-- | Defines the conditions to include users to the audience.+rasbadIncludeConditions :: Lens' RemarketingAudienceStateBasedAudienceDefinition (Maybe IncludeConditions)+rasbadIncludeConditions+ = lens _rasbadIncludeConditions+ (\ s a -> s{_rasbadIncludeConditions = a})++instance FromJSON+ RemarketingAudienceStateBasedAudienceDefinition+ where+ parseJSON+ = withObject+ "RemarketingAudienceStateBasedAudienceDefinition"+ (\ o ->+ RemarketingAudienceStateBasedAudienceDefinition' <$>+ (o .:? "excludeConditions") <*>+ (o .:? "includeConditions"))++instance ToJSON+ RemarketingAudienceStateBasedAudienceDefinition+ where+ toJSON+ RemarketingAudienceStateBasedAudienceDefinition'{..}+ = object+ (catMaybes+ [("excludeConditions" .=) <$>+ _rasbadExcludeConditions,+ ("includeConditions" .=) <$>+ _rasbadIncludeConditions])++-- | Details for the goal of the type URL_DESTINATION.+--+-- /See:/ 'goalURLDestinationDetails' smart constructor.+data GoalURLDestinationDetails =+ GoalURLDestinationDetails'+ { _guddURL :: !(Maybe Text)+ , _guddMatchType :: !(Maybe Text)+ , _guddSteps :: !(Maybe [GoalURLDestinationDetailsStepsItem])+ , _guddCaseSensitive :: !(Maybe Bool)+ , _guddFirstStepRequired :: !(Maybe Bool)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoalURLDestinationDetails' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'guddURL'+--+-- * 'guddMatchType'+--+-- * 'guddSteps'+--+-- * 'guddCaseSensitive'+--+-- * 'guddFirstStepRequired'+goalURLDestinationDetails+ :: GoalURLDestinationDetails+goalURLDestinationDetails =+ GoalURLDestinationDetails'+ { _guddURL = Nothing+ , _guddMatchType = Nothing+ , _guddSteps = Nothing+ , _guddCaseSensitive = Nothing+ , _guddFirstStepRequired = Nothing+ }+++-- | URL for this goal.+guddURL :: Lens' GoalURLDestinationDetails (Maybe Text)+guddURL = lens _guddURL (\ s a -> s{_guddURL = a})++-- | Match type for the goal URL. Possible values are HEAD, EXACT, or REGEX.+guddMatchType :: Lens' GoalURLDestinationDetails (Maybe Text)+guddMatchType+ = lens _guddMatchType+ (\ s a -> s{_guddMatchType = a})++-- | List of steps configured for this goal funnel.+guddSteps :: Lens' GoalURLDestinationDetails [GoalURLDestinationDetailsStepsItem]+guddSteps+ = lens _guddSteps (\ s a -> s{_guddSteps = a}) .+ _Default+ . _Coerce++-- | Determines if the goal URL must exactly match the capitalization of+-- visited URLs.+guddCaseSensitive :: Lens' GoalURLDestinationDetails (Maybe Bool)+guddCaseSensitive+ = lens _guddCaseSensitive+ (\ s a -> s{_guddCaseSensitive = a})++-- | Determines if the first step in this goal is required.+guddFirstStepRequired :: Lens' GoalURLDestinationDetails (Maybe Bool)+guddFirstStepRequired+ = lens _guddFirstStepRequired+ (\ s a -> s{_guddFirstStepRequired = a})++instance FromJSON GoalURLDestinationDetails where+ parseJSON+ = withObject "GoalURLDestinationDetails"+ (\ o ->+ GoalURLDestinationDetails' <$>+ (o .:? "url") <*> (o .:? "matchType") <*>+ (o .:? "steps" .!= mempty)+ <*> (o .:? "caseSensitive")+ <*> (o .:? "firstStepRequired"))++instance ToJSON GoalURLDestinationDetails where+ toJSON GoalURLDestinationDetails'{..}+ = object+ (catMaybes+ [("url" .=) <$> _guddURL,+ ("matchType" .=) <$> _guddMatchType,+ ("steps" .=) <$> _guddSteps,+ ("caseSensitive" .=) <$> _guddCaseSensitive,+ ("firstStepRequired" .=) <$> _guddFirstStepRequired])++-- | A profile filter link collection lists profile filter links between+-- profiles and filters. Each resource in the collection corresponds to a+-- profile filter link.+--+-- /See:/ 'proFileFilterLinks' smart constructor.+data ProFileFilterLinks =+ ProFileFilterLinks'+ { _pfflNextLink :: !(Maybe Text)+ , _pfflItemsPerPage :: !(Maybe (Textual Int32))+ , _pfflKind :: !Text+ , _pfflUsername :: !(Maybe Text)+ , _pfflItems :: !(Maybe [ProFileFilterLink])+ , _pfflTotalResults :: !(Maybe (Textual Int32))+ , _pfflStartIndex :: !(Maybe (Textual Int32))+ , _pfflPreviousLink :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ProFileFilterLinks' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pfflNextLink'+--+-- * 'pfflItemsPerPage'+--+-- * 'pfflKind'+--+-- * 'pfflUsername'+--+-- * 'pfflItems'+--+-- * 'pfflTotalResults'+--+-- * 'pfflStartIndex'+--+-- * 'pfflPreviousLink'+proFileFilterLinks+ :: ProFileFilterLinks+proFileFilterLinks =+ ProFileFilterLinks'+ { _pfflNextLink = Nothing+ , _pfflItemsPerPage = Nothing+ , _pfflKind = "analytics#profileFilterLinks"+ , _pfflUsername = Nothing+ , _pfflItems = Nothing+ , _pfflTotalResults = Nothing+ , _pfflStartIndex = Nothing+ , _pfflPreviousLink = Nothing+ }+++-- | Link to next page for this profile filter link collection.+pfflNextLink :: Lens' ProFileFilterLinks (Maybe Text)+pfflNextLink+ = lens _pfflNextLink (\ s a -> s{_pfflNextLink = a})++-- | The maximum number of resources the response can contain, regardless of+-- the actual number of resources returned. Its value ranges from 1 to+-- 1,000 with a value of 1000 by default, or otherwise specified by the+-- max-results query parameter.+pfflItemsPerPage :: Lens' ProFileFilterLinks (Maybe Int32)+pfflItemsPerPage+ = lens _pfflItemsPerPage+ (\ s a -> s{_pfflItemsPerPage = a})+ . mapping _Coerce++-- | Collection type.+pfflKind :: Lens' ProFileFilterLinks Text+pfflKind = lens _pfflKind (\ s a -> s{_pfflKind = a})++-- | Email ID of the authenticated user+pfflUsername :: Lens' ProFileFilterLinks (Maybe Text)+pfflUsername+ = lens _pfflUsername (\ s a -> s{_pfflUsername = a})++-- | A list of profile filter links.+pfflItems :: Lens' ProFileFilterLinks [ProFileFilterLink]+pfflItems+ = lens _pfflItems (\ s a -> s{_pfflItems = a}) .+ _Default+ . _Coerce++-- | The total number of results for the query, regardless of the number of+-- results in the response.+pfflTotalResults :: Lens' ProFileFilterLinks (Maybe Int32)+pfflTotalResults+ = lens _pfflTotalResults+ (\ s a -> s{_pfflTotalResults = a})+ . mapping _Coerce++-- | The starting index of the resources, which is 1 by default or otherwise+-- specified by the start-index query parameter.+pfflStartIndex :: Lens' ProFileFilterLinks (Maybe Int32)+pfflStartIndex+ = lens _pfflStartIndex+ (\ s a -> s{_pfflStartIndex = a})+ . mapping _Coerce++-- | Link to previous page for this profile filter link collection.+pfflPreviousLink :: Lens' ProFileFilterLinks (Maybe Text)+pfflPreviousLink+ = lens _pfflPreviousLink+ (\ s a -> s{_pfflPreviousLink = a})++instance FromJSON ProFileFilterLinks where+ parseJSON+ = withObject "ProFileFilterLinks"+ (\ o ->+ ProFileFilterLinks' <$>+ (o .:? "nextLink") <*> (o .:? "itemsPerPage") <*>+ (o .:? "kind" .!= "analytics#profileFilterLinks")+ <*> (o .:? "username")+ <*> (o .:? "items" .!= mempty)+ <*> (o .:? "totalResults")+ <*> (o .:? "startIndex")+ <*> (o .:? "previousLink"))++instance ToJSON ProFileFilterLinks where+ toJSON ProFileFilterLinks'{..}+ = object+ (catMaybes+ [("nextLink" .=) <$> _pfflNextLink,+ ("itemsPerPage" .=) <$> _pfflItemsPerPage,+ Just ("kind" .= _pfflKind),+ ("username" .=) <$> _pfflUsername,+ ("items" .=) <$> _pfflItems,+ ("totalResults" .=) <$> _pfflTotalResults,+ ("startIndex" .=) <$> _pfflStartIndex,+ ("previousLink" .=) <$> _pfflPreviousLink])++-- | Parent link for this web property. Points to the account to which this+-- web property belongs.+--+-- /See:/ 'webPropertyParentLink' smart constructor.+data WebPropertyParentLink =+ WebPropertyParentLink'+ { _wpplHref :: !(Maybe Text)+ , _wpplType :: !Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'WebPropertyParentLink' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'wpplHref'+--+-- * 'wpplType'+webPropertyParentLink+ :: WebPropertyParentLink+webPropertyParentLink =+ WebPropertyParentLink' {_wpplHref = Nothing, _wpplType = "analytics#account"}+++-- | Link to the account for this web property.+wpplHref :: Lens' WebPropertyParentLink (Maybe Text)+wpplHref = lens _wpplHref (\ s a -> s{_wpplHref = a})++-- | Type of the parent link. Its value is \"analytics#account\".+wpplType :: Lens' WebPropertyParentLink Text+wpplType = lens _wpplType (\ s a -> s{_wpplType = a})++instance FromJSON WebPropertyParentLink where+ parseJSON+ = withObject "WebPropertyParentLink"+ (\ o ->+ WebPropertyParentLink' <$>+ (o .:? "href") <*>+ (o .:? "type" .!= "analytics#account"))++instance ToJSON WebPropertyParentLink where+ toJSON WebPropertyParentLink'{..}+ = object+ (catMaybes+ [("href" .=) <$> _wpplHref,+ Just ("type" .= _wpplType)])++-- | Information for the view (profile), for which the Analytics data was+-- requested.+--+-- /See:/ 'gaDataProFileInfo' smart constructor.+data GaDataProFileInfo =+ GaDataProFileInfo'+ { _gdpfiWebPropertyId :: !(Maybe Text)+ , _gdpfiProFileId :: !(Maybe Text)+ , _gdpfiProFileName :: !(Maybe Text)+ , _gdpfiAccountId :: !(Maybe Text)+ , _gdpfiInternalWebPropertyId :: !(Maybe Text)+ , _gdpfiTableId :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GaDataProFileInfo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gdpfiWebPropertyId'+--+-- * 'gdpfiProFileId'+--+-- * 'gdpfiProFileName'+--+-- * 'gdpfiAccountId'+--+-- * 'gdpfiInternalWebPropertyId'+--+-- * 'gdpfiTableId'+gaDataProFileInfo+ :: GaDataProFileInfo+gaDataProFileInfo =+ GaDataProFileInfo'+ { _gdpfiWebPropertyId = Nothing+ , _gdpfiProFileId = Nothing+ , _gdpfiProFileName = Nothing+ , _gdpfiAccountId = Nothing+ , _gdpfiInternalWebPropertyId = Nothing+ , _gdpfiTableId = Nothing+ }+++-- | Web Property ID to which this view (profile) belongs.+gdpfiWebPropertyId :: Lens' GaDataProFileInfo (Maybe Text)+gdpfiWebPropertyId+ = lens _gdpfiWebPropertyId+ (\ s a -> s{_gdpfiWebPropertyId = a})++-- | View (Profile) ID.+gdpfiProFileId :: Lens' GaDataProFileInfo (Maybe Text)+gdpfiProFileId+ = lens _gdpfiProFileId+ (\ s a -> s{_gdpfiProFileId = a})++-- | View (Profile) name.+gdpfiProFileName :: Lens' GaDataProFileInfo (Maybe Text)+gdpfiProFileName+ = lens _gdpfiProFileName+ (\ s a -> s{_gdpfiProFileName = a})++-- | Account ID to which this view (profile) belongs.+gdpfiAccountId :: Lens' GaDataProFileInfo (Maybe Text)+gdpfiAccountId+ = lens _gdpfiAccountId+ (\ s a -> s{_gdpfiAccountId = a})++-- | Internal ID for the web property to which this view (profile) belongs.+gdpfiInternalWebPropertyId :: Lens' GaDataProFileInfo (Maybe Text)+gdpfiInternalWebPropertyId+ = lens _gdpfiInternalWebPropertyId+ (\ s a -> s{_gdpfiInternalWebPropertyId = a})++-- | Table ID for view (profile).+gdpfiTableId :: Lens' GaDataProFileInfo (Maybe Text)+gdpfiTableId+ = lens _gdpfiTableId (\ s a -> s{_gdpfiTableId = a})++instance FromJSON GaDataProFileInfo where+ parseJSON+ = withObject "GaDataProFileInfo"+ (\ o ->+ GaDataProFileInfo' <$>+ (o .:? "webPropertyId") <*> (o .:? "profileId") <*>+ (o .:? "profileName")+ <*> (o .:? "accountId")+ <*> (o .:? "internalWebPropertyId")+ <*> (o .:? "tableId"))++instance ToJSON GaDataProFileInfo where+ toJSON GaDataProFileInfo'{..}+ = object+ (catMaybes+ [("webPropertyId" .=) <$> _gdpfiWebPropertyId,+ ("profileId" .=) <$> _gdpfiProFileId,+ ("profileName" .=) <$> _gdpfiProFileName,+ ("accountId" .=) <$> _gdpfiAccountId,+ ("internalWebPropertyId" .=) <$>+ _gdpfiInternalWebPropertyId,+ ("tableId" .=) <$> _gdpfiTableId])++-- | Metadata returned for an upload operation.+--+-- /See:/ 'upload' smart constructor.+data Upload =+ Upload'+ { _uuStatus :: !(Maybe Text)+ , _uuKind :: !Text+ , _uuCustomDataSourceId :: !(Maybe Text)+ , _uuUploadTime :: !(Maybe DateTime')+ , _uuAccountId :: !(Maybe (Textual Int64))+ , _uuId :: !(Maybe Text)+ , _uuErrors :: !(Maybe [Text])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Upload' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uuStatus'+--+-- * 'uuKind'+--+-- * 'uuCustomDataSourceId'+--+-- * 'uuUploadTime'+--+-- * 'uuAccountId'+--+-- * 'uuId'+--+-- * 'uuErrors'+upload+ :: Upload+upload =+ Upload'+ { _uuStatus = Nothing+ , _uuKind = "analytics#upload"+ , _uuCustomDataSourceId = Nothing+ , _uuUploadTime = Nothing+ , _uuAccountId = Nothing+ , _uuId = Nothing+ , _uuErrors = Nothing+ }+++-- | Upload status. Possible values: PENDING, COMPLETED, FAILED, DELETING,+-- DELETED.+uuStatus :: Lens' Upload (Maybe Text)+uuStatus = lens _uuStatus (\ s a -> s{_uuStatus = a})++-- | Resource type for Analytics upload.+uuKind :: Lens' Upload Text+uuKind = lens _uuKind (\ s a -> s{_uuKind = a})++-- | Custom data source Id to which this data import belongs.+uuCustomDataSourceId :: Lens' Upload (Maybe Text)+uuCustomDataSourceId+ = lens _uuCustomDataSourceId+ (\ s a -> s{_uuCustomDataSourceId = a})++-- | Time this file is uploaded.+uuUploadTime :: Lens' Upload (Maybe UTCTime)+uuUploadTime+ = lens _uuUploadTime (\ s a -> s{_uuUploadTime = a})+ . mapping _DateTime++-- | Account Id to which this upload belongs.+uuAccountId :: Lens' Upload (Maybe Int64)+uuAccountId+ = lens _uuAccountId (\ s a -> s{_uuAccountId = a}) .+ mapping _Coerce++-- | A unique ID for this upload.+uuId :: Lens' Upload (Maybe Text)+uuId = lens _uuId (\ s a -> s{_uuId = a})++-- | Data import errors collection.+uuErrors :: Lens' Upload [Text]+uuErrors+ = lens _uuErrors (\ s a -> s{_uuErrors = a}) .+ _Default+ . _Coerce++instance FromJSON Upload where+ parseJSON+ = withObject "Upload"+ (\ o ->+ Upload' <$>+ (o .:? "status") <*>+ (o .:? "kind" .!= "analytics#upload")+ <*> (o .:? "customDataSourceId")+ <*> (o .:? "uploadTime")+ <*> (o .:? "accountId")+ <*> (o .:? "id")+ <*> (o .:? "errors" .!= mempty))++instance ToJSON Upload where+ toJSON Upload'{..}+ = object+ (catMaybes+ [("status" .=) <$> _uuStatus,+ Just ("kind" .= _uuKind),+ ("customDataSourceId" .=) <$> _uuCustomDataSourceId,+ ("uploadTime" .=) <$> _uuUploadTime,+ ("accountId" .=) <$> _uuAccountId,+ ("id" .=) <$> _uuId, ("errors" .=) <$> _uuErrors])++-- | JSON template for Analytics Custom Dimension.+--+-- /See:/ 'customDimension' smart constructor.+data CustomDimension =+ CustomDimension'+ { _cddParentLink :: !(Maybe CustomDimensionParentLink)+ , _cddWebPropertyId :: !(Maybe Text)+ , _cddKind :: !Text+ , _cddCreated :: !(Maybe DateTime')+ , _cddActive :: !(Maybe Bool)+ , _cddSelfLink :: !(Maybe Text)+ , _cddAccountId :: !(Maybe Text)+ , _cddName :: !(Maybe Text)+ , _cddScope :: !(Maybe Text)+ , _cddId :: !(Maybe Text)+ , _cddUpdated :: !(Maybe DateTime')+ , _cddIndex :: !(Maybe (Textual Int32))+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'CustomDimension' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cddParentLink'+--+-- * 'cddWebPropertyId'+--+-- * 'cddKind'+--+-- * 'cddCreated'+--+-- * 'cddActive'+--+-- * 'cddSelfLink'+--+-- * 'cddAccountId'+--+-- * 'cddName'+--+-- * 'cddScope'+--+-- * 'cddId'+--+-- * 'cddUpdated'+--+-- * 'cddIndex'+customDimension+ :: CustomDimension+customDimension =+ CustomDimension'+ { _cddParentLink = Nothing+ , _cddWebPropertyId = Nothing+ , _cddKind = "analytics#customDimension"+ , _cddCreated = Nothing+ , _cddActive = Nothing+ , _cddSelfLink = Nothing+ , _cddAccountId = Nothing+ , _cddName = Nothing+ , _cddScope = Nothing+ , _cddId = Nothing+ , _cddUpdated = Nothing+ , _cddIndex = Nothing+ }+++-- | Parent link for the custom dimension. Points to the property to which+-- the custom dimension belongs.+cddParentLink :: Lens' CustomDimension (Maybe CustomDimensionParentLink)+cddParentLink+ = lens _cddParentLink+ (\ s a -> s{_cddParentLink = a})++-- | Property ID.+cddWebPropertyId :: Lens' CustomDimension (Maybe Text)+cddWebPropertyId+ = lens _cddWebPropertyId+ (\ s a -> s{_cddWebPropertyId = a})++-- | Kind value for a custom dimension. Set to \"analytics#customDimension\".+-- It is a read-only field.+cddKind :: Lens' CustomDimension Text+cddKind = lens _cddKind (\ s a -> s{_cddKind = a})++-- | Time the custom dimension was created.+cddCreated :: Lens' CustomDimension (Maybe UTCTime)+cddCreated+ = lens _cddCreated (\ s a -> s{_cddCreated = a}) .+ mapping _DateTime++-- | Boolean indicating whether the custom dimension is active.+cddActive :: Lens' CustomDimension (Maybe Bool)+cddActive+ = lens _cddActive (\ s a -> s{_cddActive = a})++-- | Link for the custom dimension+cddSelfLink :: Lens' CustomDimension (Maybe Text)+cddSelfLink+ = lens _cddSelfLink (\ s a -> s{_cddSelfLink = a})++-- | Account ID.+cddAccountId :: Lens' CustomDimension (Maybe Text)+cddAccountId+ = lens _cddAccountId (\ s a -> s{_cddAccountId = a})++-- | Name of the custom dimension.+cddName :: Lens' CustomDimension (Maybe Text)+cddName = lens _cddName (\ s a -> s{_cddName = a})++-- | Scope of the custom dimension: HIT, SESSION, USER or PRODUCT.+cddScope :: Lens' CustomDimension (Maybe Text)+cddScope = lens _cddScope (\ s a -> s{_cddScope = a})++-- | Custom dimension ID.+cddId :: Lens' CustomDimension (Maybe Text)+cddId = lens _cddId (\ s a -> s{_cddId = a})++-- | Time the custom dimension was last modified.+cddUpdated :: Lens' CustomDimension (Maybe UTCTime)+cddUpdated+ = lens _cddUpdated (\ s a -> s{_cddUpdated = a}) .+ mapping _DateTime++-- | Index of the custom dimension.+cddIndex :: Lens' CustomDimension (Maybe Int32)+cddIndex+ = lens _cddIndex (\ s a -> s{_cddIndex = a}) .+ mapping _Coerce++instance FromJSON CustomDimension where+ parseJSON+ = withObject "CustomDimension"+ (\ o ->+ CustomDimension' <$>+ (o .:? "parentLink") <*> (o .:? "webPropertyId") <*>+ (o .:? "kind" .!= "analytics#customDimension")+ <*> (o .:? "created")+ <*> (o .:? "active")+ <*> (o .:? "selfLink")+ <*> (o .:? "accountId")+ <*> (o .:? "name")+ <*> (o .:? "scope")+ <*> (o .:? "id")+ <*> (o .:? "updated")+ <*> (o .:? "index"))++instance ToJSON CustomDimension where+ toJSON CustomDimension'{..}+ = object+ (catMaybes+ [("parentLink" .=) <$> _cddParentLink,+ ("webPropertyId" .=) <$> _cddWebPropertyId,+ Just ("kind" .= _cddKind),+ ("created" .=) <$> _cddCreated,+ ("active" .=) <$> _cddActive,+ ("selfLink" .=) <$> _cddSelfLink,+ ("accountId" .=) <$> _cddAccountId,+ ("name" .=) <$> _cddName, ("scope" .=) <$> _cddScope,+ ("id" .=) <$> _cddId, ("updated" .=) <$> _cddUpdated,+ ("index" .=) <$> _cddIndex])++-- | JSON template for an Analytics segment.+--+-- /See:/ 'segment' smart constructor.+data Segment =+ Segment'+ { _segDefinition :: !(Maybe Text)+ , _segKind :: !Text+ , _segCreated :: !(Maybe DateTime')+ , _segSelfLink :: !(Maybe Text)+ , _segName :: !(Maybe Text)+ , _segId :: !(Maybe Text)+ , _segUpdated :: !(Maybe DateTime')+ , _segType :: !(Maybe Text)+ , _segSegmentId :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Segment' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'segDefinition'+--+-- * 'segKind'+--+-- * 'segCreated'+--+-- * 'segSelfLink'+--+-- * 'segName'+--+-- * 'segId'+--+-- * 'segUpdated'+--+-- * 'segType'+--+-- * 'segSegmentId'+segment+ :: Segment+segment =+ Segment'+ { _segDefinition = Nothing+ , _segKind = "analytics#segment"+ , _segCreated = Nothing+ , _segSelfLink = Nothing+ , _segName = Nothing+ , _segId = Nothing+ , _segUpdated = Nothing+ , _segType = Nothing+ , _segSegmentId = Nothing+ }+++-- | Segment definition.+segDefinition :: Lens' Segment (Maybe Text)+segDefinition+ = lens _segDefinition+ (\ s a -> s{_segDefinition = a})++-- | Resource type for Analytics segment.+segKind :: Lens' Segment Text+segKind = lens _segKind (\ s a -> s{_segKind = a})++-- | Time the segment was created.+segCreated :: Lens' Segment (Maybe UTCTime)+segCreated+ = lens _segCreated (\ s a -> s{_segCreated = a}) .+ mapping _DateTime++-- | Link for this segment.+segSelfLink :: Lens' Segment (Maybe Text)+segSelfLink+ = lens _segSelfLink (\ s a -> s{_segSelfLink = a})++-- | Segment name.+segName :: Lens' Segment (Maybe Text)+segName = lens _segName (\ s a -> s{_segName = a})++-- | Segment ID.+segId :: Lens' Segment (Maybe Text)+segId = lens _segId (\ s a -> s{_segId = a})++-- | Time the segment was last modified.+segUpdated :: Lens' Segment (Maybe UTCTime)+segUpdated+ = lens _segUpdated (\ s a -> s{_segUpdated = a}) .+ mapping _DateTime++-- | Type for a segment. Possible values are \"BUILT_IN\" or \"CUSTOM\".+segType :: Lens' Segment (Maybe Text)+segType = lens _segType (\ s a -> s{_segType = a})++-- | Segment ID. Can be used with the \'segment\' parameter in Core Reporting+-- API.+segSegmentId :: Lens' Segment (Maybe Text)+segSegmentId+ = lens _segSegmentId (\ s a -> s{_segSegmentId = a})++instance FromJSON Segment where+ parseJSON+ = withObject "Segment"+ (\ o ->+ Segment' <$>+ (o .:? "definition") <*>+ (o .:? "kind" .!= "analytics#segment")+ <*> (o .:? "created")+ <*> (o .:? "selfLink")+ <*> (o .:? "name")+ <*> (o .:? "id")+ <*> (o .:? "updated")+ <*> (o .:? "type")+ <*> (o .:? "segmentId"))++instance ToJSON Segment where+ toJSON Segment'{..}+ = object+ (catMaybes+ [("definition" .=) <$> _segDefinition,+ Just ("kind" .= _segKind),+ ("created" .=) <$> _segCreated,+ ("selfLink" .=) <$> _segSelfLink,+ ("name" .=) <$> _segName, ("id" .=) <$> _segId,+ ("updated" .=) <$> _segUpdated,+ ("type" .=) <$> _segType,+ ("segmentId" .=) <$> _segSegmentId])++-- | Child link for an account entry. Points to the list of web properties+-- for this account.+--+-- /See:/ 'accountChildLink' smart constructor.+data AccountChildLink =+ AccountChildLink'+ { _aclHref :: !(Maybe Text)+ , _aclType :: !Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'AccountChildLink' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aclHref'+--+-- * 'aclType'+accountChildLink+ :: AccountChildLink+accountChildLink =+ AccountChildLink' {_aclHref = Nothing, _aclType = "analytics#webproperties"}+++-- | Link to the list of web properties for this account.+aclHref :: Lens' AccountChildLink (Maybe Text)+aclHref = lens _aclHref (\ s a -> s{_aclHref = a})++-- | Type of the child link. Its value is \"analytics#webproperties\".+aclType :: Lens' AccountChildLink Text+aclType = lens _aclType (\ s a -> s{_aclType = a})++instance FromJSON AccountChildLink where+ parseJSON+ = withObject "AccountChildLink"+ (\ o ->+ AccountChildLink' <$>+ (o .:? "href") <*>+ (o .:? "type" .!= "analytics#webproperties"))++instance ToJSON AccountChildLink where+ toJSON AccountChildLink'{..}+ = object+ (catMaybes+ [("href" .=) <$> _aclHref,+ Just ("type" .= _aclType)])++-- | JSON template for an Analytics profile filter link.+--+-- /See:/ 'proFileFilterLink' smart constructor.+data ProFileFilterLink =+ ProFileFilterLink'+ { _proProFileRef :: !(Maybe ProFileRef)+ , _proKind :: !Text+ , _proFilterRef :: !(Maybe FilterRef)+ , _proSelfLink :: !(Maybe Text)+ , _proId :: !(Maybe Text)+ , _proRank :: !(Maybe (Textual Int32))+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ProFileFilterLink' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'proProFileRef'+--+-- * 'proKind'+--+-- * 'proFilterRef'+--+-- * 'proSelfLink'+--+-- * 'proId'+--+-- * 'proRank'+proFileFilterLink+ :: ProFileFilterLink+proFileFilterLink =+ ProFileFilterLink'+ { _proProFileRef = Nothing+ , _proKind = "analytics#profileFilterLink"+ , _proFilterRef = Nothing+ , _proSelfLink = Nothing+ , _proId = Nothing+ , _proRank = Nothing+ }+++-- | View (Profile) for this link.+proProFileRef :: Lens' ProFileFilterLink (Maybe ProFileRef)+proProFileRef+ = lens _proProFileRef+ (\ s a -> s{_proProFileRef = a})++-- | Resource type for Analytics filter.+proKind :: Lens' ProFileFilterLink Text+proKind = lens _proKind (\ s a -> s{_proKind = a})++-- | Filter for this link.+proFilterRef :: Lens' ProFileFilterLink (Maybe FilterRef)+proFilterRef+ = lens _proFilterRef (\ s a -> s{_proFilterRef = a})++-- | Link for this profile filter link.+proSelfLink :: Lens' ProFileFilterLink (Maybe Text)+proSelfLink+ = lens _proSelfLink (\ s a -> s{_proSelfLink = a})++-- | Profile filter link ID.+proId :: Lens' ProFileFilterLink (Maybe Text)+proId = lens _proId (\ s a -> s{_proId = a})++-- | The rank of this profile filter link relative to the other filters+-- linked to the same profile. For readonly (i.e., list and get)+-- operations, the rank always starts at 1. For write (i.e., create,+-- update, or delete) operations, you may specify a value between 0 and 255+-- inclusively, [0, 255]. In order to insert a link at the end of the list,+-- either don\'t specify a rank or set a rank to a number greater than the+-- largest rank in the list. In order to insert a link to the beginning of+-- the list specify a rank that is less than or equal to 1. The new link+-- will move all existing filters with the same or lower rank down the+-- list. After the link is inserted\/updated\/deleted all profile filter+-- links will be renumbered starting at 1.+proRank :: Lens' ProFileFilterLink (Maybe Int32)+proRank+ = lens _proRank (\ s a -> s{_proRank = a}) .+ mapping _Coerce++instance FromJSON ProFileFilterLink where+ parseJSON+ = withObject "ProFileFilterLink"+ (\ o ->+ ProFileFilterLink' <$>+ (o .:? "profileRef") <*>+ (o .:? "kind" .!= "analytics#profileFilterLink")+ <*> (o .:? "filterRef")+ <*> (o .:? "selfLink")+ <*> (o .:? "id")+ <*> (o .:? "rank"))++instance ToJSON ProFileFilterLink where+ toJSON ProFileFilterLink'{..}+ = object+ (catMaybes+ [("profileRef" .=) <$> _proProFileRef,+ Just ("kind" .= _proKind),+ ("filterRef" .=) <$> _proFilterRef,+ ("selfLink" .=) <$> _proSelfLink,+ ("id" .=) <$> _proId, ("rank" .=) <$> _proRank])++-- | Parent link for the custom metric. Points to the property to which the+-- custom metric belongs.+--+-- /See:/ 'customMetricParentLink' smart constructor.+data CustomMetricParentLink =+ CustomMetricParentLink'+ { _cmplHref :: !(Maybe Text)+ , _cmplType :: !Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'CustomMetricParentLink' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cmplHref'+--+-- * 'cmplType'+customMetricParentLink+ :: CustomMetricParentLink+customMetricParentLink =+ CustomMetricParentLink'+ {_cmplHref = Nothing, _cmplType = "analytics#webproperty"}+++-- | Link to the property to which the custom metric belongs.+cmplHref :: Lens' CustomMetricParentLink (Maybe Text)+cmplHref = lens _cmplHref (\ s a -> s{_cmplHref = a})++-- | Type of the parent link. Set to \"analytics#webproperty\".+cmplType :: Lens' CustomMetricParentLink Text+cmplType = lens _cmplType (\ s a -> s{_cmplType = a})++instance FromJSON CustomMetricParentLink where+ parseJSON+ = withObject "CustomMetricParentLink"+ (\ o ->+ CustomMetricParentLink' <$>+ (o .:? "href") <*>+ (o .:? "type" .!= "analytics#webproperty"))++instance ToJSON CustomMetricParentLink where+ toJSON CustomMetricParentLink'{..}+ = object+ (catMaybes+ [("href" .=) <$> _cmplHref,+ Just ("type" .= _cmplType)])++-- | JSON template for a metadata column.+--+-- /See:/ 'column' smart constructor.+data Column =+ Column'+ { _ccKind :: !Text+ , _ccAttributes :: !(Maybe ColumnAttributes)+ , _ccId :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Column' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ccKind'+--+-- * 'ccAttributes'+--+-- * 'ccId'+column+ :: Column+column =+ Column'+ {_ccKind = "analytics#column", _ccAttributes = Nothing, _ccId = Nothing}+++-- | Resource type for Analytics column.+ccKind :: Lens' Column Text+ccKind = lens _ccKind (\ s a -> s{_ccKind = a})++-- | Map of attribute name and value for this column.+ccAttributes :: Lens' Column (Maybe ColumnAttributes)+ccAttributes+ = lens _ccAttributes (\ s a -> s{_ccAttributes = a})++-- | Column id.+ccId :: Lens' Column (Maybe Text)+ccId = lens _ccId (\ s a -> s{_ccId = a})++instance FromJSON Column where+ parseJSON+ = withObject "Column"+ (\ o ->+ Column' <$>+ (o .:? "kind" .!= "analytics#column") <*>+ (o .:? "attributes")+ <*> (o .:? "id"))++instance ToJSON Column where+ toJSON Column'{..}+ = object+ (catMaybes+ [Just ("kind" .= _ccKind),+ ("attributes" .=) <$> _ccAttributes,+ ("id" .=) <$> _ccId])++-- | The simple audience definition that will cause a user to be added to an+-- audience.+--+-- /See:/ 'remarketingAudienceAudienceDefinition' smart constructor.+newtype RemarketingAudienceAudienceDefinition =+ RemarketingAudienceAudienceDefinition'+ { _raadIncludeConditions :: Maybe IncludeConditions+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'RemarketingAudienceAudienceDefinition' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'raadIncludeConditions'+remarketingAudienceAudienceDefinition+ :: RemarketingAudienceAudienceDefinition+remarketingAudienceAudienceDefinition =+ RemarketingAudienceAudienceDefinition' {_raadIncludeConditions = Nothing}+++-- | Defines the conditions to include users to the audience.+raadIncludeConditions :: Lens' RemarketingAudienceAudienceDefinition (Maybe IncludeConditions)+raadIncludeConditions+ = lens _raadIncludeConditions+ (\ s a -> s{_raadIncludeConditions = a})++instance FromJSON+ RemarketingAudienceAudienceDefinition+ where+ parseJSON+ = withObject "RemarketingAudienceAudienceDefinition"+ (\ o ->+ RemarketingAudienceAudienceDefinition' <$>+ (o .:? "includeConditions"))++instance ToJSON RemarketingAudienceAudienceDefinition+ where+ toJSON RemarketingAudienceAudienceDefinition'{..}+ = object+ (catMaybes+ [("includeConditions" .=) <$>+ _raadIncludeConditions])++--+-- /See:/ 'gaDataDataTableColsItem' smart constructor.+data GaDataDataTableColsItem =+ GaDataDataTableColsItem'+ { _gddtciId :: !(Maybe Text)+ , _gddtciType :: !(Maybe Text)+ , _gddtciLabel :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GaDataDataTableColsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gddtciId'+--+-- * 'gddtciType'+--+-- * 'gddtciLabel'+gaDataDataTableColsItem+ :: GaDataDataTableColsItem+gaDataDataTableColsItem =+ GaDataDataTableColsItem'+ {_gddtciId = Nothing, _gddtciType = Nothing, _gddtciLabel = Nothing}+++gddtciId :: Lens' GaDataDataTableColsItem (Maybe Text)+gddtciId = lens _gddtciId (\ s a -> s{_gddtciId = a})++gddtciType :: Lens' GaDataDataTableColsItem (Maybe Text)+gddtciType+ = lens _gddtciType (\ s a -> s{_gddtciType = a})++gddtciLabel :: Lens' GaDataDataTableColsItem (Maybe Text)+gddtciLabel+ = lens _gddtciLabel (\ s a -> s{_gddtciLabel = a})++instance FromJSON GaDataDataTableColsItem where+ parseJSON+ = withObject "GaDataDataTableColsItem"+ (\ o ->+ GaDataDataTableColsItem' <$>+ (o .:? "id") <*> (o .:? "type") <*> (o .:? "label"))++instance ToJSON GaDataDataTableColsItem where+ toJSON GaDataDataTableColsItem'{..}+ = object+ (catMaybes+ [("id" .=) <$> _gddtciId,+ ("type" .=) <$> _gddtciType,+ ("label" .=) <$> _gddtciLabel])++--+-- /See:/ 'experimentVariationsItem' smart constructor.+data ExperimentVariationsItem =+ ExperimentVariationsItem'+ { _eviStatus :: !(Maybe Text)+ , _eviWeight :: !(Maybe (Textual Double))+ , _eviURL :: !(Maybe Text)+ , _eviWon :: !(Maybe Bool)+ , _eviName :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ExperimentVariationsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'eviStatus'+--+-- * 'eviWeight'+--+-- * 'eviURL'+--+-- * 'eviWon'+--+-- * 'eviName'+experimentVariationsItem+ :: ExperimentVariationsItem+experimentVariationsItem =+ ExperimentVariationsItem'+ { _eviStatus = Nothing+ , _eviWeight = Nothing+ , _eviURL = Nothing+ , _eviWon = Nothing+ , _eviName = Nothing+ }+++-- | Status of the variation. Possible values: \"ACTIVE\", \"INACTIVE\".+-- INACTIVE variations are not served. This field may not be changed for an+-- experiment whose status is ENDED.+eviStatus :: Lens' ExperimentVariationsItem (Maybe Text)+eviStatus+ = lens _eviStatus (\ s a -> s{_eviStatus = a})++-- | Weight that this variation should receive. Only present if the+-- experiment is running. This field is read-only.+eviWeight :: Lens' ExperimentVariationsItem (Maybe Double)+eviWeight+ = lens _eviWeight (\ s a -> s{_eviWeight = a}) .+ mapping _Coerce++-- | The URL of the variation. This field may not be changed for an+-- experiment whose status is RUNNING or ENDED.+eviURL :: Lens' ExperimentVariationsItem (Maybe Text)+eviURL = lens _eviURL (\ s a -> s{_eviURL = a})++-- | True if the experiment has ended and this variation performed+-- (statistically) significantly better than the original. This field is+-- read-only.+eviWon :: Lens' ExperimentVariationsItem (Maybe Bool)+eviWon = lens _eviWon (\ s a -> s{_eviWon = a})++-- | The name of the variation. This field is required when creating an+-- experiment. This field may not be changed for an experiment whose status+-- is ENDED.+eviName :: Lens' ExperimentVariationsItem (Maybe Text)+eviName = lens _eviName (\ s a -> s{_eviName = a})++instance FromJSON ExperimentVariationsItem where+ parseJSON+ = withObject "ExperimentVariationsItem"+ (\ o ->+ ExperimentVariationsItem' <$>+ (o .:? "status") <*> (o .:? "weight") <*>+ (o .:? "url")+ <*> (o .:? "won")+ <*> (o .:? "name"))++instance ToJSON ExperimentVariationsItem where+ toJSON ExperimentVariationsItem'{..}+ = object+ (catMaybes+ [("status" .=) <$> _eviStatus,+ ("weight" .=) <$> _eviWeight, ("url" .=) <$> _eviURL,+ ("won" .=) <$> _eviWon, ("name" .=) <$> _eviName])++-- | Defines the conditions to exclude users from the audience.+--+-- /See:/ 'remarketingAudienceStateBasedAudienceDefinitionExcludeConditions' smart constructor.+data RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions =+ RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions'+ { _rasbadecExclusionDuration :: !(Maybe Text)+ , _rasbadecSegment :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rasbadecExclusionDuration'+--+-- * 'rasbadecSegment'+remarketingAudienceStateBasedAudienceDefinitionExcludeConditions+ :: RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions+remarketingAudienceStateBasedAudienceDefinitionExcludeConditions =+ RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions'+ {_rasbadecExclusionDuration = Nothing, _rasbadecSegment = Nothing}+++-- | Whether to make the exclusion TEMPORARY or PERMANENT.+rasbadecExclusionDuration :: Lens' RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions (Maybe Text)+rasbadecExclusionDuration+ = lens _rasbadecExclusionDuration+ (\ s a -> s{_rasbadecExclusionDuration = a})++-- | The segment condition that will cause a user to be removed from an+-- audience.+rasbadecSegment :: Lens' RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions (Maybe Text)+rasbadecSegment+ = lens _rasbadecSegment+ (\ s a -> s{_rasbadecSegment = a})++instance FromJSON+ RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions+ where+ parseJSON+ = withObject+ "RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions"+ (\ o ->+ RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions'+ <$>+ (o .:? "exclusionDuration") <*> (o .:? "segment"))++instance ToJSON+ RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions+ where+ toJSON+ RemarketingAudienceStateBasedAudienceDefinitionExcludeConditions'{..}+ = object+ (catMaybes+ [("exclusionDuration" .=) <$>+ _rasbadecExclusionDuration,+ ("segment" .=) <$> _rasbadecSegment])++-- | Total values for the requested metrics over all the results, not just+-- the results returned in this response. The order of the metric totals is+-- same as the metric order specified in the request.+--+-- /See:/ 'mcfDataTotalsForAllResults' smart constructor.+newtype McfDataTotalsForAllResults =+ McfDataTotalsForAllResults'+ { _mdtfarAddtional :: HashMap Text Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'McfDataTotalsForAllResults' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mdtfarAddtional'+mcfDataTotalsForAllResults+ :: HashMap Text Text -- ^ 'mdtfarAddtional'+ -> McfDataTotalsForAllResults+mcfDataTotalsForAllResults pMdtfarAddtional_ =+ McfDataTotalsForAllResults' {_mdtfarAddtional = _Coerce # pMdtfarAddtional_}+++-- | Key-value pair for the total value of a metric. Key is the metric name+-- and the value is the total value for that metric.+mdtfarAddtional :: Lens' McfDataTotalsForAllResults (HashMap Text Text)+mdtfarAddtional+ = lens _mdtfarAddtional+ (\ s a -> s{_mdtfarAddtional = a})+ . _Coerce++instance FromJSON McfDataTotalsForAllResults where+ parseJSON+ = withObject "McfDataTotalsForAllResults"+ (\ o ->+ McfDataTotalsForAllResults' <$> (parseJSONObject o))++instance ToJSON McfDataTotalsForAllResults where+ toJSON = toJSON . _mdtfarAddtional++-- | User ID.+--+-- /See:/ 'userDeletionRequestId' smart constructor.+data UserDeletionRequestId =+ UserDeletionRequestId'+ { _udriUserId :: !(Maybe Text)+ , _udriType :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'UserDeletionRequestId' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'udriUserId'+--+-- * 'udriType'+userDeletionRequestId+ :: UserDeletionRequestId+userDeletionRequestId =+ UserDeletionRequestId' {_udriUserId = Nothing, _udriType = Nothing}+++-- | The User\'s id+udriUserId :: Lens' UserDeletionRequestId (Maybe Text)+udriUserId+ = lens _udriUserId (\ s a -> s{_udriUserId = a})++-- | Type of user+udriType :: Lens' UserDeletionRequestId (Maybe Text)+udriType = lens _udriType (\ s a -> s{_udriType = a})++instance FromJSON UserDeletionRequestId where+ parseJSON+ = withObject "UserDeletionRequestId"+ (\ o ->+ UserDeletionRequestId' <$>+ (o .:? "userId") <*> (o .:? "type"))++instance ToJSON UserDeletionRequestId where+ toJSON UserDeletionRequestId'{..}+ = object+ (catMaybes+ [("userId" .=) <$> _udriUserId,+ ("type" .=) <$> _udriType])++-- | Download details for a file stored in Google Cloud Storage.+--+-- /See:/ 'unSampledReportCloudStorageDownloadDetails' smart constructor.+data UnSampledReportCloudStorageDownloadDetails =+ UnSampledReportCloudStorageDownloadDetails'+ { _usrcsddObjectId :: !(Maybe Text)+ , _usrcsddBucketId :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'UnSampledReportCloudStorageDownloadDetails' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'usrcsddObjectId'+--+-- * 'usrcsddBucketId'+unSampledReportCloudStorageDownloadDetails+ :: UnSampledReportCloudStorageDownloadDetails+unSampledReportCloudStorageDownloadDetails =+ UnSampledReportCloudStorageDownloadDetails'+ {_usrcsddObjectId = Nothing, _usrcsddBucketId = Nothing}+++-- | Id of the file object containing the report data.+usrcsddObjectId :: Lens' UnSampledReportCloudStorageDownloadDetails (Maybe Text)+usrcsddObjectId+ = lens _usrcsddObjectId+ (\ s a -> s{_usrcsddObjectId = a})++-- | Id of the bucket the file object is stored in.+usrcsddBucketId :: Lens' UnSampledReportCloudStorageDownloadDetails (Maybe Text)+usrcsddBucketId+ = lens _usrcsddBucketId+ (\ s a -> s{_usrcsddBucketId = a})++instance FromJSON+ UnSampledReportCloudStorageDownloadDetails+ where+ parseJSON+ = withObject+ "UnSampledReportCloudStorageDownloadDetails"+ (\ o ->+ UnSampledReportCloudStorageDownloadDetails' <$>+ (o .:? "objectId") <*> (o .:? "bucketId"))++instance ToJSON+ UnSampledReportCloudStorageDownloadDetails+ where+ toJSON+ UnSampledReportCloudStorageDownloadDetails'{..}+ = object+ (catMaybes+ [("objectId" .=) <$> _usrcsddObjectId,+ ("bucketId" .=) <$> _usrcsddBucketId])++-- | Child link for this view (profile). Points to the list of goals for this+-- view (profile).+--+-- /See:/ 'proFileChildLink' smart constructor.+data ProFileChildLink =+ ProFileChildLink'+ { _pfclHref :: !(Maybe Text)+ , _pfclType :: !Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ProFileChildLink' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pfclHref'+--+-- * 'pfclType'+proFileChildLink+ :: ProFileChildLink+proFileChildLink =+ ProFileChildLink' {_pfclHref = Nothing, _pfclType = "analytics#goals"}+++-- | Link to the list of goals for this view (profile).+pfclHref :: Lens' ProFileChildLink (Maybe Text)+pfclHref = lens _pfclHref (\ s a -> s{_pfclHref = a})++-- | Value is \"analytics#goals\".+pfclType :: Lens' ProFileChildLink Text+pfclType = lens _pfclType (\ s a -> s{_pfclType = a})++instance FromJSON ProFileChildLink where+ parseJSON+ = withObject "ProFileChildLink"+ (\ o ->+ ProFileChildLink' <$>+ (o .:? "href") <*>+ (o .:? "type" .!= "analytics#goals"))++instance ToJSON ProFileChildLink where+ toJSON ProFileChildLink'{..}+ = object+ (catMaybes+ [("href" .=) <$> _pfclHref,+ Just ("type" .= _pfclType)])++--+-- /See:/ 'gaDataColumnHeadersItem' smart constructor.+data GaDataColumnHeadersItem =+ GaDataColumnHeadersItem'+ { _gdchiColumnType :: !(Maybe Text)+ , _gdchiName :: !(Maybe Text)+ , _gdchiDataType :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GaDataColumnHeadersItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gdchiColumnType'+--+-- * 'gdchiName'+--+-- * 'gdchiDataType'+gaDataColumnHeadersItem+ :: GaDataColumnHeadersItem+gaDataColumnHeadersItem =+ GaDataColumnHeadersItem'+ {_gdchiColumnType = Nothing, _gdchiName = Nothing, _gdchiDataType = Nothing}+++-- | Column Type. Either DIMENSION or METRIC.+gdchiColumnType :: Lens' GaDataColumnHeadersItem (Maybe Text)+gdchiColumnType+ = lens _gdchiColumnType+ (\ s a -> s{_gdchiColumnType = a})++-- | Column name.+gdchiName :: Lens' GaDataColumnHeadersItem (Maybe Text)+gdchiName+ = lens _gdchiName (\ s a -> s{_gdchiName = a})++-- | Data type. Dimension column headers have only STRING as the data type.+-- Metric column headers have data types for metric values such as INTEGER,+-- DOUBLE, CURRENCY etc.+gdchiDataType :: Lens' GaDataColumnHeadersItem (Maybe Text)+gdchiDataType+ = lens _gdchiDataType+ (\ s a -> s{_gdchiDataType = a})++instance FromJSON GaDataColumnHeadersItem where+ parseJSON+ = withObject "GaDataColumnHeadersItem"+ (\ o ->+ GaDataColumnHeadersItem' <$>+ (o .:? "columnType") <*> (o .:? "name") <*>+ (o .:? "dataType"))++instance ToJSON GaDataColumnHeadersItem where+ toJSON GaDataColumnHeadersItem'{..}+ = object+ (catMaybes+ [("columnType" .=) <$> _gdchiColumnType,+ ("name" .=) <$> _gdchiName,+ ("dataType" .=) <$> _gdchiDataType])++-- | Parent link for a goal. Points to the view (profile) to which this goal+-- belongs.+--+-- /See:/ 'goalParentLink' smart constructor.+data GoalParentLink =+ GoalParentLink'+ { _gplHref :: !(Maybe Text)+ , _gplType :: !Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoalParentLink' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gplHref'+--+-- * 'gplType'+goalParentLink+ :: GoalParentLink+goalParentLink =+ GoalParentLink' {_gplHref = Nothing, _gplType = "analytics#profile"}+++-- | Link to the view (profile) to which this goal belongs.+gplHref :: Lens' GoalParentLink (Maybe Text)+gplHref = lens _gplHref (\ s a -> s{_gplHref = a})++-- | Value is \"analytics#profile\".+gplType :: Lens' GoalParentLink Text+gplType = lens _gplType (\ s a -> s{_gplType = a})++instance FromJSON GoalParentLink where+ parseJSON+ = withObject "GoalParentLink"+ (\ o ->+ GoalParentLink' <$>+ (o .:? "href") <*>+ (o .:? "type" .!= "analytics#profile"))++instance ToJSON GoalParentLink where+ toJSON GoalParentLink'{..}+ = object+ (catMaybes+ [("href" .=) <$> _gplHref,+ Just ("type" .= _gplType)])++-- | Map of attribute name and value for this column.+--+-- /See:/ 'columnAttributes' smart constructor.+newtype ColumnAttributes =+ ColumnAttributes'+ { _caAddtional :: HashMap Text Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ColumnAttributes' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'caAddtional'+columnAttributes+ :: HashMap Text Text -- ^ 'caAddtional'+ -> ColumnAttributes+columnAttributes pCaAddtional_ =+ ColumnAttributes' {_caAddtional = _Coerce # pCaAddtional_}+ -- | The name of the attribute. caAddtional :: Lens' ColumnAttributes (HashMap Text Text)
gen/Network/Google/Resource/Analytics/Data/Ga/Get.hs view
@@ -77,7 +77,8 @@ -- | Returns Analytics data for a view (profile). -- -- /See:/ 'dataGaGet' smart constructor.-data DataGaGet = DataGaGet'+data DataGaGet =+ DataGaGet' { _dggMetrics :: !Text , _dggSamplingLevel :: !(Maybe DataGaGetSamplingLevel) , _dggFilters :: !(Maybe Text)@@ -91,8 +92,10 @@ , _dggMaxResults :: !(Maybe (Textual Int32)) , _dggSegment :: !(Maybe Text) , _dggStartDate :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'DataGaGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -129,7 +132,7 @@ -> Text -- ^ 'dggStartDate' -> DataGaGet dataGaGet pDggMetrics_ pDggIds_ pDggEndDate_ pDggStartDate_ =- DataGaGet'+ DataGaGet' { _dggMetrics = pDggMetrics_ , _dggSamplingLevel = Nothing , _dggFilters = Nothing@@ -144,6 +147,7 @@ , _dggSegment = Nothing , _dggStartDate = pDggStartDate_ }+ -- | A comma-separated list of Analytics metrics. E.g., -- \'ga:sessions,ga:pageviews\'. At least one metric must be specified.
gen/Network/Google/Resource/Analytics/Data/Mcf/Get.hs view
@@ -70,7 +70,8 @@ -- | Returns Analytics Multi-Channel Funnels data for a view (profile). -- -- /See:/ 'dataMcfGet' smart constructor.-data DataMcfGet = DataMcfGet'+data DataMcfGet =+ DataMcfGet' { _dmgMetrics :: !Text , _dmgSamplingLevel :: !(Maybe DataMcfGetSamplingLevel) , _dmgFilters :: !(Maybe Text)@@ -81,8 +82,10 @@ , _dmgStartIndex :: !(Maybe (Textual Int32)) , _dmgMaxResults :: !(Maybe (Textual Int32)) , _dmgStartDate :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'DataMcfGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -113,7 +116,7 @@ -> Text -- ^ 'dmgStartDate' -> DataMcfGet dataMcfGet pDmgMetrics_ pDmgIds_ pDmgEndDate_ pDmgStartDate_ =- DataMcfGet'+ DataMcfGet' { _dmgMetrics = pDmgMetrics_ , _dmgSamplingLevel = Nothing , _dmgFilters = Nothing@@ -125,6 +128,7 @@ , _dmgMaxResults = Nothing , _dmgStartDate = pDmgStartDate_ }+ -- | A comma-separated list of Multi-Channel Funnels metrics. E.g., -- \'mcf:totalConversions,mcf:totalConversionValue\'. At least one metric
gen/Network/Google/Resource/Analytics/Data/Realtime/Get.hs view
@@ -62,15 +62,18 @@ -- | Returns real time data for a view (profile). -- -- /See:/ 'dataRealtimeGet' smart constructor.-data DataRealtimeGet = DataRealtimeGet'+data DataRealtimeGet =+ DataRealtimeGet' { _drgMetrics :: !Text , _drgFilters :: !(Maybe Text) , _drgIds :: !Text , _drgSort :: !(Maybe Text) , _drgDimensions :: !(Maybe Text) , _drgMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'DataRealtimeGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -91,7 +94,7 @@ -> Text -- ^ 'drgIds' -> DataRealtimeGet dataRealtimeGet pDrgMetrics_ pDrgIds_ =- DataRealtimeGet'+ DataRealtimeGet' { _drgMetrics = pDrgMetrics_ , _drgFilters = Nothing , _drgIds = pDrgIds_@@ -99,6 +102,7 @@ , _drgDimensions = Nothing , _drgMaxResults = Nothing }+ -- | A comma-separated list of real time metrics. E.g., \'rt:activeUsers\'. -- At least one metric must be specified.
gen/Network/Google/Resource/Analytics/Management/AccountSummaries/List.hs view
@@ -57,11 +57,14 @@ -- accounts\/properties\/profiles) to which the user has access. -- -- /See:/ 'managementAccountSummariesList' smart constructor.-data ManagementAccountSummariesList = ManagementAccountSummariesList'+data ManagementAccountSummariesList =+ ManagementAccountSummariesList' { _maslStartIndex :: !(Maybe (Textual Int32)) , _maslMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementAccountSummariesList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -72,10 +75,9 @@ managementAccountSummariesList :: ManagementAccountSummariesList managementAccountSummariesList =- ManagementAccountSummariesList'- { _maslStartIndex = Nothing- , _maslMaxResults = Nothing- }+ ManagementAccountSummariesList'+ {_maslStartIndex = Nothing, _maslMaxResults = Nothing}+ -- | An index of the first entity to retrieve. Use this parameter as a -- pagination mechanism along with the max-results parameter.
gen/Network/Google/Resource/Analytics/Management/AccountUserLinks/Delete.hs view
@@ -55,11 +55,14 @@ -- | Removes a user from the given account. -- -- /See:/ 'managementAccountUserLinksDelete' smart constructor.-data ManagementAccountUserLinksDelete = ManagementAccountUserLinksDelete'+data ManagementAccountUserLinksDelete =+ ManagementAccountUserLinksDelete' { _mauldAccountId :: !Text , _mauldLinkId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementAccountUserLinksDelete' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -72,11 +75,10 @@ -> Text -- ^ 'mauldLinkId' -> ManagementAccountUserLinksDelete managementAccountUserLinksDelete pMauldAccountId_ pMauldLinkId_ =- ManagementAccountUserLinksDelete'- { _mauldAccountId = pMauldAccountId_- , _mauldLinkId = pMauldLinkId_- }+ ManagementAccountUserLinksDelete'+ {_mauldAccountId = pMauldAccountId_, _mauldLinkId = pMauldLinkId_} + -- | Account ID to delete the user link for. mauldAccountId :: Lens' ManagementAccountUserLinksDelete Text mauldAccountId@@ -89,7 +91,8 @@ = lens _mauldLinkId (\ s a -> s{_mauldLinkId = a}) instance GoogleRequest- ManagementAccountUserLinksDelete where+ ManagementAccountUserLinksDelete+ where type Rs ManagementAccountUserLinksDelete = () type Scopes ManagementAccountUserLinksDelete = '["https://www.googleapis.com/auth/analytics.manage.users"]
gen/Network/Google/Resource/Analytics/Management/AccountUserLinks/Insert.hs view
@@ -56,11 +56,14 @@ -- | Adds a new user to the given account. -- -- /See:/ 'managementAccountUserLinksInsert' smart constructor.-data ManagementAccountUserLinksInsert = ManagementAccountUserLinksInsert'+data ManagementAccountUserLinksInsert =+ ManagementAccountUserLinksInsert' { _mauliPayload :: !EntityUserLink , _mauliAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementAccountUserLinksInsert' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -73,11 +76,10 @@ -> Text -- ^ 'mauliAccountId' -> ManagementAccountUserLinksInsert managementAccountUserLinksInsert pMauliPayload_ pMauliAccountId_ =- ManagementAccountUserLinksInsert'- { _mauliPayload = pMauliPayload_- , _mauliAccountId = pMauliAccountId_- }+ ManagementAccountUserLinksInsert'+ {_mauliPayload = pMauliPayload_, _mauliAccountId = pMauliAccountId_} + -- | Multipart request metadata. mauliPayload :: Lens' ManagementAccountUserLinksInsert EntityUserLink mauliPayload@@ -90,7 +92,8 @@ (\ s a -> s{_mauliAccountId = a}) instance GoogleRequest- ManagementAccountUserLinksInsert where+ ManagementAccountUserLinksInsert+ where type Rs ManagementAccountUserLinksInsert = EntityUserLink type Scopes ManagementAccountUserLinksInsert =
gen/Network/Google/Resource/Analytics/Management/AccountUserLinks/List.hs view
@@ -58,12 +58,15 @@ -- | Lists account-user links for a given account. -- -- /See:/ 'managementAccountUserLinksList' smart constructor.-data ManagementAccountUserLinksList = ManagementAccountUserLinksList'+data ManagementAccountUserLinksList =+ ManagementAccountUserLinksList' { _maullAccountId :: !Text , _maullStartIndex :: !(Maybe (Textual Int32)) , _maullMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementAccountUserLinksList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -77,11 +80,12 @@ :: Text -- ^ 'maullAccountId' -> ManagementAccountUserLinksList managementAccountUserLinksList pMaullAccountId_ =- ManagementAccountUserLinksList'+ ManagementAccountUserLinksList' { _maullAccountId = pMaullAccountId_ , _maullStartIndex = Nothing , _maullMaxResults = Nothing }+ -- | Account ID to retrieve the user links for. maullAccountId :: Lens' ManagementAccountUserLinksList Text
gen/Network/Google/Resource/Analytics/Management/AccountUserLinks/Update.hs view
@@ -58,12 +58,15 @@ -- | Updates permissions for an existing user on the given account. -- -- /See:/ 'managementAccountUserLinksUpdate' smart constructor.-data ManagementAccountUserLinksUpdate = ManagementAccountUserLinksUpdate'+data ManagementAccountUserLinksUpdate =+ ManagementAccountUserLinksUpdate' { _mauluPayload :: !EntityUserLink , _mauluAccountId :: !Text , _mauluLinkId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementAccountUserLinksUpdate' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -79,12 +82,13 @@ -> Text -- ^ 'mauluLinkId' -> ManagementAccountUserLinksUpdate managementAccountUserLinksUpdate pMauluPayload_ pMauluAccountId_ pMauluLinkId_ =- ManagementAccountUserLinksUpdate'+ ManagementAccountUserLinksUpdate' { _mauluPayload = pMauluPayload_ , _mauluAccountId = pMauluAccountId_ , _mauluLinkId = pMauluLinkId_ } + -- | Multipart request metadata. mauluPayload :: Lens' ManagementAccountUserLinksUpdate EntityUserLink mauluPayload@@ -102,7 +106,8 @@ = lens _mauluLinkId (\ s a -> s{_mauluLinkId = a}) instance GoogleRequest- ManagementAccountUserLinksUpdate where+ ManagementAccountUserLinksUpdate+ where type Rs ManagementAccountUserLinksUpdate = EntityUserLink type Scopes ManagementAccountUserLinksUpdate =
gen/Network/Google/Resource/Analytics/Management/Accounts/List.hs view
@@ -54,11 +54,14 @@ -- | Lists all accounts to which the user has access. -- -- /See:/ 'managementAccountsList' smart constructor.-data ManagementAccountsList = ManagementAccountsList'+data ManagementAccountsList =+ ManagementAccountsList' { _malStartIndex :: !(Maybe (Textual Int32)) , _malMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementAccountsList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -69,10 +72,8 @@ managementAccountsList :: ManagementAccountsList managementAccountsList =- ManagementAccountsList'- { _malStartIndex = Nothing- , _malMaxResults = Nothing- }+ ManagementAccountsList' {_malStartIndex = Nothing, _malMaxResults = Nothing}+ -- | An index of the first account to retrieve. Use this parameter as a -- pagination mechanism along with the max-results parameter.
gen/Network/Google/Resource/Analytics/Management/ClientId/HashClientId.hs view
@@ -53,10 +53,13 @@ -- | Hashes the given Client ID. -- -- /See:/ 'managementClientIdHashClientId' smart constructor.-newtype ManagementClientIdHashClientId = ManagementClientIdHashClientId'+newtype ManagementClientIdHashClientId =+ ManagementClientIdHashClientId' { _mcihciPayload :: HashClientIdRequest- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementClientIdHashClientId' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -66,9 +69,8 @@ :: HashClientIdRequest -- ^ 'mcihciPayload' -> ManagementClientIdHashClientId managementClientIdHashClientId pMcihciPayload_ =- ManagementClientIdHashClientId'- { _mcihciPayload = pMcihciPayload_- }+ ManagementClientIdHashClientId' {_mcihciPayload = pMcihciPayload_}+ -- | Multipart request metadata. mcihciPayload :: Lens' ManagementClientIdHashClientId HashClientIdRequest
gen/Network/Google/Resource/Analytics/Management/CustomDataSources/List.hs view
@@ -61,13 +61,16 @@ -- | List custom data sources to which the user has access. -- -- /See:/ 'managementCustomDataSourcesList' smart constructor.-data ManagementCustomDataSourcesList = ManagementCustomDataSourcesList'+data ManagementCustomDataSourcesList =+ ManagementCustomDataSourcesList' { _mcdslWebPropertyId :: !Text , _mcdslAccountId :: !Text , _mcdslStartIndex :: !(Maybe (Textual Int32)) , _mcdslMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementCustomDataSourcesList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -84,13 +87,14 @@ -> Text -- ^ 'mcdslAccountId' -> ManagementCustomDataSourcesList managementCustomDataSourcesList pMcdslWebPropertyId_ pMcdslAccountId_ =- ManagementCustomDataSourcesList'+ ManagementCustomDataSourcesList' { _mcdslWebPropertyId = pMcdslWebPropertyId_ , _mcdslAccountId = pMcdslAccountId_ , _mcdslStartIndex = Nothing , _mcdslMaxResults = Nothing } + -- | Web property Id for the custom data sources to retrieve. mcdslWebPropertyId :: Lens' ManagementCustomDataSourcesList Text mcdslWebPropertyId@@ -120,7 +124,8 @@ . mapping _Coerce instance GoogleRequest- ManagementCustomDataSourcesList where+ ManagementCustomDataSourcesList+ where type Rs ManagementCustomDataSourcesList = CustomDataSources type Scopes ManagementCustomDataSourcesList =
gen/Network/Google/Resource/Analytics/Management/CustomDimensions/Get.hs view
@@ -59,12 +59,15 @@ -- | Get a custom dimension to which the user has access. -- -- /See:/ 'managementCustomDimensionsGet' smart constructor.-data ManagementCustomDimensionsGet = ManagementCustomDimensionsGet'+data ManagementCustomDimensionsGet =+ ManagementCustomDimensionsGet' { _mcdgWebPropertyId :: !Text , _mcdgAccountId :: !Text , _mcdgCustomDimensionId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementCustomDimensionsGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -80,11 +83,12 @@ -> Text -- ^ 'mcdgCustomDimensionId' -> ManagementCustomDimensionsGet managementCustomDimensionsGet pMcdgWebPropertyId_ pMcdgAccountId_ pMcdgCustomDimensionId_ =- ManagementCustomDimensionsGet'+ ManagementCustomDimensionsGet' { _mcdgWebPropertyId = pMcdgWebPropertyId_ , _mcdgAccountId = pMcdgAccountId_ , _mcdgCustomDimensionId = pMcdgCustomDimensionId_ }+ -- | Web property ID for the custom dimension to retrieve. mcdgWebPropertyId :: Lens' ManagementCustomDimensionsGet Text
gen/Network/Google/Resource/Analytics/Management/CustomDimensions/Insert.hs view
@@ -59,12 +59,15 @@ -- | Create a new custom dimension. -- -- /See:/ 'managementCustomDimensionsInsert' smart constructor.-data ManagementCustomDimensionsInsert = ManagementCustomDimensionsInsert'+data ManagementCustomDimensionsInsert =+ ManagementCustomDimensionsInsert' { _mcdiWebPropertyId :: !Text , _mcdiPayload :: !CustomDimension , _mcdiAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementCustomDimensionsInsert' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -80,12 +83,13 @@ -> Text -- ^ 'mcdiAccountId' -> ManagementCustomDimensionsInsert managementCustomDimensionsInsert pMcdiWebPropertyId_ pMcdiPayload_ pMcdiAccountId_ =- ManagementCustomDimensionsInsert'+ ManagementCustomDimensionsInsert' { _mcdiWebPropertyId = pMcdiWebPropertyId_ , _mcdiPayload = pMcdiPayload_ , _mcdiAccountId = pMcdiAccountId_ } + -- | Web property ID for the custom dimension to create. mcdiWebPropertyId :: Lens' ManagementCustomDimensionsInsert Text mcdiWebPropertyId@@ -104,7 +108,8 @@ (\ s a -> s{_mcdiAccountId = a}) instance GoogleRequest- ManagementCustomDimensionsInsert where+ ManagementCustomDimensionsInsert+ where type Rs ManagementCustomDimensionsInsert = CustomDimension type Scopes ManagementCustomDimensionsInsert =
gen/Network/Google/Resource/Analytics/Management/CustomDimensions/List.hs view
@@ -61,13 +61,16 @@ -- | Lists custom dimensions to which the user has access. -- -- /See:/ 'managementCustomDimensionsList' smart constructor.-data ManagementCustomDimensionsList = ManagementCustomDimensionsList'+data ManagementCustomDimensionsList =+ ManagementCustomDimensionsList' { _mcdlWebPropertyId :: !Text , _mcdlAccountId :: !Text , _mcdlStartIndex :: !(Maybe (Textual Int32)) , _mcdlMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementCustomDimensionsList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -84,12 +87,13 @@ -> Text -- ^ 'mcdlAccountId' -> ManagementCustomDimensionsList managementCustomDimensionsList pMcdlWebPropertyId_ pMcdlAccountId_ =- ManagementCustomDimensionsList'+ ManagementCustomDimensionsList' { _mcdlWebPropertyId = pMcdlWebPropertyId_ , _mcdlAccountId = pMcdlAccountId_ , _mcdlStartIndex = Nothing , _mcdlMaxResults = Nothing }+ -- | Web property ID for the custom dimensions to retrieve. mcdlWebPropertyId :: Lens' ManagementCustomDimensionsList Text
gen/Network/Google/Resource/Analytics/Management/CustomDimensions/Patch.hs view
@@ -65,14 +65,17 @@ -- semantics. -- -- /See:/ 'managementCustomDimensionsPatch' smart constructor.-data ManagementCustomDimensionsPatch = ManagementCustomDimensionsPatch'+data ManagementCustomDimensionsPatch =+ ManagementCustomDimensionsPatch' { _mcdpWebPropertyId :: !Text , _mcdpIgnoreCustomDataSourceLinks :: !Bool , _mcdpPayload :: !CustomDimension , _mcdpAccountId :: !Text , _mcdpCustomDimensionId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementCustomDimensionsPatch' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -93,7 +96,7 @@ -> Text -- ^ 'mcdpCustomDimensionId' -> ManagementCustomDimensionsPatch managementCustomDimensionsPatch pMcdpWebPropertyId_ pMcdpPayload_ pMcdpAccountId_ pMcdpCustomDimensionId_ =- ManagementCustomDimensionsPatch'+ ManagementCustomDimensionsPatch' { _mcdpWebPropertyId = pMcdpWebPropertyId_ , _mcdpIgnoreCustomDataSourceLinks = False , _mcdpPayload = pMcdpPayload_@@ -101,6 +104,7 @@ , _mcdpCustomDimensionId = pMcdpCustomDimensionId_ } + -- | Web property ID for the custom dimension to update. mcdpWebPropertyId :: Lens' ManagementCustomDimensionsPatch Text mcdpWebPropertyId@@ -132,7 +136,8 @@ (\ s a -> s{_mcdpCustomDimensionId = a}) instance GoogleRequest- ManagementCustomDimensionsPatch where+ ManagementCustomDimensionsPatch+ where type Rs ManagementCustomDimensionsPatch = CustomDimension type Scopes ManagementCustomDimensionsPatch =
gen/Network/Google/Resource/Analytics/Management/CustomDimensions/Update.hs view
@@ -63,14 +63,17 @@ -- | Updates an existing custom dimension. -- -- /See:/ 'managementCustomDimensionsUpdate' smart constructor.-data ManagementCustomDimensionsUpdate = ManagementCustomDimensionsUpdate'+data ManagementCustomDimensionsUpdate =+ ManagementCustomDimensionsUpdate' { _mcduWebPropertyId :: !Text , _mcduIgnoreCustomDataSourceLinks :: !Bool , _mcduPayload :: !CustomDimension , _mcduAccountId :: !Text , _mcduCustomDimensionId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementCustomDimensionsUpdate' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -91,7 +94,7 @@ -> Text -- ^ 'mcduCustomDimensionId' -> ManagementCustomDimensionsUpdate managementCustomDimensionsUpdate pMcduWebPropertyId_ pMcduPayload_ pMcduAccountId_ pMcduCustomDimensionId_ =- ManagementCustomDimensionsUpdate'+ ManagementCustomDimensionsUpdate' { _mcduWebPropertyId = pMcduWebPropertyId_ , _mcduIgnoreCustomDataSourceLinks = False , _mcduPayload = pMcduPayload_@@ -99,6 +102,7 @@ , _mcduCustomDimensionId = pMcduCustomDimensionId_ } + -- | Web property ID for the custom dimension to update. mcduWebPropertyId :: Lens' ManagementCustomDimensionsUpdate Text mcduWebPropertyId@@ -130,7 +134,8 @@ (\ s a -> s{_mcduCustomDimensionId = a}) instance GoogleRequest- ManagementCustomDimensionsUpdate where+ ManagementCustomDimensionsUpdate+ where type Rs ManagementCustomDimensionsUpdate = CustomDimension type Scopes ManagementCustomDimensionsUpdate =
gen/Network/Google/Resource/Analytics/Management/CustomMetrics/Get.hs view
@@ -58,12 +58,15 @@ -- | Get a custom metric to which the user has access. -- -- /See:/ 'managementCustomMetricsGet' smart constructor.-data ManagementCustomMetricsGet = ManagementCustomMetricsGet'+data ManagementCustomMetricsGet =+ ManagementCustomMetricsGet' { _mcmgCustomMetricId :: !Text , _mcmgWebPropertyId :: !Text , _mcmgAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementCustomMetricsGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -79,11 +82,12 @@ -> Text -- ^ 'mcmgAccountId' -> ManagementCustomMetricsGet managementCustomMetricsGet pMcmgCustomMetricId_ pMcmgWebPropertyId_ pMcmgAccountId_ =- ManagementCustomMetricsGet'+ ManagementCustomMetricsGet' { _mcmgCustomMetricId = pMcmgCustomMetricId_ , _mcmgWebPropertyId = pMcmgWebPropertyId_ , _mcmgAccountId = pMcmgAccountId_ }+ -- | The ID of the custom metric to retrieve. mcmgCustomMetricId :: Lens' ManagementCustomMetricsGet Text
gen/Network/Google/Resource/Analytics/Management/CustomMetrics/Insert.hs view
@@ -59,12 +59,15 @@ -- | Create a new custom metric. -- -- /See:/ 'managementCustomMetricsInsert' smart constructor.-data ManagementCustomMetricsInsert = ManagementCustomMetricsInsert'+data ManagementCustomMetricsInsert =+ ManagementCustomMetricsInsert' { _mcmiWebPropertyId :: !Text , _mcmiPayload :: !CustomMetric , _mcmiAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementCustomMetricsInsert' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -80,11 +83,12 @@ -> Text -- ^ 'mcmiAccountId' -> ManagementCustomMetricsInsert managementCustomMetricsInsert pMcmiWebPropertyId_ pMcmiPayload_ pMcmiAccountId_ =- ManagementCustomMetricsInsert'+ ManagementCustomMetricsInsert' { _mcmiWebPropertyId = pMcmiWebPropertyId_ , _mcmiPayload = pMcmiPayload_ , _mcmiAccountId = pMcmiAccountId_ }+ -- | Web property ID for the custom dimension to create. mcmiWebPropertyId :: Lens' ManagementCustomMetricsInsert Text
gen/Network/Google/Resource/Analytics/Management/CustomMetrics/List.hs view
@@ -60,13 +60,16 @@ -- | Lists custom metrics to which the user has access. -- -- /See:/ 'managementCustomMetricsList' smart constructor.-data ManagementCustomMetricsList = ManagementCustomMetricsList'+data ManagementCustomMetricsList =+ ManagementCustomMetricsList' { _mcmlWebPropertyId :: !Text , _mcmlAccountId :: !Text , _mcmlStartIndex :: !(Maybe (Textual Int32)) , _mcmlMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementCustomMetricsList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -83,12 +86,13 @@ -> Text -- ^ 'mcmlAccountId' -> ManagementCustomMetricsList managementCustomMetricsList pMcmlWebPropertyId_ pMcmlAccountId_ =- ManagementCustomMetricsList'+ ManagementCustomMetricsList' { _mcmlWebPropertyId = pMcmlWebPropertyId_ , _mcmlAccountId = pMcmlAccountId_ , _mcmlStartIndex = Nothing , _mcmlMaxResults = Nothing }+ -- | Web property ID for the custom metrics to retrieve. mcmlWebPropertyId :: Lens' ManagementCustomMetricsList Text
gen/Network/Google/Resource/Analytics/Management/CustomMetrics/Patch.hs view
@@ -63,14 +63,17 @@ -- | Updates an existing custom metric. This method supports patch semantics. -- -- /See:/ 'managementCustomMetricsPatch' smart constructor.-data ManagementCustomMetricsPatch = ManagementCustomMetricsPatch'+data ManagementCustomMetricsPatch =+ ManagementCustomMetricsPatch' { _mcmpCustomMetricId :: !Text , _mcmpWebPropertyId :: !Text , _mcmpIgnoreCustomDataSourceLinks :: !Bool , _mcmpPayload :: !CustomMetric , _mcmpAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementCustomMetricsPatch' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -91,13 +94,14 @@ -> Text -- ^ 'mcmpAccountId' -> ManagementCustomMetricsPatch managementCustomMetricsPatch pMcmpCustomMetricId_ pMcmpWebPropertyId_ pMcmpPayload_ pMcmpAccountId_ =- ManagementCustomMetricsPatch'+ ManagementCustomMetricsPatch' { _mcmpCustomMetricId = pMcmpCustomMetricId_ , _mcmpWebPropertyId = pMcmpWebPropertyId_ , _mcmpIgnoreCustomDataSourceLinks = False , _mcmpPayload = pMcmpPayload_ , _mcmpAccountId = pMcmpAccountId_ }+ -- | Custom metric ID for the custom metric to update. mcmpCustomMetricId :: Lens' ManagementCustomMetricsPatch Text
gen/Network/Google/Resource/Analytics/Management/CustomMetrics/Update.hs view
@@ -63,14 +63,17 @@ -- | Updates an existing custom metric. -- -- /See:/ 'managementCustomMetricsUpdate' smart constructor.-data ManagementCustomMetricsUpdate = ManagementCustomMetricsUpdate'+data ManagementCustomMetricsUpdate =+ ManagementCustomMetricsUpdate' { _mcmuCustomMetricId :: !Text , _mcmuWebPropertyId :: !Text , _mcmuIgnoreCustomDataSourceLinks :: !Bool , _mcmuPayload :: !CustomMetric , _mcmuAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementCustomMetricsUpdate' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -91,13 +94,14 @@ -> Text -- ^ 'mcmuAccountId' -> ManagementCustomMetricsUpdate managementCustomMetricsUpdate pMcmuCustomMetricId_ pMcmuWebPropertyId_ pMcmuPayload_ pMcmuAccountId_ =- ManagementCustomMetricsUpdate'+ ManagementCustomMetricsUpdate' { _mcmuCustomMetricId = pMcmuCustomMetricId_ , _mcmuWebPropertyId = pMcmuWebPropertyId_ , _mcmuIgnoreCustomDataSourceLinks = False , _mcmuPayload = pMcmuPayload_ , _mcmuAccountId = pMcmuAccountId_ }+ -- | Custom metric ID for the custom metric to update. mcmuCustomMetricId :: Lens' ManagementCustomMetricsUpdate Text
gen/Network/Google/Resource/Analytics/Management/Experiments/Delete.hs view
@@ -61,13 +61,16 @@ -- | Delete an experiment. -- -- /See:/ 'managementExperimentsDelete' smart constructor.-data ManagementExperimentsDelete = ManagementExperimentsDelete'+data ManagementExperimentsDelete =+ ManagementExperimentsDelete' { _medWebPropertyId :: !Text , _medProFileId :: !Text , _medAccountId :: !Text , _medExperimentId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementExperimentsDelete' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -86,12 +89,13 @@ -> Text -- ^ 'medExperimentId' -> ManagementExperimentsDelete managementExperimentsDelete pMedWebPropertyId_ pMedProFileId_ pMedAccountId_ pMedExperimentId_ =- ManagementExperimentsDelete'+ ManagementExperimentsDelete' { _medWebPropertyId = pMedWebPropertyId_ , _medProFileId = pMedProFileId_ , _medAccountId = pMedAccountId_ , _medExperimentId = pMedExperimentId_ }+ -- | Web property ID to which the experiment belongs medWebPropertyId :: Lens' ManagementExperimentsDelete Text
gen/Network/Google/Resource/Analytics/Management/Experiments/Get.hs view
@@ -61,13 +61,16 @@ -- | Returns an experiment to which the user has access. -- -- /See:/ 'managementExperimentsGet' smart constructor.-data ManagementExperimentsGet = ManagementExperimentsGet'+data ManagementExperimentsGet =+ ManagementExperimentsGet' { _megWebPropertyId :: !Text , _megProFileId :: !Text , _megAccountId :: !Text , _megExperimentId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementExperimentsGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -86,12 +89,13 @@ -> Text -- ^ 'megExperimentId' -> ManagementExperimentsGet managementExperimentsGet pMegWebPropertyId_ pMegProFileId_ pMegAccountId_ pMegExperimentId_ =- ManagementExperimentsGet'+ ManagementExperimentsGet' { _megWebPropertyId = pMegWebPropertyId_ , _megProFileId = pMegProFileId_ , _megAccountId = pMegAccountId_ , _megExperimentId = pMegExperimentId_ }+ -- | Web property ID to retrieve the experiment for. megWebPropertyId :: Lens' ManagementExperimentsGet Text
gen/Network/Google/Resource/Analytics/Management/Experiments/Insert.hs view
@@ -61,13 +61,16 @@ -- | Create a new experiment. -- -- /See:/ 'managementExperimentsInsert' smart constructor.-data ManagementExperimentsInsert = ManagementExperimentsInsert'+data ManagementExperimentsInsert =+ ManagementExperimentsInsert' { _meiWebPropertyId :: !Text , _meiProFileId :: !Text , _meiPayload :: !Experiment , _meiAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementExperimentsInsert' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -86,12 +89,13 @@ -> Text -- ^ 'meiAccountId' -> ManagementExperimentsInsert managementExperimentsInsert pMeiWebPropertyId_ pMeiProFileId_ pMeiPayload_ pMeiAccountId_ =- ManagementExperimentsInsert'+ ManagementExperimentsInsert' { _meiWebPropertyId = pMeiWebPropertyId_ , _meiProFileId = pMeiProFileId_ , _meiPayload = pMeiPayload_ , _meiAccountId = pMeiAccountId_ }+ -- | Web property ID to create the experiment for. meiWebPropertyId :: Lens' ManagementExperimentsInsert Text
gen/Network/Google/Resource/Analytics/Management/Experiments/List.hs view
@@ -63,14 +63,17 @@ -- | Lists experiments to which the user has access. -- -- /See:/ 'managementExperimentsList' smart constructor.-data ManagementExperimentsList = ManagementExperimentsList'+data ManagementExperimentsList =+ ManagementExperimentsList' { _melWebPropertyId :: !Text , _melProFileId :: !Text , _melAccountId :: !Text , _melStartIndex :: !(Maybe (Textual Int32)) , _melMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementExperimentsList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -90,13 +93,14 @@ -> Text -- ^ 'melAccountId' -> ManagementExperimentsList managementExperimentsList pMelWebPropertyId_ pMelProFileId_ pMelAccountId_ =- ManagementExperimentsList'+ ManagementExperimentsList' { _melWebPropertyId = pMelWebPropertyId_ , _melProFileId = pMelProFileId_ , _melAccountId = pMelAccountId_ , _melStartIndex = Nothing , _melMaxResults = Nothing }+ -- | Web property ID to retrieve experiments for. melWebPropertyId :: Lens' ManagementExperimentsList Text
gen/Network/Google/Resource/Analytics/Management/Experiments/Patch.hs view
@@ -64,14 +64,17 @@ -- | Update an existing experiment. This method supports patch semantics. -- -- /See:/ 'managementExperimentsPatch' smart constructor.-data ManagementExperimentsPatch = ManagementExperimentsPatch'+data ManagementExperimentsPatch =+ ManagementExperimentsPatch' { _mepWebPropertyId :: !Text , _mepProFileId :: !Text , _mepPayload :: !Experiment , _mepAccountId :: !Text , _mepExperimentId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementExperimentsPatch' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -93,13 +96,14 @@ -> Text -- ^ 'mepExperimentId' -> ManagementExperimentsPatch managementExperimentsPatch pMepWebPropertyId_ pMepProFileId_ pMepPayload_ pMepAccountId_ pMepExperimentId_ =- ManagementExperimentsPatch'+ ManagementExperimentsPatch' { _mepWebPropertyId = pMepWebPropertyId_ , _mepProFileId = pMepProFileId_ , _mepPayload = pMepPayload_ , _mepAccountId = pMepAccountId_ , _mepExperimentId = pMepExperimentId_ }+ -- | Web property ID of the experiment to update. mepWebPropertyId :: Lens' ManagementExperimentsPatch Text
gen/Network/Google/Resource/Analytics/Management/Experiments/Update.hs view
@@ -64,14 +64,17 @@ -- | Update an existing experiment. -- -- /See:/ 'managementExperimentsUpdate' smart constructor.-data ManagementExperimentsUpdate = ManagementExperimentsUpdate'+data ManagementExperimentsUpdate =+ ManagementExperimentsUpdate' { _meuWebPropertyId :: !Text , _meuProFileId :: !Text , _meuPayload :: !Experiment , _meuAccountId :: !Text , _meuExperimentId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementExperimentsUpdate' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -93,13 +96,14 @@ -> Text -- ^ 'meuExperimentId' -> ManagementExperimentsUpdate managementExperimentsUpdate pMeuWebPropertyId_ pMeuProFileId_ pMeuPayload_ pMeuAccountId_ pMeuExperimentId_ =- ManagementExperimentsUpdate'+ ManagementExperimentsUpdate' { _meuWebPropertyId = pMeuWebPropertyId_ , _meuProFileId = pMeuProFileId_ , _meuPayload = pMeuPayload_ , _meuAccountId = pMeuAccountId_ , _meuExperimentId = pMeuExperimentId_ }+ -- | Web property ID of the experiment to update. meuWebPropertyId :: Lens' ManagementExperimentsUpdate Text
gen/Network/Google/Resource/Analytics/Management/Filters/Delete.hs view
@@ -55,11 +55,14 @@ -- | Delete a filter. -- -- /See:/ 'managementFiltersDelete' smart constructor.-data ManagementFiltersDelete = ManagementFiltersDelete'+data ManagementFiltersDelete =+ ManagementFiltersDelete' { _mfdFilterId :: !Text , _mfdAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementFiltersDelete' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -72,10 +75,9 @@ -> Text -- ^ 'mfdAccountId' -> ManagementFiltersDelete managementFiltersDelete pMfdFilterId_ pMfdAccountId_ =- ManagementFiltersDelete'- { _mfdFilterId = pMfdFilterId_- , _mfdAccountId = pMfdAccountId_- }+ ManagementFiltersDelete'+ {_mfdFilterId = pMfdFilterId_, _mfdAccountId = pMfdAccountId_}+ -- | ID of the filter to be deleted. mfdFilterId :: Lens' ManagementFiltersDelete Text
gen/Network/Google/Resource/Analytics/Management/Filters/Get.hs view
@@ -55,11 +55,14 @@ -- | Returns a filters to which the user has access. -- -- /See:/ 'managementFiltersGet' smart constructor.-data ManagementFiltersGet = ManagementFiltersGet'+data ManagementFiltersGet =+ ManagementFiltersGet' { _mfgFilterId :: !Text , _mfgAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementFiltersGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -72,10 +75,9 @@ -> Text -- ^ 'mfgAccountId' -> ManagementFiltersGet managementFiltersGet pMfgFilterId_ pMfgAccountId_ =- ManagementFiltersGet'- { _mfgFilterId = pMfgFilterId_- , _mfgAccountId = pMfgAccountId_- }+ ManagementFiltersGet'+ {_mfgFilterId = pMfgFilterId_, _mfgAccountId = pMfgAccountId_}+ -- | Filter ID to retrieve filters for. mfgFilterId :: Lens' ManagementFiltersGet Text
gen/Network/Google/Resource/Analytics/Management/Filters/Insert.hs view
@@ -55,11 +55,14 @@ -- | Create a new filter. -- -- /See:/ 'managementFiltersInsert' smart constructor.-data ManagementFiltersInsert = ManagementFiltersInsert'+data ManagementFiltersInsert =+ ManagementFiltersInsert' { _mfiPayload :: !Filter , _mfiAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementFiltersInsert' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -72,10 +75,9 @@ -> Text -- ^ 'mfiAccountId' -> ManagementFiltersInsert managementFiltersInsert pMfiPayload_ pMfiAccountId_ =- ManagementFiltersInsert'- { _mfiPayload = pMfiPayload_- , _mfiAccountId = pMfiAccountId_- }+ ManagementFiltersInsert'+ {_mfiPayload = pMfiPayload_, _mfiAccountId = pMfiAccountId_}+ -- | Multipart request metadata. mfiPayload :: Lens' ManagementFiltersInsert Filter
gen/Network/Google/Resource/Analytics/Management/Filters/List.hs view
@@ -57,12 +57,15 @@ -- | Lists all filters for an account -- -- /See:/ 'managementFiltersList' smart constructor.-data ManagementFiltersList = ManagementFiltersList'+data ManagementFiltersList =+ ManagementFiltersList' { _mflAccountId :: !Text , _mflStartIndex :: !(Maybe (Textual Int32)) , _mflMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementFiltersList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -76,11 +79,12 @@ :: Text -- ^ 'mflAccountId' -> ManagementFiltersList managementFiltersList pMflAccountId_ =- ManagementFiltersList'+ ManagementFiltersList' { _mflAccountId = pMflAccountId_ , _mflStartIndex = Nothing , _mflMaxResults = Nothing }+ -- | Account ID to retrieve filters for. mflAccountId :: Lens' ManagementFiltersList Text
gen/Network/Google/Resource/Analytics/Management/Filters/Patch.hs view
@@ -57,12 +57,15 @@ -- | Updates an existing filter. This method supports patch semantics. -- -- /See:/ 'managementFiltersPatch' smart constructor.-data ManagementFiltersPatch = ManagementFiltersPatch'+data ManagementFiltersPatch =+ ManagementFiltersPatch' { _mfpFilterId :: !Text , _mfpPayload :: !Filter , _mfpAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementFiltersPatch' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -78,11 +81,12 @@ -> Text -- ^ 'mfpAccountId' -> ManagementFiltersPatch managementFiltersPatch pMfpFilterId_ pMfpPayload_ pMfpAccountId_ =- ManagementFiltersPatch'+ ManagementFiltersPatch' { _mfpFilterId = pMfpFilterId_ , _mfpPayload = pMfpPayload_ , _mfpAccountId = pMfpAccountId_ }+ -- | ID of the filter to be updated. mfpFilterId :: Lens' ManagementFiltersPatch Text
gen/Network/Google/Resource/Analytics/Management/Filters/Update.hs view
@@ -57,12 +57,15 @@ -- | Updates an existing filter. -- -- /See:/ 'managementFiltersUpdate' smart constructor.-data ManagementFiltersUpdate = ManagementFiltersUpdate'+data ManagementFiltersUpdate =+ ManagementFiltersUpdate' { _mfuFilterId :: !Text , _mfuPayload :: !Filter , _mfuAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementFiltersUpdate' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -78,11 +81,12 @@ -> Text -- ^ 'mfuAccountId' -> ManagementFiltersUpdate managementFiltersUpdate pMfuFilterId_ pMfuPayload_ pMfuAccountId_ =- ManagementFiltersUpdate'+ ManagementFiltersUpdate' { _mfuFilterId = pMfuFilterId_ , _mfuPayload = pMfuPayload_ , _mfuAccountId = pMfuAccountId_ }+ -- | ID of the filter to be updated. mfuFilterId :: Lens' ManagementFiltersUpdate Text
gen/Network/Google/Resource/Analytics/Management/Goals/Get.hs view
@@ -61,13 +61,16 @@ -- | Gets a goal to which the user has access. -- -- /See:/ 'managementGoalsGet' smart constructor.-data ManagementGoalsGet = ManagementGoalsGet'+data ManagementGoalsGet =+ ManagementGoalsGet' { _mggWebPropertyId :: !Text , _mggGoalId :: !Text , _mggProFileId :: !Text , _mggAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementGoalsGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -86,12 +89,13 @@ -> Text -- ^ 'mggAccountId' -> ManagementGoalsGet managementGoalsGet pMggWebPropertyId_ pMggGoalId_ pMggProFileId_ pMggAccountId_ =- ManagementGoalsGet'+ ManagementGoalsGet' { _mggWebPropertyId = pMggWebPropertyId_ , _mggGoalId = pMggGoalId_ , _mggProFileId = pMggProFileId_ , _mggAccountId = pMggAccountId_ }+ -- | Web property ID to retrieve the goal for. mggWebPropertyId :: Lens' ManagementGoalsGet Text
gen/Network/Google/Resource/Analytics/Management/Goals/Insert.hs view
@@ -61,13 +61,16 @@ -- | Create a new goal. -- -- /See:/ 'managementGoalsInsert' smart constructor.-data ManagementGoalsInsert = ManagementGoalsInsert'+data ManagementGoalsInsert =+ ManagementGoalsInsert' { _mgiWebPropertyId :: !Text , _mgiProFileId :: !Text , _mgiPayload :: !Goal , _mgiAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementGoalsInsert' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -86,12 +89,13 @@ -> Text -- ^ 'mgiAccountId' -> ManagementGoalsInsert managementGoalsInsert pMgiWebPropertyId_ pMgiProFileId_ pMgiPayload_ pMgiAccountId_ =- ManagementGoalsInsert'+ ManagementGoalsInsert' { _mgiWebPropertyId = pMgiWebPropertyId_ , _mgiProFileId = pMgiProFileId_ , _mgiPayload = pMgiPayload_ , _mgiAccountId = pMgiAccountId_ }+ -- | Web property ID to create the goal for. mgiWebPropertyId :: Lens' ManagementGoalsInsert Text
gen/Network/Google/Resource/Analytics/Management/Goals/List.hs view
@@ -63,14 +63,17 @@ -- | Lists goals to which the user has access. -- -- /See:/ 'managementGoalsList' smart constructor.-data ManagementGoalsList = ManagementGoalsList'+data ManagementGoalsList =+ ManagementGoalsList' { _mglWebPropertyId :: !Text , _mglProFileId :: !Text , _mglAccountId :: !Text , _mglStartIndex :: !(Maybe (Textual Int32)) , _mglMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementGoalsList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -90,13 +93,14 @@ -> Text -- ^ 'mglAccountId' -> ManagementGoalsList managementGoalsList pMglWebPropertyId_ pMglProFileId_ pMglAccountId_ =- ManagementGoalsList'+ ManagementGoalsList' { _mglWebPropertyId = pMglWebPropertyId_ , _mglProFileId = pMglProFileId_ , _mglAccountId = pMglAccountId_ , _mglStartIndex = Nothing , _mglMaxResults = Nothing }+ -- | Web property ID to retrieve goals for. Can either be a specific web -- property ID or \'~all\', which refers to all the web properties that
gen/Network/Google/Resource/Analytics/Management/Goals/Patch.hs view
@@ -63,14 +63,17 @@ -- | Updates an existing goal. This method supports patch semantics. -- -- /See:/ 'managementGoalsPatch' smart constructor.-data ManagementGoalsPatch = ManagementGoalsPatch'+data ManagementGoalsPatch =+ ManagementGoalsPatch' { _mgpWebPropertyId :: !Text , _mgpGoalId :: !Text , _mgpProFileId :: !Text , _mgpPayload :: !Goal , _mgpAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementGoalsPatch' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -92,13 +95,14 @@ -> Text -- ^ 'mgpAccountId' -> ManagementGoalsPatch managementGoalsPatch pMgpWebPropertyId_ pMgpGoalId_ pMgpProFileId_ pMgpPayload_ pMgpAccountId_ =- ManagementGoalsPatch'+ ManagementGoalsPatch' { _mgpWebPropertyId = pMgpWebPropertyId_ , _mgpGoalId = pMgpGoalId_ , _mgpProFileId = pMgpProFileId_ , _mgpPayload = pMgpPayload_ , _mgpAccountId = pMgpAccountId_ }+ -- | Web property ID to update the goal. mgpWebPropertyId :: Lens' ManagementGoalsPatch Text
gen/Network/Google/Resource/Analytics/Management/Goals/Update.hs view
@@ -63,14 +63,17 @@ -- | Updates an existing goal. -- -- /See:/ 'managementGoalsUpdate' smart constructor.-data ManagementGoalsUpdate = ManagementGoalsUpdate'+data ManagementGoalsUpdate =+ ManagementGoalsUpdate' { _mguWebPropertyId :: !Text , _mguGoalId :: !Text , _mguProFileId :: !Text , _mguPayload :: !Goal , _mguAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementGoalsUpdate' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -92,13 +95,14 @@ -> Text -- ^ 'mguAccountId' -> ManagementGoalsUpdate managementGoalsUpdate pMguWebPropertyId_ pMguGoalId_ pMguProFileId_ pMguPayload_ pMguAccountId_ =- ManagementGoalsUpdate'+ ManagementGoalsUpdate' { _mguWebPropertyId = pMguWebPropertyId_ , _mguGoalId = pMguGoalId_ , _mguProFileId = pMguProFileId_ , _mguPayload = pMguPayload_ , _mguAccountId = pMguAccountId_ }+ -- | Web property ID to update the goal. mguWebPropertyId :: Lens' ManagementGoalsUpdate Text
gen/Network/Google/Resource/Analytics/Management/ProFileFilterLinks/Delete.hs view
@@ -61,13 +61,16 @@ -- | Delete a profile filter link. -- -- /See:/ 'managementProFileFilterLinksDelete' smart constructor.-data ManagementProFileFilterLinksDelete = ManagementProFileFilterLinksDelete'+data ManagementProFileFilterLinksDelete =+ ManagementProFileFilterLinksDelete' { _mpffldWebPropertyId :: !Text , _mpffldProFileId :: !Text , _mpffldAccountId :: !Text , _mpffldLinkId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementProFileFilterLinksDelete' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -86,13 +89,14 @@ -> Text -- ^ 'mpffldLinkId' -> ManagementProFileFilterLinksDelete managementProFileFilterLinksDelete pMpffldWebPropertyId_ pMpffldProFileId_ pMpffldAccountId_ pMpffldLinkId_ =- ManagementProFileFilterLinksDelete'+ ManagementProFileFilterLinksDelete' { _mpffldWebPropertyId = pMpffldWebPropertyId_ , _mpffldProFileId = pMpffldProFileId_ , _mpffldAccountId = pMpffldAccountId_ , _mpffldLinkId = pMpffldLinkId_ } + -- | Web property Id to which the profile filter link belongs. mpffldWebPropertyId :: Lens' ManagementProFileFilterLinksDelete Text mpffldWebPropertyId@@ -117,7 +121,8 @@ = lens _mpffldLinkId (\ s a -> s{_mpffldLinkId = a}) instance GoogleRequest- ManagementProFileFilterLinksDelete where+ ManagementProFileFilterLinksDelete+ where type Rs ManagementProFileFilterLinksDelete = () type Scopes ManagementProFileFilterLinksDelete = '["https://www.googleapis.com/auth/analytics.edit"]
gen/Network/Google/Resource/Analytics/Management/ProFileFilterLinks/Get.hs view
@@ -62,13 +62,16 @@ -- | Returns a single profile filter link. -- -- /See:/ 'managementProFileFilterLinksGet' smart constructor.-data ManagementProFileFilterLinksGet = ManagementProFileFilterLinksGet'+data ManagementProFileFilterLinksGet =+ ManagementProFileFilterLinksGet' { _mpfflgWebPropertyId :: !Text , _mpfflgProFileId :: !Text , _mpfflgAccountId :: !Text , _mpfflgLinkId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementProFileFilterLinksGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -87,13 +90,14 @@ -> Text -- ^ 'mpfflgLinkId' -> ManagementProFileFilterLinksGet managementProFileFilterLinksGet pMpfflgWebPropertyId_ pMpfflgProFileId_ pMpfflgAccountId_ pMpfflgLinkId_ =- ManagementProFileFilterLinksGet'+ ManagementProFileFilterLinksGet' { _mpfflgWebPropertyId = pMpfflgWebPropertyId_ , _mpfflgProFileId = pMpfflgProFileId_ , _mpfflgAccountId = pMpfflgAccountId_ , _mpfflgLinkId = pMpfflgLinkId_ } + -- | Web property Id to retrieve profile filter link for. mpfflgWebPropertyId :: Lens' ManagementProFileFilterLinksGet Text mpfflgWebPropertyId@@ -118,7 +122,8 @@ = lens _mpfflgLinkId (\ s a -> s{_mpfflgLinkId = a}) instance GoogleRequest- ManagementProFileFilterLinksGet where+ ManagementProFileFilterLinksGet+ where type Rs ManagementProFileFilterLinksGet = ProFileFilterLink type Scopes ManagementProFileFilterLinksGet =
gen/Network/Google/Resource/Analytics/Management/ProFileFilterLinks/Insert.hs view
@@ -62,13 +62,16 @@ -- | Create a new profile filter link. -- -- /See:/ 'managementProFileFilterLinksInsert' smart constructor.-data ManagementProFileFilterLinksInsert = ManagementProFileFilterLinksInsert'+data ManagementProFileFilterLinksInsert =+ ManagementProFileFilterLinksInsert' { _mpffliWebPropertyId :: !Text , _mpffliProFileId :: !Text , _mpffliPayload :: !ProFileFilterLink , _mpffliAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementProFileFilterLinksInsert' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -87,13 +90,14 @@ -> Text -- ^ 'mpffliAccountId' -> ManagementProFileFilterLinksInsert managementProFileFilterLinksInsert pMpffliWebPropertyId_ pMpffliProFileId_ pMpffliPayload_ pMpffliAccountId_ =- ManagementProFileFilterLinksInsert'+ ManagementProFileFilterLinksInsert' { _mpffliWebPropertyId = pMpffliWebPropertyId_ , _mpffliProFileId = pMpffliProFileId_ , _mpffliPayload = pMpffliPayload_ , _mpffliAccountId = pMpffliAccountId_ } + -- | Web property Id to create profile filter link for. mpffliWebPropertyId :: Lens' ManagementProFileFilterLinksInsert Text mpffliWebPropertyId@@ -119,7 +123,8 @@ (\ s a -> s{_mpffliAccountId = a}) instance GoogleRequest- ManagementProFileFilterLinksInsert where+ ManagementProFileFilterLinksInsert+ where type Rs ManagementProFileFilterLinksInsert = ProFileFilterLink type Scopes ManagementProFileFilterLinksInsert =
gen/Network/Google/Resource/Analytics/Management/ProFileFilterLinks/List.hs view
@@ -64,14 +64,17 @@ -- | Lists all profile filter links for a profile. -- -- /See:/ 'managementProFileFilterLinksList' smart constructor.-data ManagementProFileFilterLinksList = ManagementProFileFilterLinksList'+data ManagementProFileFilterLinksList =+ ManagementProFileFilterLinksList' { _mpffllWebPropertyId :: !Text , _mpffllProFileId :: !Text , _mpffllAccountId :: !Text , _mpffllStartIndex :: !(Maybe (Textual Int32)) , _mpffllMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementProFileFilterLinksList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -91,7 +94,7 @@ -> Text -- ^ 'mpffllAccountId' -> ManagementProFileFilterLinksList managementProFileFilterLinksList pMpffllWebPropertyId_ pMpffllProFileId_ pMpffllAccountId_ =- ManagementProFileFilterLinksList'+ ManagementProFileFilterLinksList' { _mpffllWebPropertyId = pMpffllWebPropertyId_ , _mpffllProFileId = pMpffllProFileId_ , _mpffllAccountId = pMpffllAccountId_@@ -99,6 +102,7 @@ , _mpffllMaxResults = Nothing } + -- | Web property Id for profile filter links for. Can either be a specific -- web property ID or \'~all\', which refers to all the web properties that -- user has access to.@@ -137,7 +141,8 @@ . mapping _Coerce instance GoogleRequest- ManagementProFileFilterLinksList where+ ManagementProFileFilterLinksList+ where type Rs ManagementProFileFilterLinksList = ProFileFilterLinks type Scopes ManagementProFileFilterLinksList =
gen/Network/Google/Resource/Analytics/Management/ProFileFilterLinks/Patch.hs view
@@ -66,14 +66,17 @@ -- semantics. -- -- /See:/ 'managementProFileFilterLinksPatch' smart constructor.-data ManagementProFileFilterLinksPatch = ManagementProFileFilterLinksPatch'+data ManagementProFileFilterLinksPatch =+ ManagementProFileFilterLinksPatch' { _mpfflpWebPropertyId :: !Text , _mpfflpProFileId :: !Text , _mpfflpPayload :: !ProFileFilterLink , _mpfflpAccountId :: !Text , _mpfflpLinkId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementProFileFilterLinksPatch' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -95,7 +98,7 @@ -> Text -- ^ 'mpfflpLinkId' -> ManagementProFileFilterLinksPatch managementProFileFilterLinksPatch pMpfflpWebPropertyId_ pMpfflpProFileId_ pMpfflpPayload_ pMpfflpAccountId_ pMpfflpLinkId_ =- ManagementProFileFilterLinksPatch'+ ManagementProFileFilterLinksPatch' { _mpfflpWebPropertyId = pMpfflpWebPropertyId_ , _mpfflpProFileId = pMpfflpProFileId_ , _mpfflpPayload = pMpfflpPayload_@@ -103,6 +106,7 @@ , _mpfflpLinkId = pMpfflpLinkId_ } + -- | Web property Id to which profile filter link belongs mpfflpWebPropertyId :: Lens' ManagementProFileFilterLinksPatch Text mpfflpWebPropertyId@@ -133,7 +137,8 @@ = lens _mpfflpLinkId (\ s a -> s{_mpfflpLinkId = a}) instance GoogleRequest- ManagementProFileFilterLinksPatch where+ ManagementProFileFilterLinksPatch+ where type Rs ManagementProFileFilterLinksPatch = ProFileFilterLink type Scopes ManagementProFileFilterLinksPatch =
gen/Network/Google/Resource/Analytics/Management/ProFileFilterLinks/Update.hs view
@@ -64,14 +64,17 @@ -- | Update an existing profile filter link. -- -- /See:/ 'managementProFileFilterLinksUpdate' smart constructor.-data ManagementProFileFilterLinksUpdate = ManagementProFileFilterLinksUpdate'+data ManagementProFileFilterLinksUpdate =+ ManagementProFileFilterLinksUpdate' { _mpffluWebPropertyId :: !Text , _mpffluProFileId :: !Text , _mpffluPayload :: !ProFileFilterLink , _mpffluAccountId :: !Text , _mpffluLinkId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementProFileFilterLinksUpdate' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -93,7 +96,7 @@ -> Text -- ^ 'mpffluLinkId' -> ManagementProFileFilterLinksUpdate managementProFileFilterLinksUpdate pMpffluWebPropertyId_ pMpffluProFileId_ pMpffluPayload_ pMpffluAccountId_ pMpffluLinkId_ =- ManagementProFileFilterLinksUpdate'+ ManagementProFileFilterLinksUpdate' { _mpffluWebPropertyId = pMpffluWebPropertyId_ , _mpffluProFileId = pMpffluProFileId_ , _mpffluPayload = pMpffluPayload_@@ -101,6 +104,7 @@ , _mpffluLinkId = pMpffluLinkId_ } + -- | Web property Id to which profile filter link belongs mpffluWebPropertyId :: Lens' ManagementProFileFilterLinksUpdate Text mpffluWebPropertyId@@ -131,7 +135,8 @@ = lens _mpffluLinkId (\ s a -> s{_mpffluLinkId = a}) instance GoogleRequest- ManagementProFileFilterLinksUpdate where+ ManagementProFileFilterLinksUpdate+ where type Rs ManagementProFileFilterLinksUpdate = ProFileFilterLink type Scopes ManagementProFileFilterLinksUpdate =
gen/Network/Google/Resource/Analytics/Management/ProFileUserLinks/Delete.hs view
@@ -61,13 +61,16 @@ -- | Removes a user from the given view (profile). -- -- /See:/ 'managementProFileUserLinksDelete' smart constructor.-data ManagementProFileUserLinksDelete = ManagementProFileUserLinksDelete'+data ManagementProFileUserLinksDelete =+ ManagementProFileUserLinksDelete' { _mpfuldWebPropertyId :: !Text , _mpfuldProFileId :: !Text , _mpfuldAccountId :: !Text , _mpfuldLinkId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementProFileUserLinksDelete' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -86,13 +89,14 @@ -> Text -- ^ 'mpfuldLinkId' -> ManagementProFileUserLinksDelete managementProFileUserLinksDelete pMpfuldWebPropertyId_ pMpfuldProFileId_ pMpfuldAccountId_ pMpfuldLinkId_ =- ManagementProFileUserLinksDelete'+ ManagementProFileUserLinksDelete' { _mpfuldWebPropertyId = pMpfuldWebPropertyId_ , _mpfuldProFileId = pMpfuldProFileId_ , _mpfuldAccountId = pMpfuldAccountId_ , _mpfuldLinkId = pMpfuldLinkId_ } + -- | Web Property ID to delete the user link for. mpfuldWebPropertyId :: Lens' ManagementProFileUserLinksDelete Text mpfuldWebPropertyId@@ -117,7 +121,8 @@ = lens _mpfuldLinkId (\ s a -> s{_mpfuldLinkId = a}) instance GoogleRequest- ManagementProFileUserLinksDelete where+ ManagementProFileUserLinksDelete+ where type Rs ManagementProFileUserLinksDelete = () type Scopes ManagementProFileUserLinksDelete = '["https://www.googleapis.com/auth/analytics.manage.users"]
gen/Network/Google/Resource/Analytics/Management/ProFileUserLinks/Insert.hs view
@@ -62,13 +62,16 @@ -- | Adds a new user to the given view (profile). -- -- /See:/ 'managementProFileUserLinksInsert' smart constructor.-data ManagementProFileUserLinksInsert = ManagementProFileUserLinksInsert'+data ManagementProFileUserLinksInsert =+ ManagementProFileUserLinksInsert' { _mpfuliWebPropertyId :: !Text , _mpfuliProFileId :: !Text , _mpfuliPayload :: !EntityUserLink , _mpfuliAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementProFileUserLinksInsert' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -87,13 +90,14 @@ -> Text -- ^ 'mpfuliAccountId' -> ManagementProFileUserLinksInsert managementProFileUserLinksInsert pMpfuliWebPropertyId_ pMpfuliProFileId_ pMpfuliPayload_ pMpfuliAccountId_ =- ManagementProFileUserLinksInsert'+ ManagementProFileUserLinksInsert' { _mpfuliWebPropertyId = pMpfuliWebPropertyId_ , _mpfuliProFileId = pMpfuliProFileId_ , _mpfuliPayload = pMpfuliPayload_ , _mpfuliAccountId = pMpfuliAccountId_ } + -- | Web Property ID to create the user link for. mpfuliWebPropertyId :: Lens' ManagementProFileUserLinksInsert Text mpfuliWebPropertyId@@ -119,7 +123,8 @@ (\ s a -> s{_mpfuliAccountId = a}) instance GoogleRequest- ManagementProFileUserLinksInsert where+ ManagementProFileUserLinksInsert+ where type Rs ManagementProFileUserLinksInsert = EntityUserLink type Scopes ManagementProFileUserLinksInsert =
gen/Network/Google/Resource/Analytics/Management/ProFileUserLinks/List.hs view
@@ -64,14 +64,17 @@ -- | Lists profile-user links for a given view (profile). -- -- /See:/ 'managementProFileUserLinksList' smart constructor.-data ManagementProFileUserLinksList = ManagementProFileUserLinksList'+data ManagementProFileUserLinksList =+ ManagementProFileUserLinksList' { _mpfullWebPropertyId :: !Text , _mpfullProFileId :: !Text , _mpfullAccountId :: !Text , _mpfullStartIndex :: !(Maybe (Textual Int32)) , _mpfullMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementProFileUserLinksList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -91,13 +94,14 @@ -> Text -- ^ 'mpfullAccountId' -> ManagementProFileUserLinksList managementProFileUserLinksList pMpfullWebPropertyId_ pMpfullProFileId_ pMpfullAccountId_ =- ManagementProFileUserLinksList'+ ManagementProFileUserLinksList' { _mpfullWebPropertyId = pMpfullWebPropertyId_ , _mpfullProFileId = pMpfullProFileId_ , _mpfullAccountId = pMpfullAccountId_ , _mpfullStartIndex = Nothing , _mpfullMaxResults = Nothing }+ -- | Web Property ID which the given view (profile) belongs to. Can either be -- a specific web property ID or \'~all\', which refers to all the web
gen/Network/Google/Resource/Analytics/Management/ProFileUserLinks/Update.hs view
@@ -64,14 +64,17 @@ -- | Updates permissions for an existing user on the given view (profile). -- -- /See:/ 'managementProFileUserLinksUpdate' smart constructor.-data ManagementProFileUserLinksUpdate = ManagementProFileUserLinksUpdate'+data ManagementProFileUserLinksUpdate =+ ManagementProFileUserLinksUpdate' { _mpfuluWebPropertyId :: !Text , _mpfuluProFileId :: !Text , _mpfuluPayload :: !EntityUserLink , _mpfuluAccountId :: !Text , _mpfuluLinkId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementProFileUserLinksUpdate' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -93,7 +96,7 @@ -> Text -- ^ 'mpfuluLinkId' -> ManagementProFileUserLinksUpdate managementProFileUserLinksUpdate pMpfuluWebPropertyId_ pMpfuluProFileId_ pMpfuluPayload_ pMpfuluAccountId_ pMpfuluLinkId_ =- ManagementProFileUserLinksUpdate'+ ManagementProFileUserLinksUpdate' { _mpfuluWebPropertyId = pMpfuluWebPropertyId_ , _mpfuluProFileId = pMpfuluProFileId_ , _mpfuluPayload = pMpfuluPayload_@@ -101,6 +104,7 @@ , _mpfuluLinkId = pMpfuluLinkId_ } + -- | Web Property ID to update the user link for. mpfuluWebPropertyId :: Lens' ManagementProFileUserLinksUpdate Text mpfuluWebPropertyId@@ -131,7 +135,8 @@ = lens _mpfuluLinkId (\ s a -> s{_mpfuluLinkId = a}) instance GoogleRequest- ManagementProFileUserLinksUpdate where+ ManagementProFileUserLinksUpdate+ where type Rs ManagementProFileUserLinksUpdate = EntityUserLink type Scopes ManagementProFileUserLinksUpdate =
gen/Network/Google/Resource/Analytics/Management/ProFiles/Delete.hs view
@@ -58,12 +58,15 @@ -- | Deletes a view (profile). -- -- /See:/ 'managementProFilesDelete' smart constructor.-data ManagementProFilesDelete = ManagementProFilesDelete'+data ManagementProFilesDelete =+ ManagementProFilesDelete' { _mpfdWebPropertyId :: !Text , _mpfdProFileId :: !Text , _mpfdAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementProFilesDelete' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -79,11 +82,12 @@ -> Text -- ^ 'mpfdAccountId' -> ManagementProFilesDelete managementProFilesDelete pMpfdWebPropertyId_ pMpfdProFileId_ pMpfdAccountId_ =- ManagementProFilesDelete'+ ManagementProFilesDelete' { _mpfdWebPropertyId = pMpfdWebPropertyId_ , _mpfdProFileId = pMpfdProFileId_ , _mpfdAccountId = pMpfdAccountId_ }+ -- | Web property ID to delete the view (profile) for. mpfdWebPropertyId :: Lens' ManagementProFilesDelete Text
gen/Network/Google/Resource/Analytics/Management/ProFiles/Get.hs view
@@ -58,12 +58,15 @@ -- | Gets a view (profile) to which the user has access. -- -- /See:/ 'managementProFilesGet' smart constructor.-data ManagementProFilesGet = ManagementProFilesGet'+data ManagementProFilesGet =+ ManagementProFilesGet' { _mpfgWebPropertyId :: !Text , _mpfgProFileId :: !Text , _mpfgAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementProFilesGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -79,11 +82,12 @@ -> Text -- ^ 'mpfgAccountId' -> ManagementProFilesGet managementProFilesGet pMpfgWebPropertyId_ pMpfgProFileId_ pMpfgAccountId_ =- ManagementProFilesGet'+ ManagementProFilesGet' { _mpfgWebPropertyId = pMpfgWebPropertyId_ , _mpfgProFileId = pMpfgProFileId_ , _mpfgAccountId = pMpfgAccountId_ }+ -- | Web property ID to retrieve the view (profile) for. mpfgWebPropertyId :: Lens' ManagementProFilesGet Text
gen/Network/Google/Resource/Analytics/Management/ProFiles/Insert.hs view
@@ -58,12 +58,15 @@ -- | Create a new view (profile). -- -- /See:/ 'managementProFilesInsert' smart constructor.-data ManagementProFilesInsert = ManagementProFilesInsert'+data ManagementProFilesInsert =+ ManagementProFilesInsert' { _mpfiWebPropertyId :: !Text , _mpfiPayload :: !ProFile , _mpfiAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementProFilesInsert' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -79,11 +82,12 @@ -> Text -- ^ 'mpfiAccountId' -> ManagementProFilesInsert managementProFilesInsert pMpfiWebPropertyId_ pMpfiPayload_ pMpfiAccountId_ =- ManagementProFilesInsert'+ ManagementProFilesInsert' { _mpfiWebPropertyId = pMpfiWebPropertyId_ , _mpfiPayload = pMpfiPayload_ , _mpfiAccountId = pMpfiAccountId_ }+ -- | Web property ID to create the view (profile) for. mpfiWebPropertyId :: Lens' ManagementProFilesInsert Text
gen/Network/Google/Resource/Analytics/Management/ProFiles/List.hs view
@@ -60,13 +60,16 @@ -- | Lists views (profiles) to which the user has access. -- -- /See:/ 'managementProFilesList' smart constructor.-data ManagementProFilesList = ManagementProFilesList'+data ManagementProFilesList =+ ManagementProFilesList' { _mpflWebPropertyId :: !Text , _mpflAccountId :: !Text , _mpflStartIndex :: !(Maybe (Textual Int32)) , _mpflMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementProFilesList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -83,12 +86,13 @@ -> Text -- ^ 'mpflAccountId' -> ManagementProFilesList managementProFilesList pMpflWebPropertyId_ pMpflAccountId_ =- ManagementProFilesList'+ ManagementProFilesList' { _mpflWebPropertyId = pMpflWebPropertyId_ , _mpflAccountId = pMpflAccountId_ , _mpflStartIndex = Nothing , _mpflMaxResults = Nothing }+ -- | Web property ID for the views (profiles) to retrieve. Can either be a -- specific web property ID or \'~all\', which refers to all the web
gen/Network/Google/Resource/Analytics/Management/ProFiles/Patch.hs view
@@ -62,13 +62,16 @@ -- semantics. -- -- /See:/ 'managementProFilesPatch' smart constructor.-data ManagementProFilesPatch = ManagementProFilesPatch'+data ManagementProFilesPatch =+ ManagementProFilesPatch' { _mpfpWebPropertyId :: !Text , _mpfpProFileId :: !Text , _mpfpPayload :: !ProFile , _mpfpAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementProFilesPatch' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -87,12 +90,13 @@ -> Text -- ^ 'mpfpAccountId' -> ManagementProFilesPatch managementProFilesPatch pMpfpWebPropertyId_ pMpfpProFileId_ pMpfpPayload_ pMpfpAccountId_ =- ManagementProFilesPatch'+ ManagementProFilesPatch' { _mpfpWebPropertyId = pMpfpWebPropertyId_ , _mpfpProFileId = pMpfpProFileId_ , _mpfpPayload = pMpfpPayload_ , _mpfpAccountId = pMpfpAccountId_ }+ -- | Web property ID to which the view (profile) belongs mpfpWebPropertyId :: Lens' ManagementProFilesPatch Text
gen/Network/Google/Resource/Analytics/Management/ProFiles/Update.hs view
@@ -60,13 +60,16 @@ -- | Updates an existing view (profile). -- -- /See:/ 'managementProFilesUpdate' smart constructor.-data ManagementProFilesUpdate = ManagementProFilesUpdate'+data ManagementProFilesUpdate =+ ManagementProFilesUpdate' { _mpfuWebPropertyId :: !Text , _mpfuProFileId :: !Text , _mpfuPayload :: !ProFile , _mpfuAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementProFilesUpdate' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -85,12 +88,13 @@ -> Text -- ^ 'mpfuAccountId' -> ManagementProFilesUpdate managementProFilesUpdate pMpfuWebPropertyId_ pMpfuProFileId_ pMpfuPayload_ pMpfuAccountId_ =- ManagementProFilesUpdate'+ ManagementProFilesUpdate' { _mpfuWebPropertyId = pMpfuWebPropertyId_ , _mpfuProFileId = pMpfuProFileId_ , _mpfuPayload = pMpfuPayload_ , _mpfuAccountId = pMpfuAccountId_ }+ -- | Web property ID to which the view (profile) belongs mpfuWebPropertyId :: Lens' ManagementProFilesUpdate Text
gen/Network/Google/Resource/Analytics/Management/RemarketingAudience/Delete.hs view
@@ -58,12 +58,15 @@ -- | Delete a remarketing audience. -- -- /See:/ 'managementRemarketingAudienceDelete' smart constructor.-data ManagementRemarketingAudienceDelete = ManagementRemarketingAudienceDelete'+data ManagementRemarketingAudienceDelete =+ ManagementRemarketingAudienceDelete' { _mradWebPropertyId :: !Text , _mradAccountId :: !Text , _mradRemarketingAudienceId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementRemarketingAudienceDelete' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -79,12 +82,13 @@ -> Text -- ^ 'mradRemarketingAudienceId' -> ManagementRemarketingAudienceDelete managementRemarketingAudienceDelete pMradWebPropertyId_ pMradAccountId_ pMradRemarketingAudienceId_ =- ManagementRemarketingAudienceDelete'+ ManagementRemarketingAudienceDelete' { _mradWebPropertyId = pMradWebPropertyId_ , _mradAccountId = pMradAccountId_ , _mradRemarketingAudienceId = pMradRemarketingAudienceId_ } + -- | Web property ID to which the remarketing audience belongs. mradWebPropertyId :: Lens' ManagementRemarketingAudienceDelete Text mradWebPropertyId@@ -104,7 +108,8 @@ (\ s a -> s{_mradRemarketingAudienceId = a}) instance GoogleRequest- ManagementRemarketingAudienceDelete where+ ManagementRemarketingAudienceDelete+ where type Rs ManagementRemarketingAudienceDelete = () type Scopes ManagementRemarketingAudienceDelete = '["https://www.googleapis.com/auth/analytics.edit"]
gen/Network/Google/Resource/Analytics/Management/RemarketingAudience/Get.hs view
@@ -59,12 +59,15 @@ -- | Gets a remarketing audience to which the user has access. -- -- /See:/ 'managementRemarketingAudienceGet' smart constructor.-data ManagementRemarketingAudienceGet = ManagementRemarketingAudienceGet'+data ManagementRemarketingAudienceGet =+ ManagementRemarketingAudienceGet' { _mragWebPropertyId :: !Text , _mragAccountId :: !Text , _mragRemarketingAudienceId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementRemarketingAudienceGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -80,12 +83,13 @@ -> Text -- ^ 'mragRemarketingAudienceId' -> ManagementRemarketingAudienceGet managementRemarketingAudienceGet pMragWebPropertyId_ pMragAccountId_ pMragRemarketingAudienceId_ =- ManagementRemarketingAudienceGet'+ ManagementRemarketingAudienceGet' { _mragWebPropertyId = pMragWebPropertyId_ , _mragAccountId = pMragAccountId_ , _mragRemarketingAudienceId = pMragRemarketingAudienceId_ } + -- | The web property ID of the remarketing audience to retrieve. mragWebPropertyId :: Lens' ManagementRemarketingAudienceGet Text mragWebPropertyId@@ -105,7 +109,8 @@ (\ s a -> s{_mragRemarketingAudienceId = a}) instance GoogleRequest- ManagementRemarketingAudienceGet where+ ManagementRemarketingAudienceGet+ where type Rs ManagementRemarketingAudienceGet = RemarketingAudience type Scopes ManagementRemarketingAudienceGet =
gen/Network/Google/Resource/Analytics/Management/RemarketingAudience/Insert.hs view
@@ -59,12 +59,15 @@ -- | Creates a new remarketing audience. -- -- /See:/ 'managementRemarketingAudienceInsert' smart constructor.-data ManagementRemarketingAudienceInsert = ManagementRemarketingAudienceInsert'+data ManagementRemarketingAudienceInsert =+ ManagementRemarketingAudienceInsert' { _mraiWebPropertyId :: !Text , _mraiPayload :: !RemarketingAudience , _mraiAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementRemarketingAudienceInsert' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -80,12 +83,13 @@ -> Text -- ^ 'mraiAccountId' -> ManagementRemarketingAudienceInsert managementRemarketingAudienceInsert pMraiWebPropertyId_ pMraiPayload_ pMraiAccountId_ =- ManagementRemarketingAudienceInsert'+ ManagementRemarketingAudienceInsert' { _mraiWebPropertyId = pMraiWebPropertyId_ , _mraiPayload = pMraiPayload_ , _mraiAccountId = pMraiAccountId_ } + -- | Web property ID for which to create the remarketing audience. mraiWebPropertyId :: Lens' ManagementRemarketingAudienceInsert Text mraiWebPropertyId@@ -104,7 +108,8 @@ (\ s a -> s{_mraiAccountId = a}) instance GoogleRequest- ManagementRemarketingAudienceInsert where+ ManagementRemarketingAudienceInsert+ where type Rs ManagementRemarketingAudienceInsert = RemarketingAudience type Scopes ManagementRemarketingAudienceInsert =
gen/Network/Google/Resource/Analytics/Management/RemarketingAudience/List.hs view
@@ -63,14 +63,17 @@ -- | Lists remarketing audiences to which the user has access. -- -- /See:/ 'managementRemarketingAudienceList' smart constructor.-data ManagementRemarketingAudienceList = ManagementRemarketingAudienceList'+data ManagementRemarketingAudienceList =+ ManagementRemarketingAudienceList' { _mralWebPropertyId :: !Text , _mralAccountId :: !Text , _mralType :: !Text , _mralStartIndex :: !(Maybe (Textual Int32)) , _mralMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementRemarketingAudienceList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -89,7 +92,7 @@ -> Text -- ^ 'mralAccountId' -> ManagementRemarketingAudienceList managementRemarketingAudienceList pMralWebPropertyId_ pMralAccountId_ =- ManagementRemarketingAudienceList'+ ManagementRemarketingAudienceList' { _mralWebPropertyId = pMralWebPropertyId_ , _mralAccountId = pMralAccountId_ , _mralType = "all"@@ -97,6 +100,7 @@ , _mralMaxResults = Nothing } + -- | The web property ID of the remarketing audiences to retrieve. mralWebPropertyId :: Lens' ManagementRemarketingAudienceList Text mralWebPropertyId@@ -128,7 +132,8 @@ . mapping _Coerce instance GoogleRequest- ManagementRemarketingAudienceList where+ ManagementRemarketingAudienceList+ where type Rs ManagementRemarketingAudienceList = RemarketingAudiences type Scopes ManagementRemarketingAudienceList =
gen/Network/Google/Resource/Analytics/Management/RemarketingAudience/Patch.hs view
@@ -63,13 +63,16 @@ -- semantics. -- -- /See:/ 'managementRemarketingAudiencePatch' smart constructor.-data ManagementRemarketingAudiencePatch = ManagementRemarketingAudiencePatch'+data ManagementRemarketingAudiencePatch =+ ManagementRemarketingAudiencePatch' { _mrapWebPropertyId :: !Text , _mrapPayload :: !RemarketingAudience , _mrapAccountId :: !Text , _mrapRemarketingAudienceId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementRemarketingAudiencePatch' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -88,13 +91,14 @@ -> Text -- ^ 'mrapRemarketingAudienceId' -> ManagementRemarketingAudiencePatch managementRemarketingAudiencePatch pMrapWebPropertyId_ pMrapPayload_ pMrapAccountId_ pMrapRemarketingAudienceId_ =- ManagementRemarketingAudiencePatch'+ ManagementRemarketingAudiencePatch' { _mrapWebPropertyId = pMrapWebPropertyId_ , _mrapPayload = pMrapPayload_ , _mrapAccountId = pMrapAccountId_ , _mrapRemarketingAudienceId = pMrapRemarketingAudienceId_ } + -- | The web property ID of the remarketing audience to update. mrapWebPropertyId :: Lens' ManagementRemarketingAudiencePatch Text mrapWebPropertyId@@ -119,7 +123,8 @@ (\ s a -> s{_mrapRemarketingAudienceId = a}) instance GoogleRequest- ManagementRemarketingAudiencePatch where+ ManagementRemarketingAudiencePatch+ where type Rs ManagementRemarketingAudiencePatch = RemarketingAudience type Scopes ManagementRemarketingAudiencePatch =
gen/Network/Google/Resource/Analytics/Management/RemarketingAudience/Update.hs view
@@ -61,13 +61,16 @@ -- | Updates an existing remarketing audience. -- -- /See:/ 'managementRemarketingAudienceUpdate' smart constructor.-data ManagementRemarketingAudienceUpdate = ManagementRemarketingAudienceUpdate'+data ManagementRemarketingAudienceUpdate =+ ManagementRemarketingAudienceUpdate' { _mrauWebPropertyId :: !Text , _mrauPayload :: !RemarketingAudience , _mrauAccountId :: !Text , _mrauRemarketingAudienceId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementRemarketingAudienceUpdate' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -86,13 +89,14 @@ -> Text -- ^ 'mrauRemarketingAudienceId' -> ManagementRemarketingAudienceUpdate managementRemarketingAudienceUpdate pMrauWebPropertyId_ pMrauPayload_ pMrauAccountId_ pMrauRemarketingAudienceId_ =- ManagementRemarketingAudienceUpdate'+ ManagementRemarketingAudienceUpdate' { _mrauWebPropertyId = pMrauWebPropertyId_ , _mrauPayload = pMrauPayload_ , _mrauAccountId = pMrauAccountId_ , _mrauRemarketingAudienceId = pMrauRemarketingAudienceId_ } + -- | The web property ID of the remarketing audience to update. mrauWebPropertyId :: Lens' ManagementRemarketingAudienceUpdate Text mrauWebPropertyId@@ -117,7 +121,8 @@ (\ s a -> s{_mrauRemarketingAudienceId = a}) instance GoogleRequest- ManagementRemarketingAudienceUpdate where+ ManagementRemarketingAudienceUpdate+ where type Rs ManagementRemarketingAudienceUpdate = RemarketingAudience type Scopes ManagementRemarketingAudienceUpdate =
gen/Network/Google/Resource/Analytics/Management/Segments/List.hs view
@@ -54,11 +54,14 @@ -- | Lists segments to which the user has access. -- -- /See:/ 'managementSegmentsList' smart constructor.-data ManagementSegmentsList = ManagementSegmentsList'+data ManagementSegmentsList =+ ManagementSegmentsList' { _mslStartIndex :: !(Maybe (Textual Int32)) , _mslMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementSegmentsList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -69,10 +72,8 @@ managementSegmentsList :: ManagementSegmentsList managementSegmentsList =- ManagementSegmentsList'- { _mslStartIndex = Nothing- , _mslMaxResults = Nothing- }+ ManagementSegmentsList' {_mslStartIndex = Nothing, _mslMaxResults = Nothing}+ -- | An index of the first segment to retrieve. Use this parameter as a -- pagination mechanism along with the max-results parameter.
gen/Network/Google/Resource/Analytics/Management/UnSampledReports/Delete.hs view
@@ -61,13 +61,16 @@ -- | Deletes an unsampled report. -- -- /See:/ 'managementUnSampledReportsDelete' smart constructor.-data ManagementUnSampledReportsDelete = ManagementUnSampledReportsDelete'+data ManagementUnSampledReportsDelete =+ ManagementUnSampledReportsDelete' { _musrdWebPropertyId :: !Text , _musrdProFileId :: !Text , _musrdAccountId :: !Text , _musrdUnSampledReportId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementUnSampledReportsDelete' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -86,13 +89,14 @@ -> Text -- ^ 'musrdUnSampledReportId' -> ManagementUnSampledReportsDelete managementUnSampledReportsDelete pMusrdWebPropertyId_ pMusrdProFileId_ pMusrdAccountId_ pMusrdUnSampledReportId_ =- ManagementUnSampledReportsDelete'+ ManagementUnSampledReportsDelete' { _musrdWebPropertyId = pMusrdWebPropertyId_ , _musrdProFileId = pMusrdProFileId_ , _musrdAccountId = pMusrdAccountId_ , _musrdUnSampledReportId = pMusrdUnSampledReportId_ } + -- | Web property ID to delete the unsampled reports for. musrdWebPropertyId :: Lens' ManagementUnSampledReportsDelete Text musrdWebPropertyId@@ -118,7 +122,8 @@ (\ s a -> s{_musrdUnSampledReportId = a}) instance GoogleRequest- ManagementUnSampledReportsDelete where+ ManagementUnSampledReportsDelete+ where type Rs ManagementUnSampledReportsDelete = () type Scopes ManagementUnSampledReportsDelete = '["https://www.googleapis.com/auth/analytics.edit"]
gen/Network/Google/Resource/Analytics/Management/UnSampledReports/Get.hs view
@@ -62,13 +62,16 @@ -- | Returns a single unsampled report. -- -- /See:/ 'managementUnSampledReportsGet' smart constructor.-data ManagementUnSampledReportsGet = ManagementUnSampledReportsGet'+data ManagementUnSampledReportsGet =+ ManagementUnSampledReportsGet' { _musrgWebPropertyId :: !Text , _musrgProFileId :: !Text , _musrgAccountId :: !Text , _musrgUnSampledReportId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementUnSampledReportsGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -87,12 +90,13 @@ -> Text -- ^ 'musrgUnSampledReportId' -> ManagementUnSampledReportsGet managementUnSampledReportsGet pMusrgWebPropertyId_ pMusrgProFileId_ pMusrgAccountId_ pMusrgUnSampledReportId_ =- ManagementUnSampledReportsGet'+ ManagementUnSampledReportsGet' { _musrgWebPropertyId = pMusrgWebPropertyId_ , _musrgProFileId = pMusrgProFileId_ , _musrgAccountId = pMusrgAccountId_ , _musrgUnSampledReportId = pMusrgUnSampledReportId_ }+ -- | Web property ID to retrieve unsampled reports for. musrgWebPropertyId :: Lens' ManagementUnSampledReportsGet Text
gen/Network/Google/Resource/Analytics/Management/UnSampledReports/Insert.hs view
@@ -62,13 +62,16 @@ -- | Create a new unsampled report. -- -- /See:/ 'managementUnSampledReportsInsert' smart constructor.-data ManagementUnSampledReportsInsert = ManagementUnSampledReportsInsert'+data ManagementUnSampledReportsInsert =+ ManagementUnSampledReportsInsert' { _musriWebPropertyId :: !Text , _musriProFileId :: !Text , _musriPayload :: !UnSampledReport , _musriAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementUnSampledReportsInsert' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -87,13 +90,14 @@ -> Text -- ^ 'musriAccountId' -> ManagementUnSampledReportsInsert managementUnSampledReportsInsert pMusriWebPropertyId_ pMusriProFileId_ pMusriPayload_ pMusriAccountId_ =- ManagementUnSampledReportsInsert'+ ManagementUnSampledReportsInsert' { _musriWebPropertyId = pMusriWebPropertyId_ , _musriProFileId = pMusriProFileId_ , _musriPayload = pMusriPayload_ , _musriAccountId = pMusriAccountId_ } + -- | Web property ID to create the unsampled report for. musriWebPropertyId :: Lens' ManagementUnSampledReportsInsert Text musriWebPropertyId@@ -118,7 +122,8 @@ (\ s a -> s{_musriAccountId = a}) instance GoogleRequest- ManagementUnSampledReportsInsert where+ ManagementUnSampledReportsInsert+ where type Rs ManagementUnSampledReportsInsert = UnSampledReport type Scopes ManagementUnSampledReportsInsert =
gen/Network/Google/Resource/Analytics/Management/UnSampledReports/List.hs view
@@ -64,14 +64,17 @@ -- | Lists unsampled reports to which the user has access. -- -- /See:/ 'managementUnSampledReportsList' smart constructor.-data ManagementUnSampledReportsList = ManagementUnSampledReportsList'+data ManagementUnSampledReportsList =+ ManagementUnSampledReportsList' { _musrlWebPropertyId :: !Text , _musrlProFileId :: !Text , _musrlAccountId :: !Text , _musrlStartIndex :: !(Maybe (Textual Int32)) , _musrlMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementUnSampledReportsList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -91,13 +94,14 @@ -> Text -- ^ 'musrlAccountId' -> ManagementUnSampledReportsList managementUnSampledReportsList pMusrlWebPropertyId_ pMusrlProFileId_ pMusrlAccountId_ =- ManagementUnSampledReportsList'+ ManagementUnSampledReportsList' { _musrlWebPropertyId = pMusrlWebPropertyId_ , _musrlProFileId = pMusrlProFileId_ , _musrlAccountId = pMusrlAccountId_ , _musrlStartIndex = Nothing , _musrlMaxResults = Nothing }+ -- | Web property ID to retrieve unsampled reports for. Must be a specific -- web property ID, ~all is not supported.
gen/Network/Google/Resource/Analytics/Management/Uploads/DeleteUploadData.hs view
@@ -63,13 +63,16 @@ -- | Delete data associated with a previous upload. -- -- /See:/ 'managementUploadsDeleteUploadData' smart constructor.-data ManagementUploadsDeleteUploadData = ManagementUploadsDeleteUploadData'+data ManagementUploadsDeleteUploadData =+ ManagementUploadsDeleteUploadData' { _mududWebPropertyId :: !Text , _mududCustomDataSourceId :: !Text , _mududPayload :: !AnalyticsDataimportDeleteUploadDataRequest , _mududAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementUploadsDeleteUploadData' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -88,13 +91,14 @@ -> Text -- ^ 'mududAccountId' -> ManagementUploadsDeleteUploadData managementUploadsDeleteUploadData pMududWebPropertyId_ pMududCustomDataSourceId_ pMududPayload_ pMududAccountId_ =- ManagementUploadsDeleteUploadData'+ ManagementUploadsDeleteUploadData' { _mududWebPropertyId = pMududWebPropertyId_ , _mududCustomDataSourceId = pMududCustomDataSourceId_ , _mududPayload = pMududPayload_ , _mududAccountId = pMududAccountId_ } + -- | Web property Id for the uploads to be deleted. mududWebPropertyId :: Lens' ManagementUploadsDeleteUploadData Text mududWebPropertyId@@ -119,7 +123,8 @@ (\ s a -> s{_mududAccountId = a}) instance GoogleRequest- ManagementUploadsDeleteUploadData where+ ManagementUploadsDeleteUploadData+ where type Rs ManagementUploadsDeleteUploadData = () type Scopes ManagementUploadsDeleteUploadData = '["https://www.googleapis.com/auth/analytics",
gen/Network/Google/Resource/Analytics/Management/Uploads/Get.hs view
@@ -61,13 +61,16 @@ -- | List uploads to which the user has access. -- -- /See:/ 'managementUploadsGet' smart constructor.-data ManagementUploadsGet = ManagementUploadsGet'+data ManagementUploadsGet =+ ManagementUploadsGet' { _mugWebPropertyId :: !Text , _mugCustomDataSourceId :: !Text , _mugAccountId :: !Text , _mugUploadId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementUploadsGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -86,12 +89,13 @@ -> Text -- ^ 'mugUploadId' -> ManagementUploadsGet managementUploadsGet pMugWebPropertyId_ pMugCustomDataSourceId_ pMugAccountId_ pMugUploadId_ =- ManagementUploadsGet'+ ManagementUploadsGet' { _mugWebPropertyId = pMugWebPropertyId_ , _mugCustomDataSourceId = pMugCustomDataSourceId_ , _mugAccountId = pMugAccountId_ , _mugUploadId = pMugUploadId_ }+ -- | Web property Id for the upload to retrieve. mugWebPropertyId :: Lens' ManagementUploadsGet Text
gen/Network/Google/Resource/Analytics/Management/Uploads/List.hs view
@@ -63,14 +63,17 @@ -- | List uploads to which the user has access. -- -- /See:/ 'managementUploadsList' smart constructor.-data ManagementUploadsList = ManagementUploadsList'+data ManagementUploadsList =+ ManagementUploadsList' { _mulWebPropertyId :: !Text , _mulCustomDataSourceId :: !Text , _mulAccountId :: !Text , _mulStartIndex :: !(Maybe (Textual Int32)) , _mulMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementUploadsList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -90,13 +93,14 @@ -> Text -- ^ 'mulAccountId' -> ManagementUploadsList managementUploadsList pMulWebPropertyId_ pMulCustomDataSourceId_ pMulAccountId_ =- ManagementUploadsList'+ ManagementUploadsList' { _mulWebPropertyId = pMulWebPropertyId_ , _mulCustomDataSourceId = pMulCustomDataSourceId_ , _mulAccountId = pMulAccountId_ , _mulStartIndex = Nothing , _mulMaxResults = Nothing }+ -- | Web property Id for the uploads to retrieve. mulWebPropertyId :: Lens' ManagementUploadsList Text
gen/Network/Google/Resource/Analytics/Management/Uploads/UploadData.hs view
@@ -74,12 +74,15 @@ -- | Upload data for a custom data source. -- -- /See:/ 'managementUploadsUploadData' smart constructor.-data ManagementUploadsUploadData = ManagementUploadsUploadData'+data ManagementUploadsUploadData =+ ManagementUploadsUploadData' { _muudWebPropertyId :: !Text , _muudCustomDataSourceId :: !Text , _muudAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementUploadsUploadData' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -95,12 +98,13 @@ -> Text -- ^ 'muudAccountId' -> ManagementUploadsUploadData managementUploadsUploadData pMuudWebPropertyId_ pMuudCustomDataSourceId_ pMuudAccountId_ =- ManagementUploadsUploadData'+ ManagementUploadsUploadData' { _muudWebPropertyId = pMuudWebPropertyId_ , _muudCustomDataSourceId = pMuudCustomDataSourceId_ , _muudAccountId = pMuudAccountId_ } + -- | Web property UA-string associated with the upload. muudWebPropertyId :: Lens' ManagementUploadsUploadData Text muudWebPropertyId@@ -136,7 +140,8 @@ mempty instance GoogleRequest- (MediaUpload ManagementUploadsUploadData) where+ (MediaUpload ManagementUploadsUploadData)+ where type Rs (MediaUpload ManagementUploadsUploadData) = Upload type Scopes (MediaUpload ManagementUploadsUploadData)
gen/Network/Google/Resource/Analytics/Management/WebProperties/Get.hs view
@@ -55,11 +55,14 @@ -- | Gets a web property to which the user has access. -- -- /See:/ 'managementWebPropertiesGet' smart constructor.-data ManagementWebPropertiesGet = ManagementWebPropertiesGet'+data ManagementWebPropertiesGet =+ ManagementWebPropertiesGet' { _mwpgWebPropertyId :: !Text , _mwpgAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementWebPropertiesGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -72,10 +75,9 @@ -> Text -- ^ 'mwpgAccountId' -> ManagementWebPropertiesGet managementWebPropertiesGet pMwpgWebPropertyId_ pMwpgAccountId_ =- ManagementWebPropertiesGet'- { _mwpgWebPropertyId = pMwpgWebPropertyId_- , _mwpgAccountId = pMwpgAccountId_- }+ ManagementWebPropertiesGet'+ {_mwpgWebPropertyId = pMwpgWebPropertyId_, _mwpgAccountId = pMwpgAccountId_}+ -- | ID to retrieve the web property for. mwpgWebPropertyId :: Lens' ManagementWebPropertiesGet Text
gen/Network/Google/Resource/Analytics/Management/WebProperties/Insert.hs view
@@ -60,11 +60,14 @@ -- have at least one profile. -- -- /See:/ 'managementWebPropertiesInsert' smart constructor.-data ManagementWebPropertiesInsert = ManagementWebPropertiesInsert'+data ManagementWebPropertiesInsert =+ ManagementWebPropertiesInsert' { _mwpiPayload :: !WebProperty , _mwpiAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementWebPropertiesInsert' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -77,10 +80,9 @@ -> Text -- ^ 'mwpiAccountId' -> ManagementWebPropertiesInsert managementWebPropertiesInsert pMwpiPayload_ pMwpiAccountId_ =- ManagementWebPropertiesInsert'- { _mwpiPayload = pMwpiPayload_- , _mwpiAccountId = pMwpiAccountId_- }+ ManagementWebPropertiesInsert'+ {_mwpiPayload = pMwpiPayload_, _mwpiAccountId = pMwpiAccountId_}+ -- | Multipart request metadata. mwpiPayload :: Lens' ManagementWebPropertiesInsert WebProperty
gen/Network/Google/Resource/Analytics/Management/WebProperties/List.hs view
@@ -57,12 +57,15 @@ -- | Lists web properties to which the user has access. -- -- /See:/ 'managementWebPropertiesList' smart constructor.-data ManagementWebPropertiesList = ManagementWebPropertiesList'+data ManagementWebPropertiesList =+ ManagementWebPropertiesList' { _mwplAccountId :: !Text , _mwplStartIndex :: !(Maybe (Textual Int32)) , _mwplMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementWebPropertiesList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -76,11 +79,12 @@ :: Text -- ^ 'mwplAccountId' -> ManagementWebPropertiesList managementWebPropertiesList pMwplAccountId_ =- ManagementWebPropertiesList'+ ManagementWebPropertiesList' { _mwplAccountId = pMwplAccountId_ , _mwplStartIndex = Nothing , _mwplMaxResults = Nothing }+ -- | Account ID to retrieve web properties for. Can either be a specific -- account ID or \'~all\', which refers to all the accounts that user has
gen/Network/Google/Resource/Analytics/Management/WebProperties/Patch.hs view
@@ -58,12 +58,15 @@ -- | Updates an existing web property. This method supports patch semantics. -- -- /See:/ 'managementWebPropertiesPatch' smart constructor.-data ManagementWebPropertiesPatch = ManagementWebPropertiesPatch'+data ManagementWebPropertiesPatch =+ ManagementWebPropertiesPatch' { _mwppWebPropertyId :: !Text , _mwppPayload :: !WebProperty , _mwppAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementWebPropertiesPatch' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -79,11 +82,12 @@ -> Text -- ^ 'mwppAccountId' -> ManagementWebPropertiesPatch managementWebPropertiesPatch pMwppWebPropertyId_ pMwppPayload_ pMwppAccountId_ =- ManagementWebPropertiesPatch'+ ManagementWebPropertiesPatch' { _mwppWebPropertyId = pMwppWebPropertyId_ , _mwppPayload = pMwppPayload_ , _mwppAccountId = pMwppAccountId_ }+ -- | Web property ID mwppWebPropertyId :: Lens' ManagementWebPropertiesPatch Text
gen/Network/Google/Resource/Analytics/Management/WebProperties/Update.hs view
@@ -58,12 +58,15 @@ -- | Updates an existing web property. -- -- /See:/ 'managementWebPropertiesUpdate' smart constructor.-data ManagementWebPropertiesUpdate = ManagementWebPropertiesUpdate'+data ManagementWebPropertiesUpdate =+ ManagementWebPropertiesUpdate' { _mwpuWebPropertyId :: !Text , _mwpuPayload :: !WebProperty , _mwpuAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementWebPropertiesUpdate' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -79,11 +82,12 @@ -> Text -- ^ 'mwpuAccountId' -> ManagementWebPropertiesUpdate managementWebPropertiesUpdate pMwpuWebPropertyId_ pMwpuPayload_ pMwpuAccountId_ =- ManagementWebPropertiesUpdate'+ ManagementWebPropertiesUpdate' { _mwpuWebPropertyId = pMwpuWebPropertyId_ , _mwpuPayload = pMwpuPayload_ , _mwpuAccountId = pMwpuAccountId_ }+ -- | Web property ID mwpuWebPropertyId :: Lens' ManagementWebPropertiesUpdate Text
gen/Network/Google/Resource/Analytics/Management/WebPropertyAdWordsLinks/Delete.hs view
@@ -20,7 +20,7 @@ -- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Deletes a web property-AdWords link.+-- Deletes a web property-Google Ads link. -- -- /See:/ <https://developers.google.com/analytics/ Google Analytics API Reference> for @analytics.management.webPropertyAdWordsLinks.delete@. module Network.Google.Resource.Analytics.Management.WebPropertyAdWordsLinks.Delete@@ -56,15 +56,18 @@ Capture "webPropertyAdWordsLinkId" Text :> QueryParam "alt" AltJSON :> Delete '[JSON] () --- | Deletes a web property-AdWords link.+-- | Deletes a web property-Google Ads link. -- -- /See:/ 'managementWebPropertyAdWordsLinksDelete' smart constructor.-data ManagementWebPropertyAdWordsLinksDelete = ManagementWebPropertyAdWordsLinksDelete'+data ManagementWebPropertyAdWordsLinksDelete =+ ManagementWebPropertyAdWordsLinksDelete' { _mwpawldWebPropertyId :: !Text , _mwpawldAccountId :: !Text , _mwpawldWebPropertyAdWordsLinkId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementWebPropertyAdWordsLinksDelete' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -80,13 +83,14 @@ -> Text -- ^ 'mwpawldWebPropertyAdWordsLinkId' -> ManagementWebPropertyAdWordsLinksDelete managementWebPropertyAdWordsLinksDelete pMwpawldWebPropertyId_ pMwpawldAccountId_ pMwpawldWebPropertyAdWordsLinkId_ =- ManagementWebPropertyAdWordsLinksDelete'+ ManagementWebPropertyAdWordsLinksDelete' { _mwpawldWebPropertyId = pMwpawldWebPropertyId_ , _mwpawldAccountId = pMwpawldAccountId_ , _mwpawldWebPropertyAdWordsLinkId = pMwpawldWebPropertyAdWordsLinkId_ } --- | Web property ID to delete the AdWords link for.++-- | Web property ID to delete the Google Ads link for. mwpawldWebPropertyId :: Lens' ManagementWebPropertyAdWordsLinksDelete Text mwpawldWebPropertyId = lens _mwpawldWebPropertyId@@ -98,14 +102,15 @@ = lens _mwpawldAccountId (\ s a -> s{_mwpawldAccountId = a}) --- | Web property AdWords link ID.+-- | Web property Google Ads link ID. mwpawldWebPropertyAdWordsLinkId :: Lens' ManagementWebPropertyAdWordsLinksDelete Text mwpawldWebPropertyAdWordsLinkId = lens _mwpawldWebPropertyAdWordsLinkId (\ s a -> s{_mwpawldWebPropertyAdWordsLinkId = a}) instance GoogleRequest- ManagementWebPropertyAdWordsLinksDelete where+ ManagementWebPropertyAdWordsLinksDelete+ where type Rs ManagementWebPropertyAdWordsLinksDelete = () type Scopes ManagementWebPropertyAdWordsLinksDelete = '["https://www.googleapis.com/auth/analytics.edit"]
gen/Network/Google/Resource/Analytics/Management/WebPropertyAdWordsLinks/Get.hs view
@@ -20,7 +20,7 @@ -- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Returns a web property-AdWords link to which the user has access.+-- Returns a web property-Google Ads link to which the user has access. -- -- /See:/ <https://developers.google.com/analytics/ Google Analytics API Reference> for @analytics.management.webPropertyAdWordsLinks.get@. module Network.Google.Resource.Analytics.Management.WebPropertyAdWordsLinks.Get@@ -56,15 +56,18 @@ QueryParam "alt" AltJSON :> Get '[JSON] EntityAdWordsLink --- | Returns a web property-AdWords link to which the user has access.+-- | Returns a web property-Google Ads link to which the user has access. -- -- /See:/ 'managementWebPropertyAdWordsLinksGet' smart constructor.-data ManagementWebPropertyAdWordsLinksGet = ManagementWebPropertyAdWordsLinksGet'+data ManagementWebPropertyAdWordsLinksGet =+ ManagementWebPropertyAdWordsLinksGet' { _mwpawlgWebPropertyId :: !Text , _mwpawlgAccountId :: !Text , _mwpawlgWebPropertyAdWordsLinkId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementWebPropertyAdWordsLinksGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -80,13 +83,14 @@ -> Text -- ^ 'mwpawlgWebPropertyAdWordsLinkId' -> ManagementWebPropertyAdWordsLinksGet managementWebPropertyAdWordsLinksGet pMwpawlgWebPropertyId_ pMwpawlgAccountId_ pMwpawlgWebPropertyAdWordsLinkId_ =- ManagementWebPropertyAdWordsLinksGet'+ ManagementWebPropertyAdWordsLinksGet' { _mwpawlgWebPropertyId = pMwpawlgWebPropertyId_ , _mwpawlgAccountId = pMwpawlgAccountId_ , _mwpawlgWebPropertyAdWordsLinkId = pMwpawlgWebPropertyAdWordsLinkId_ } --- | Web property ID to retrieve the AdWords link for.++-- | Web property ID to retrieve the Google Ads link for. mwpawlgWebPropertyId :: Lens' ManagementWebPropertyAdWordsLinksGet Text mwpawlgWebPropertyId = lens _mwpawlgWebPropertyId@@ -98,14 +102,15 @@ = lens _mwpawlgAccountId (\ s a -> s{_mwpawlgAccountId = a}) --- | Web property-AdWords link ID.+-- | Web property-Google Ads link ID. mwpawlgWebPropertyAdWordsLinkId :: Lens' ManagementWebPropertyAdWordsLinksGet Text mwpawlgWebPropertyAdWordsLinkId = lens _mwpawlgWebPropertyAdWordsLinkId (\ s a -> s{_mwpawlgWebPropertyAdWordsLinkId = a}) instance GoogleRequest- ManagementWebPropertyAdWordsLinksGet where+ ManagementWebPropertyAdWordsLinksGet+ where type Rs ManagementWebPropertyAdWordsLinksGet = EntityAdWordsLink type Scopes ManagementWebPropertyAdWordsLinksGet =
gen/Network/Google/Resource/Analytics/Management/WebPropertyAdWordsLinks/Insert.hs view
@@ -20,7 +20,7 @@ -- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Creates a webProperty-AdWords link.+-- Creates a webProperty-Google Ads link. -- -- /See:/ <https://developers.google.com/analytics/ Google Analytics API Reference> for @analytics.management.webPropertyAdWordsLinks.insert@. module Network.Google.Resource.Analytics.Management.WebPropertyAdWordsLinks.Insert@@ -57,15 +57,18 @@ ReqBody '[JSON] EntityAdWordsLink :> Post '[JSON] EntityAdWordsLink --- | Creates a webProperty-AdWords link.+-- | Creates a webProperty-Google Ads link. -- -- /See:/ 'managementWebPropertyAdWordsLinksInsert' smart constructor.-data ManagementWebPropertyAdWordsLinksInsert = ManagementWebPropertyAdWordsLinksInsert'+data ManagementWebPropertyAdWordsLinksInsert =+ ManagementWebPropertyAdWordsLinksInsert' { _mwpawliWebPropertyId :: !Text , _mwpawliPayload :: !EntityAdWordsLink , _mwpawliAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementWebPropertyAdWordsLinksInsert' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -81,12 +84,13 @@ -> Text -- ^ 'mwpawliAccountId' -> ManagementWebPropertyAdWordsLinksInsert managementWebPropertyAdWordsLinksInsert pMwpawliWebPropertyId_ pMwpawliPayload_ pMwpawliAccountId_ =- ManagementWebPropertyAdWordsLinksInsert'+ ManagementWebPropertyAdWordsLinksInsert' { _mwpawliWebPropertyId = pMwpawliWebPropertyId_ , _mwpawliPayload = pMwpawliPayload_ , _mwpawliAccountId = pMwpawliAccountId_ } + -- | Web property ID to create the link for. mwpawliWebPropertyId :: Lens' ManagementWebPropertyAdWordsLinksInsert Text mwpawliWebPropertyId@@ -106,7 +110,8 @@ (\ s a -> s{_mwpawliAccountId = a}) instance GoogleRequest- ManagementWebPropertyAdWordsLinksInsert where+ ManagementWebPropertyAdWordsLinksInsert+ where type Rs ManagementWebPropertyAdWordsLinksInsert = EntityAdWordsLink type Scopes ManagementWebPropertyAdWordsLinksInsert =
gen/Network/Google/Resource/Analytics/Management/WebPropertyAdWordsLinks/List.hs view
@@ -20,7 +20,7 @@ -- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Lists webProperty-AdWords links for a given web property.+-- Lists webProperty-Google Ads links for a given web property. -- -- /See:/ <https://developers.google.com/analytics/ Google Analytics API Reference> for @analytics.management.webPropertyAdWordsLinks.list@. module Network.Google.Resource.Analytics.Management.WebPropertyAdWordsLinks.List@@ -58,16 +58,19 @@ QueryParam "alt" AltJSON :> Get '[JSON] EntityAdWordsLinks --- | Lists webProperty-AdWords links for a given web property.+-- | Lists webProperty-Google Ads links for a given web property. -- -- /See:/ 'managementWebPropertyAdWordsLinksList' smart constructor.-data ManagementWebPropertyAdWordsLinksList = ManagementWebPropertyAdWordsLinksList'+data ManagementWebPropertyAdWordsLinksList =+ ManagementWebPropertyAdWordsLinksList' { _mwpawllWebPropertyId :: !Text , _mwpawllAccountId :: !Text , _mwpawllStartIndex :: !(Maybe (Textual Int32)) , _mwpawllMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementWebPropertyAdWordsLinksList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -84,14 +87,15 @@ -> Text -- ^ 'mwpawllAccountId' -> ManagementWebPropertyAdWordsLinksList managementWebPropertyAdWordsLinksList pMwpawllWebPropertyId_ pMwpawllAccountId_ =- ManagementWebPropertyAdWordsLinksList'+ ManagementWebPropertyAdWordsLinksList' { _mwpawllWebPropertyId = pMwpawllWebPropertyId_ , _mwpawllAccountId = pMwpawllAccountId_ , _mwpawllStartIndex = Nothing , _mwpawllMaxResults = Nothing } --- | Web property ID to retrieve the AdWords links for.++-- | Web property ID to retrieve the Google Ads links for. mwpawllWebPropertyId :: Lens' ManagementWebPropertyAdWordsLinksList Text mwpawllWebPropertyId = lens _mwpawllWebPropertyId@@ -103,7 +107,7 @@ = lens _mwpawllAccountId (\ s a -> s{_mwpawllAccountId = a}) --- | An index of the first webProperty-AdWords link to retrieve. Use this+-- | An index of the first webProperty-Google Ads link to retrieve. Use this -- parameter as a pagination mechanism along with the max-results -- parameter. mwpawllStartIndex :: Lens' ManagementWebPropertyAdWordsLinksList (Maybe Int32)@@ -112,7 +116,7 @@ (\ s a -> s{_mwpawllStartIndex = a}) . mapping _Coerce --- | The maximum number of webProperty-AdWords links to include in this+-- | The maximum number of webProperty-Google Ads links to include in this -- response. mwpawllMaxResults :: Lens' ManagementWebPropertyAdWordsLinksList (Maybe Int32) mwpawllMaxResults@@ -121,7 +125,8 @@ . mapping _Coerce instance GoogleRequest- ManagementWebPropertyAdWordsLinksList where+ ManagementWebPropertyAdWordsLinksList+ where type Rs ManagementWebPropertyAdWordsLinksList = EntityAdWordsLinks type Scopes ManagementWebPropertyAdWordsLinksList =
gen/Network/Google/Resource/Analytics/Management/WebPropertyAdWordsLinks/Patch.hs view
@@ -20,8 +20,8 @@ -- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Updates an existing webProperty-AdWords link. This method supports patch--- semantics.+-- Updates an existing webProperty-Google Ads link. This method supports+-- patch semantics. -- -- /See:/ <https://developers.google.com/analytics/ Google Analytics API Reference> for @analytics.management.webPropertyAdWordsLinks.patch@. module Network.Google.Resource.Analytics.Management.WebPropertyAdWordsLinks.Patch@@ -59,17 +59,20 @@ ReqBody '[JSON] EntityAdWordsLink :> Patch '[JSON] EntityAdWordsLink --- | Updates an existing webProperty-AdWords link. This method supports patch--- semantics.+-- | Updates an existing webProperty-Google Ads link. This method supports+-- patch semantics. -- -- /See:/ 'managementWebPropertyAdWordsLinksPatch' smart constructor.-data ManagementWebPropertyAdWordsLinksPatch = ManagementWebPropertyAdWordsLinksPatch'+data ManagementWebPropertyAdWordsLinksPatch =+ ManagementWebPropertyAdWordsLinksPatch' { _mwpawlpWebPropertyId :: !Text , _mwpawlpPayload :: !EntityAdWordsLink , _mwpawlpAccountId :: !Text , _mwpawlpWebPropertyAdWordsLinkId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementWebPropertyAdWordsLinksPatch' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -88,14 +91,15 @@ -> Text -- ^ 'mwpawlpWebPropertyAdWordsLinkId' -> ManagementWebPropertyAdWordsLinksPatch managementWebPropertyAdWordsLinksPatch pMwpawlpWebPropertyId_ pMwpawlpPayload_ pMwpawlpAccountId_ pMwpawlpWebPropertyAdWordsLinkId_ =- ManagementWebPropertyAdWordsLinksPatch'+ ManagementWebPropertyAdWordsLinksPatch' { _mwpawlpWebPropertyId = pMwpawlpWebPropertyId_ , _mwpawlpPayload = pMwpawlpPayload_ , _mwpawlpAccountId = pMwpawlpAccountId_ , _mwpawlpWebPropertyAdWordsLinkId = pMwpawlpWebPropertyAdWordsLinkId_ } --- | Web property ID to retrieve the AdWords link for.++-- | Web property ID to retrieve the Google Ads link for. mwpawlpWebPropertyId :: Lens' ManagementWebPropertyAdWordsLinksPatch Text mwpawlpWebPropertyId = lens _mwpawlpWebPropertyId@@ -113,14 +117,15 @@ = lens _mwpawlpAccountId (\ s a -> s{_mwpawlpAccountId = a}) --- | Web property-AdWords link ID.+-- | Web property-Google Ads link ID. mwpawlpWebPropertyAdWordsLinkId :: Lens' ManagementWebPropertyAdWordsLinksPatch Text mwpawlpWebPropertyAdWordsLinkId = lens _mwpawlpWebPropertyAdWordsLinkId (\ s a -> s{_mwpawlpWebPropertyAdWordsLinkId = a}) instance GoogleRequest- ManagementWebPropertyAdWordsLinksPatch where+ ManagementWebPropertyAdWordsLinksPatch+ where type Rs ManagementWebPropertyAdWordsLinksPatch = EntityAdWordsLink type Scopes ManagementWebPropertyAdWordsLinksPatch =
gen/Network/Google/Resource/Analytics/Management/WebPropertyAdWordsLinks/Update.hs view
@@ -20,7 +20,7 @@ -- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Updates an existing webProperty-AdWords link.+-- Updates an existing webProperty-Google Ads link. -- -- /See:/ <https://developers.google.com/analytics/ Google Analytics API Reference> for @analytics.management.webPropertyAdWordsLinks.update@. module Network.Google.Resource.Analytics.Management.WebPropertyAdWordsLinks.Update@@ -59,16 +59,19 @@ ReqBody '[JSON] EntityAdWordsLink :> Put '[JSON] EntityAdWordsLink --- | Updates an existing webProperty-AdWords link.+-- | Updates an existing webProperty-Google Ads link. -- -- /See:/ 'managementWebPropertyAdWordsLinksUpdate' smart constructor.-data ManagementWebPropertyAdWordsLinksUpdate = ManagementWebPropertyAdWordsLinksUpdate'+data ManagementWebPropertyAdWordsLinksUpdate =+ ManagementWebPropertyAdWordsLinksUpdate' { _mwpawluWebPropertyId :: !Text , _mwpawluPayload :: !EntityAdWordsLink , _mwpawluAccountId :: !Text , _mwpawluWebPropertyAdWordsLinkId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementWebPropertyAdWordsLinksUpdate' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -87,14 +90,15 @@ -> Text -- ^ 'mwpawluWebPropertyAdWordsLinkId' -> ManagementWebPropertyAdWordsLinksUpdate managementWebPropertyAdWordsLinksUpdate pMwpawluWebPropertyId_ pMwpawluPayload_ pMwpawluAccountId_ pMwpawluWebPropertyAdWordsLinkId_ =- ManagementWebPropertyAdWordsLinksUpdate'+ ManagementWebPropertyAdWordsLinksUpdate' { _mwpawluWebPropertyId = pMwpawluWebPropertyId_ , _mwpawluPayload = pMwpawluPayload_ , _mwpawluAccountId = pMwpawluAccountId_ , _mwpawluWebPropertyAdWordsLinkId = pMwpawluWebPropertyAdWordsLinkId_ } --- | Web property ID to retrieve the AdWords link for.++-- | Web property ID to retrieve the Google Ads link for. mwpawluWebPropertyId :: Lens' ManagementWebPropertyAdWordsLinksUpdate Text mwpawluWebPropertyId = lens _mwpawluWebPropertyId@@ -112,14 +116,15 @@ = lens _mwpawluAccountId (\ s a -> s{_mwpawluAccountId = a}) --- | Web property-AdWords link ID.+-- | Web property-Google Ads link ID. mwpawluWebPropertyAdWordsLinkId :: Lens' ManagementWebPropertyAdWordsLinksUpdate Text mwpawluWebPropertyAdWordsLinkId = lens _mwpawluWebPropertyAdWordsLinkId (\ s a -> s{_mwpawluWebPropertyAdWordsLinkId = a}) instance GoogleRequest- ManagementWebPropertyAdWordsLinksUpdate where+ ManagementWebPropertyAdWordsLinksUpdate+ where type Rs ManagementWebPropertyAdWordsLinksUpdate = EntityAdWordsLink type Scopes ManagementWebPropertyAdWordsLinksUpdate =
gen/Network/Google/Resource/Analytics/Management/WebPropertyUserLinks/Delete.hs view
@@ -58,12 +58,15 @@ -- | Removes a user from the given web property. -- -- /See:/ 'managementWebPropertyUserLinksDelete' smart constructor.-data ManagementWebPropertyUserLinksDelete = ManagementWebPropertyUserLinksDelete'+data ManagementWebPropertyUserLinksDelete =+ ManagementWebPropertyUserLinksDelete' { _mwpuldWebPropertyId :: !Text , _mwpuldAccountId :: !Text , _mwpuldLinkId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementWebPropertyUserLinksDelete' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -79,12 +82,13 @@ -> Text -- ^ 'mwpuldLinkId' -> ManagementWebPropertyUserLinksDelete managementWebPropertyUserLinksDelete pMwpuldWebPropertyId_ pMwpuldAccountId_ pMwpuldLinkId_ =- ManagementWebPropertyUserLinksDelete'+ ManagementWebPropertyUserLinksDelete' { _mwpuldWebPropertyId = pMwpuldWebPropertyId_ , _mwpuldAccountId = pMwpuldAccountId_ , _mwpuldLinkId = pMwpuldLinkId_ } + -- | Web Property ID to delete the user link for. mwpuldWebPropertyId :: Lens' ManagementWebPropertyUserLinksDelete Text mwpuldWebPropertyId@@ -103,7 +107,8 @@ = lens _mwpuldLinkId (\ s a -> s{_mwpuldLinkId = a}) instance GoogleRequest- ManagementWebPropertyUserLinksDelete where+ ManagementWebPropertyUserLinksDelete+ where type Rs ManagementWebPropertyUserLinksDelete = () type Scopes ManagementWebPropertyUserLinksDelete = '["https://www.googleapis.com/auth/analytics.manage.users"]
gen/Network/Google/Resource/Analytics/Management/WebPropertyUserLinks/Insert.hs view
@@ -59,12 +59,15 @@ -- | Adds a new user to the given web property. -- -- /See:/ 'managementWebPropertyUserLinksInsert' smart constructor.-data ManagementWebPropertyUserLinksInsert = ManagementWebPropertyUserLinksInsert'+data ManagementWebPropertyUserLinksInsert =+ ManagementWebPropertyUserLinksInsert' { _mwpuliWebPropertyId :: !Text , _mwpuliPayload :: !EntityUserLink , _mwpuliAccountId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementWebPropertyUserLinksInsert' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -80,12 +83,13 @@ -> Text -- ^ 'mwpuliAccountId' -> ManagementWebPropertyUserLinksInsert managementWebPropertyUserLinksInsert pMwpuliWebPropertyId_ pMwpuliPayload_ pMwpuliAccountId_ =- ManagementWebPropertyUserLinksInsert'+ ManagementWebPropertyUserLinksInsert' { _mwpuliWebPropertyId = pMwpuliWebPropertyId_ , _mwpuliPayload = pMwpuliPayload_ , _mwpuliAccountId = pMwpuliAccountId_ } + -- | Web Property ID to create the user link for. mwpuliWebPropertyId :: Lens' ManagementWebPropertyUserLinksInsert Text mwpuliWebPropertyId@@ -105,7 +109,8 @@ (\ s a -> s{_mwpuliAccountId = a}) instance GoogleRequest- ManagementWebPropertyUserLinksInsert where+ ManagementWebPropertyUserLinksInsert+ where type Rs ManagementWebPropertyUserLinksInsert = EntityUserLink type Scopes ManagementWebPropertyUserLinksInsert =
gen/Network/Google/Resource/Analytics/Management/WebPropertyUserLinks/List.hs view
@@ -61,13 +61,16 @@ -- | Lists webProperty-user links for a given web property. -- -- /See:/ 'managementWebPropertyUserLinksList' smart constructor.-data ManagementWebPropertyUserLinksList = ManagementWebPropertyUserLinksList'+data ManagementWebPropertyUserLinksList =+ ManagementWebPropertyUserLinksList' { _mwpullWebPropertyId :: !Text , _mwpullAccountId :: !Text , _mwpullStartIndex :: !(Maybe (Textual Int32)) , _mwpullMaxResults :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementWebPropertyUserLinksList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -84,13 +87,14 @@ -> Text -- ^ 'mwpullAccountId' -> ManagementWebPropertyUserLinksList managementWebPropertyUserLinksList pMwpullWebPropertyId_ pMwpullAccountId_ =- ManagementWebPropertyUserLinksList'+ ManagementWebPropertyUserLinksList' { _mwpullWebPropertyId = pMwpullWebPropertyId_ , _mwpullAccountId = pMwpullAccountId_ , _mwpullStartIndex = Nothing , _mwpullMaxResults = Nothing } + -- | Web Property ID for the webProperty-user links to retrieve. Can either -- be a specific web property ID or \'~all\', which refers to all the web -- properties that user has access to.@@ -123,7 +127,8 @@ . mapping _Coerce instance GoogleRequest- ManagementWebPropertyUserLinksList where+ ManagementWebPropertyUserLinksList+ where type Rs ManagementWebPropertyUserLinksList = EntityUserLinks type Scopes ManagementWebPropertyUserLinksList =
gen/Network/Google/Resource/Analytics/Management/WebPropertyUserLinks/Update.hs view
@@ -61,13 +61,16 @@ -- | Updates permissions for an existing user on the given web property. -- -- /See:/ 'managementWebPropertyUserLinksUpdate' smart constructor.-data ManagementWebPropertyUserLinksUpdate = ManagementWebPropertyUserLinksUpdate'+data ManagementWebPropertyUserLinksUpdate =+ ManagementWebPropertyUserLinksUpdate' { _mwpuluWebPropertyId :: !Text , _mwpuluPayload :: !EntityUserLink , _mwpuluAccountId :: !Text , _mwpuluLinkId :: !Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ManagementWebPropertyUserLinksUpdate' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -86,13 +89,14 @@ -> Text -- ^ 'mwpuluLinkId' -> ManagementWebPropertyUserLinksUpdate managementWebPropertyUserLinksUpdate pMwpuluWebPropertyId_ pMwpuluPayload_ pMwpuluAccountId_ pMwpuluLinkId_ =- ManagementWebPropertyUserLinksUpdate'+ ManagementWebPropertyUserLinksUpdate' { _mwpuluWebPropertyId = pMwpuluWebPropertyId_ , _mwpuluPayload = pMwpuluPayload_ , _mwpuluAccountId = pMwpuluAccountId_ , _mwpuluLinkId = pMwpuluLinkId_ } + -- | Web property ID to update the account-user link for. mwpuluWebPropertyId :: Lens' ManagementWebPropertyUserLinksUpdate Text mwpuluWebPropertyId@@ -117,7 +121,8 @@ = lens _mwpuluLinkId (\ s a -> s{_mwpuluLinkId = a}) instance GoogleRequest- ManagementWebPropertyUserLinksUpdate where+ ManagementWebPropertyUserLinksUpdate+ where type Rs ManagementWebPropertyUserLinksUpdate = EntityUserLink type Scopes ManagementWebPropertyUserLinksUpdate =
gen/Network/Google/Resource/Analytics/Metadata/Columns/List.hs view
@@ -52,10 +52,13 @@ -- | Lists all columns for a report type -- -- /See:/ 'metadataColumnsList' smart constructor.-newtype MetadataColumnsList = MetadataColumnsList'+newtype MetadataColumnsList =+ MetadataColumnsList' { _mclReportType :: Text- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'MetadataColumnsList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -65,9 +68,8 @@ :: Text -- ^ 'mclReportType' -> MetadataColumnsList metadataColumnsList pMclReportType_ =- MetadataColumnsList'- { _mclReportType = pMclReportType_- }+ MetadataColumnsList' {_mclReportType = pMclReportType_}+ -- | Report type. Allowed Values: \'ga\'. Where \'ga\' corresponds to the -- Core Reporting API
gen/Network/Google/Resource/Analytics/Provisioning/CreateAccountTicket.hs view
@@ -53,10 +53,13 @@ -- | Creates an account ticket. -- -- /See:/ 'provisioningCreateAccountTicket' smart constructor.-newtype ProvisioningCreateAccountTicket = ProvisioningCreateAccountTicket'+newtype ProvisioningCreateAccountTicket =+ ProvisioningCreateAccountTicket' { _pPayload :: AccountTicket- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProvisioningCreateAccountTicket' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -66,16 +69,16 @@ :: AccountTicket -- ^ 'pPayload' -> ProvisioningCreateAccountTicket provisioningCreateAccountTicket pPPayload_ =- ProvisioningCreateAccountTicket'- { _pPayload = pPPayload_- }+ ProvisioningCreateAccountTicket' {_pPayload = pPPayload_} + -- | Multipart request metadata. pPayload :: Lens' ProvisioningCreateAccountTicket AccountTicket pPayload = lens _pPayload (\ s a -> s{_pPayload = a}) instance GoogleRequest- ProvisioningCreateAccountTicket where+ ProvisioningCreateAccountTicket+ where type Rs ProvisioningCreateAccountTicket = AccountTicket type Scopes ProvisioningCreateAccountTicket =
gen/Network/Google/Resource/Analytics/Provisioning/CreateAccountTree.hs view
@@ -53,10 +53,13 @@ -- | Provision account. -- -- /See:/ 'provisioningCreateAccountTree' smart constructor.-newtype ProvisioningCreateAccountTree = ProvisioningCreateAccountTree'+newtype ProvisioningCreateAccountTree =+ ProvisioningCreateAccountTree' { _pcatPayload :: AccountTreeRequest- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProvisioningCreateAccountTree' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -66,9 +69,8 @@ :: AccountTreeRequest -- ^ 'pcatPayload' -> ProvisioningCreateAccountTree provisioningCreateAccountTree pPcatPayload_ =- ProvisioningCreateAccountTree'- { _pcatPayload = pPcatPayload_- }+ ProvisioningCreateAccountTree' {_pcatPayload = pPcatPayload_}+ -- | Multipart request metadata. pcatPayload :: Lens' ProvisioningCreateAccountTree AccountTreeRequest
gen/Network/Google/Resource/Analytics/UserDeletion/UserDeletionRequest/Upsert.hs view
@@ -53,10 +53,13 @@ -- | Insert or update a user deletion requests. -- -- /See:/ 'userDeletionUserDeletionRequestUpsert' smart constructor.-newtype UserDeletionUserDeletionRequestUpsert = UserDeletionUserDeletionRequestUpsert'+newtype UserDeletionUserDeletionRequestUpsert =+ UserDeletionUserDeletionRequestUpsert' { _ududruPayload :: UserDeletionRequest- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'UserDeletionUserDeletionRequestUpsert' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -66,10 +69,9 @@ :: UserDeletionRequest -- ^ 'ududruPayload' -> UserDeletionUserDeletionRequestUpsert userDeletionUserDeletionRequestUpsert pUdudruPayload_ =- UserDeletionUserDeletionRequestUpsert'- { _ududruPayload = pUdudruPayload_- }+ UserDeletionUserDeletionRequestUpsert' {_ududruPayload = pUdudruPayload_} + -- | Multipart request metadata. ududruPayload :: Lens' UserDeletionUserDeletionRequestUpsert UserDeletionRequest ududruPayload@@ -77,7 +79,8 @@ (\ s a -> s{_ududruPayload = a}) instance GoogleRequest- UserDeletionUserDeletionRequestUpsert where+ UserDeletionUserDeletionRequestUpsert+ where type Rs UserDeletionUserDeletionRequestUpsert = UserDeletionRequest type Scopes UserDeletionUserDeletionRequestUpsert =
gogol-analytics.cabal view
@@ -1,5 +1,5 @@ name: gogol-analytics-version: 0.4.0+version: 0.5.0 synopsis: Google Analytics SDK. homepage: https://github.com/brendanhay/gogol bug-reports: https://github.com/brendanhay/gogol/issues@@ -129,5 +129,5 @@ , Network.Google.Analytics.Types.Sum build-depends:- gogol-core == 0.4.0.*+ gogol-core == 0.5.0.* , base >= 4.7 && < 5