diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -8,12 +8,12 @@
 
 ## Version
 
-`0.5.0`
+`1.0.0`
 
 
 ## Description
 
-A client library for the Google Stackdriver Error Reporting.
+A client library for the Google Error Reporting.
 
 
 ## Contribute
diff --git a/Setup.hs b/Setup.hs
--- a/Setup.hs
+++ b/Setup.hs
@@ -1,2 +1,3 @@
-import           Distribution.Simple
+import Distribution.Simple
+
 main = defaultMain
diff --git a/gen/Gogol/CloudErrorReporting.hs b/gen/Gogol/CloudErrorReporting.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/CloudErrorReporting.hs
@@ -0,0 +1,199 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.CloudErrorReporting
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Groups and counts similar errors from cloud services and applications, reports new errors, and provides access to error groups and their associated errors.
+--
+-- /See:/ <https://cloud.google.com/error-reporting/ Error Reporting API Reference>
+module Gogol.CloudErrorReporting
+  ( -- * Configuration
+    cloudErrorReportingService,
+
+    -- * OAuth Scopes
+    CloudPlatform'FullControl,
+
+    -- * Resources
+
+    -- ** clouderrorreporting.projects.deleteEvents
+    CloudErrorReportingProjectsDeleteEventsResource,
+    CloudErrorReportingProjectsDeleteEvents (..),
+    newCloudErrorReportingProjectsDeleteEvents,
+
+    -- ** clouderrorreporting.projects.events.list
+    CloudErrorReportingProjectsEventsListResource,
+    CloudErrorReportingProjectsEventsList (..),
+    newCloudErrorReportingProjectsEventsList,
+
+    -- ** clouderrorreporting.projects.events.report
+    CloudErrorReportingProjectsEventsReportResource,
+    CloudErrorReportingProjectsEventsReport (..),
+    newCloudErrorReportingProjectsEventsReport,
+
+    -- ** clouderrorreporting.projects.groupStats.list
+    CloudErrorReportingProjectsGroupStatsListResource,
+    CloudErrorReportingProjectsGroupStatsList (..),
+    newCloudErrorReportingProjectsGroupStatsList,
+
+    -- ** clouderrorreporting.projects.groups.get
+    CloudErrorReportingProjectsGroupsGetResource,
+    CloudErrorReportingProjectsGroupsGet (..),
+    newCloudErrorReportingProjectsGroupsGet,
+
+    -- ** clouderrorreporting.projects.groups.update
+    CloudErrorReportingProjectsGroupsUpdateResource,
+    CloudErrorReportingProjectsGroupsUpdate (..),
+    newCloudErrorReportingProjectsGroupsUpdate,
+
+    -- ** clouderrorreporting.projects.locations.deleteEvents
+    CloudErrorReportingProjectsLocationsDeleteEventsResource,
+    CloudErrorReportingProjectsLocationsDeleteEvents (..),
+    newCloudErrorReportingProjectsLocationsDeleteEvents,
+
+    -- ** clouderrorreporting.projects.locations.events.list
+    CloudErrorReportingProjectsLocationsEventsListResource,
+    CloudErrorReportingProjectsLocationsEventsList (..),
+    newCloudErrorReportingProjectsLocationsEventsList,
+
+    -- ** clouderrorreporting.projects.locations.groupStats.list
+    CloudErrorReportingProjectsLocationsGroupStatsListResource,
+    CloudErrorReportingProjectsLocationsGroupStatsList (..),
+    newCloudErrorReportingProjectsLocationsGroupStatsList,
+
+    -- ** clouderrorreporting.projects.locations.groups.get
+    CloudErrorReportingProjectsLocationsGroupsGetResource,
+    CloudErrorReportingProjectsLocationsGroupsGet (..),
+    newCloudErrorReportingProjectsLocationsGroupsGet,
+
+    -- ** clouderrorreporting.projects.locations.groups.update
+    CloudErrorReportingProjectsLocationsGroupsUpdateResource,
+    CloudErrorReportingProjectsLocationsGroupsUpdate (..),
+    newCloudErrorReportingProjectsLocationsGroupsUpdate,
+
+    -- * Types
+
+    -- ** Xgafv
+    Xgafv (..),
+
+    -- ** DeleteEventsResponse
+    DeleteEventsResponse (..),
+    newDeleteEventsResponse,
+
+    -- ** ErrorContext
+    ErrorContext (..),
+    newErrorContext,
+
+    -- ** ErrorEvent
+    ErrorEvent (..),
+    newErrorEvent,
+
+    -- ** ErrorGroup
+    ErrorGroup (..),
+    newErrorGroup,
+
+    -- ** ErrorGroup_ResolutionStatus
+    ErrorGroup_ResolutionStatus (..),
+
+    -- ** ErrorGroupStats
+    ErrorGroupStats (..),
+    newErrorGroupStats,
+
+    -- ** HttpRequestContext
+    HttpRequestContext (..),
+    newHttpRequestContext,
+
+    -- ** ListEventsResponse
+    ListEventsResponse (..),
+    newListEventsResponse,
+
+    -- ** ListGroupStatsResponse
+    ListGroupStatsResponse (..),
+    newListGroupStatsResponse,
+
+    -- ** ReportErrorEventResponse
+    ReportErrorEventResponse (..),
+    newReportErrorEventResponse,
+
+    -- ** ReportedErrorEvent
+    ReportedErrorEvent (..),
+    newReportedErrorEvent,
+
+    -- ** ServiceContext
+    ServiceContext (..),
+    newServiceContext,
+
+    -- ** SourceLocation
+    SourceLocation (..),
+    newSourceLocation,
+
+    -- ** SourceReference
+    SourceReference (..),
+    newSourceReference,
+
+    -- ** TimedCount
+    TimedCount (..),
+    newTimedCount,
+
+    -- ** TrackingIssue
+    TrackingIssue (..),
+    newTrackingIssue,
+
+    -- ** ProjectsEventsListTimeRangePeriod
+    ProjectsEventsListTimeRangePeriod (..),
+
+    -- ** ProjectsGroupStatsListAlignment
+    ProjectsGroupStatsListAlignment (..),
+
+    -- ** ProjectsGroupStatsListOrder
+    ProjectsGroupStatsListOrder (..),
+
+    -- ** ProjectsGroupStatsListTimeRangePeriod
+    ProjectsGroupStatsListTimeRangePeriod (..),
+
+    -- ** ProjectsLocationsEventsListTimeRangePeriod
+    ProjectsLocationsEventsListTimeRangePeriod (..),
+
+    -- ** ProjectsLocationsGroupStatsListAlignment
+    ProjectsLocationsGroupStatsListAlignment (..),
+
+    -- ** ProjectsLocationsGroupStatsListOrder
+    ProjectsLocationsGroupStatsListOrder (..),
+
+    -- ** ProjectsLocationsGroupStatsListTimeRangePeriod
+    ProjectsLocationsGroupStatsListTimeRangePeriod (..),
+  )
+where
+
+import Gogol.CloudErrorReporting.Projects.DeleteEvents
+import Gogol.CloudErrorReporting.Projects.Events.List
+import Gogol.CloudErrorReporting.Projects.Events.Report
+import Gogol.CloudErrorReporting.Projects.GroupStats.List
+import Gogol.CloudErrorReporting.Projects.Groups.Get
+import Gogol.CloudErrorReporting.Projects.Groups.Update
+import Gogol.CloudErrorReporting.Projects.Locations.DeleteEvents
+import Gogol.CloudErrorReporting.Projects.Locations.Events.List
+import Gogol.CloudErrorReporting.Projects.Locations.GroupStats.List
+import Gogol.CloudErrorReporting.Projects.Locations.Groups.Get
+import Gogol.CloudErrorReporting.Projects.Locations.Groups.Update
+import Gogol.CloudErrorReporting.Types
diff --git a/gen/Gogol/CloudErrorReporting/Internal/Product.hs b/gen/Gogol/CloudErrorReporting/Internal/Product.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/CloudErrorReporting/Internal/Product.hs
@@ -0,0 +1,748 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.CloudErrorReporting.Internal.Product
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+module Gogol.CloudErrorReporting.Internal.Product
+  ( -- * DeleteEventsResponse
+    DeleteEventsResponse (..),
+    newDeleteEventsResponse,
+
+    -- * ErrorContext
+    ErrorContext (..),
+    newErrorContext,
+
+    -- * ErrorEvent
+    ErrorEvent (..),
+    newErrorEvent,
+
+    -- * ErrorGroup
+    ErrorGroup (..),
+    newErrorGroup,
+
+    -- * ErrorGroupStats
+    ErrorGroupStats (..),
+    newErrorGroupStats,
+
+    -- * HttpRequestContext
+    HttpRequestContext (..),
+    newHttpRequestContext,
+
+    -- * ListEventsResponse
+    ListEventsResponse (..),
+    newListEventsResponse,
+
+    -- * ListGroupStatsResponse
+    ListGroupStatsResponse (..),
+    newListGroupStatsResponse,
+
+    -- * ReportErrorEventResponse
+    ReportErrorEventResponse (..),
+    newReportErrorEventResponse,
+
+    -- * ReportedErrorEvent
+    ReportedErrorEvent (..),
+    newReportedErrorEvent,
+
+    -- * ServiceContext
+    ServiceContext (..),
+    newServiceContext,
+
+    -- * SourceLocation
+    SourceLocation (..),
+    newSourceLocation,
+
+    -- * SourceReference
+    SourceReference (..),
+    newSourceReference,
+
+    -- * TimedCount
+    TimedCount (..),
+    newTimedCount,
+
+    -- * TrackingIssue
+    TrackingIssue (..),
+    newTrackingIssue,
+  )
+where
+
+import Gogol.CloudErrorReporting.Internal.Sum
+import Gogol.Prelude qualified as Core
+
+-- | Response message for deleting error events.
+--
+-- /See:/ 'newDeleteEventsResponse' smart constructor.
+data DeleteEventsResponse = DeleteEventsResponse
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'DeleteEventsResponse' with the minimum fields required to make a request.
+newDeleteEventsResponse ::
+  DeleteEventsResponse
+newDeleteEventsResponse = DeleteEventsResponse
+
+instance Core.FromJSON DeleteEventsResponse where
+  parseJSON =
+    Core.withObject
+      "DeleteEventsResponse"
+      (\o -> Core.pure DeleteEventsResponse)
+
+instance Core.ToJSON DeleteEventsResponse where
+  toJSON = Core.const Core.emptyObject
+
+-- | A description of the context in which an error occurred. This data should be provided by the application when reporting an error, unless the error report has been generated automatically from Google App Engine logs.
+--
+-- /See:/ 'newErrorContext' smart constructor.
+data ErrorContext = ErrorContext
+  { -- | The HTTP request which was processed when the error was triggered.
+    httpRequest :: (Core.Maybe HttpRequestContext),
+    -- | The location in the source code where the decision was made to report the error, usually the place where it was logged. For a logged exception this would be the source line where the exception is logged, usually close to the place where it was caught.
+    reportLocation :: (Core.Maybe SourceLocation),
+    -- | Source code that was used to build the executable which has caused the given error message.
+    sourceReferences :: (Core.Maybe [SourceReference]),
+    -- | The user who caused or was affected by the crash. This can be a user ID, an email address, or an arbitrary token that uniquely identifies the user. When sending an error report, leave this field empty if the user was not logged in. In this case the Error Reporting system will use other data, such as remote IP address, to distinguish affected users. See @affected_users_count@ in @ErrorGroupStats@.
+    user :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ErrorContext' with the minimum fields required to make a request.
+newErrorContext ::
+  ErrorContext
+newErrorContext =
+  ErrorContext
+    { httpRequest = Core.Nothing,
+      reportLocation = Core.Nothing,
+      sourceReferences = Core.Nothing,
+      user = Core.Nothing
+    }
+
+instance Core.FromJSON ErrorContext where
+  parseJSON =
+    Core.withObject
+      "ErrorContext"
+      ( \o ->
+          ErrorContext
+            Core.<$> (o Core..:? "httpRequest")
+            Core.<*> (o Core..:? "reportLocation")
+            Core.<*> (o Core..:? "sourceReferences")
+            Core.<*> (o Core..:? "user")
+      )
+
+instance Core.ToJSON ErrorContext where
+  toJSON ErrorContext {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("httpRequest" Core..=) Core.<$> httpRequest,
+            ("reportLocation" Core..=) Core.<$> reportLocation,
+            ("sourceReferences" Core..=) Core.<$> sourceReferences,
+            ("user" Core..=) Core.<$> user
+          ]
+      )
+
+-- | An error event which is returned by the Error Reporting system.
+--
+-- /See:/ 'newErrorEvent' smart constructor.
+data ErrorEvent = ErrorEvent
+  { -- | Data about the context in which the error occurred.
+    context :: (Core.Maybe ErrorContext),
+    -- | Time when the event occurred as provided in the error report. If the report did not contain a timestamp, the time the error was received by the Error Reporting system is used.
+    eventTime :: (Core.Maybe Core.DateTime),
+    -- | The stack trace that was reported or logged by the service.
+    message :: (Core.Maybe Core.Text),
+    -- | The @ServiceContext@ for which this error was reported.
+    serviceContext :: (Core.Maybe ServiceContext)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ErrorEvent' with the minimum fields required to make a request.
+newErrorEvent ::
+  ErrorEvent
+newErrorEvent =
+  ErrorEvent
+    { context = Core.Nothing,
+      eventTime = Core.Nothing,
+      message = Core.Nothing,
+      serviceContext = Core.Nothing
+    }
+
+instance Core.FromJSON ErrorEvent where
+  parseJSON =
+    Core.withObject
+      "ErrorEvent"
+      ( \o ->
+          ErrorEvent
+            Core.<$> (o Core..:? "context")
+            Core.<*> (o Core..:? "eventTime")
+            Core.<*> (o Core..:? "message")
+            Core.<*> (o Core..:? "serviceContext")
+      )
+
+instance Core.ToJSON ErrorEvent where
+  toJSON ErrorEvent {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("context" Core..=) Core.<$> context,
+            ("eventTime" Core..=) Core.<$> eventTime,
+            ("message" Core..=) Core.<$> message,
+            ("serviceContext" Core..=) Core.<$> serviceContext
+          ]
+      )
+
+-- | Description of a group of similar error events.
+--
+-- /See:/ 'newErrorGroup' smart constructor.
+data ErrorGroup = ErrorGroup
+  { -- | An opaque identifier of the group. This field is assigned by the Error Reporting system and always populated. In the group resource name, the @group_id@ is a unique identifier for a particular error group. The identifier is derived from key parts of the error-log content and is treated as Service Data. For information about how Service Data is handled, see <https://cloud.google.com/terms/cloud-privacy-notice Google Cloud Privacy Notice>.
+    groupId :: (Core.Maybe Core.Text),
+    -- | The group resource name. Written as @projects\/{projectID}\/groups\/{group_id}@ or @projects\/{projectID}\/locations\/{location}\/groups\/{group_id}@ Examples: @projects\/my-project-123\/groups\/my-group@, @projects\/my-project-123\/locations\/us-central1\/groups\/my-group@ In the group resource name, the @group_id@ is a unique identifier for a particular error group. The identifier is derived from key parts of the error-log content and is treated as Service Data. For information about how Service Data is handled, see <https://cloud.google.com/terms/cloud-privacy-notice Google Cloud Privacy Notice>. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified.
+    name :: (Core.Maybe Core.Text),
+    -- | Error group\'s resolution status. An unspecified resolution status will be interpreted as OPEN
+    resolutionStatus :: (Core.Maybe ErrorGroup_ResolutionStatus),
+    -- | Associated tracking issues.
+    trackingIssues :: (Core.Maybe [TrackingIssue])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ErrorGroup' with the minimum fields required to make a request.
+newErrorGroup ::
+  ErrorGroup
+newErrorGroup =
+  ErrorGroup
+    { groupId = Core.Nothing,
+      name = Core.Nothing,
+      resolutionStatus = Core.Nothing,
+      trackingIssues = Core.Nothing
+    }
+
+instance Core.FromJSON ErrorGroup where
+  parseJSON =
+    Core.withObject
+      "ErrorGroup"
+      ( \o ->
+          ErrorGroup
+            Core.<$> (o Core..:? "groupId")
+            Core.<*> (o Core..:? "name")
+            Core.<*> (o Core..:? "resolutionStatus")
+            Core.<*> (o Core..:? "trackingIssues")
+      )
+
+instance Core.ToJSON ErrorGroup where
+  toJSON ErrorGroup {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("groupId" Core..=) Core.<$> groupId,
+            ("name" Core..=) Core.<$> name,
+            ("resolutionStatus" Core..=) Core.<$> resolutionStatus,
+            ("trackingIssues" Core..=) Core.<$> trackingIssues
+          ]
+      )
+
+-- | Data extracted for a specific group based on certain filter criteria, such as a given time period and\/or service filter.
+--
+-- /See:/ 'newErrorGroupStats' smart constructor.
+data ErrorGroupStats = ErrorGroupStats
+  { -- | Service contexts with a non-zero error count for the given filter criteria. This list can be truncated if multiple services are affected. Refer to @num_affected_services@ for the total count.
+    affectedServices :: (Core.Maybe [ServiceContext]),
+    -- | Approximate number of affected users in the given group that match the filter criteria. Users are distinguished by data in the ErrorContext of the individual error events, such as their login name or their remote IP address in case of HTTP requests. The number of affected users can be zero even if the number of errors is non-zero if no data was provided from which the affected user could be deduced. Users are counted based on data in the request context that was provided in the error report. If more users are implicitly affected, such as due to a crash of the whole service, this is not reflected here.
+    affectedUsersCount :: (Core.Maybe Core.Int64),
+    -- | Approximate total number of events in the given group that match the filter criteria.
+    count :: (Core.Maybe Core.Int64),
+    -- | Approximate first occurrence that was ever seen for this group and which matches the given filter criteria, ignoring the time_range that was specified in the request.
+    firstSeenTime :: (Core.Maybe Core.DateTime),
+    -- | Group data that is independent of the filter criteria.
+    group' :: (Core.Maybe ErrorGroup),
+    -- | Approximate last occurrence that was ever seen for this group and which matches the given filter criteria, ignoring the time_range that was specified in the request.
+    lastSeenTime :: (Core.Maybe Core.DateTime),
+    -- | The total number of services with a non-zero error count for the given filter criteria.
+    numAffectedServices :: (Core.Maybe Core.Int32),
+    -- | An arbitrary event that is chosen as representative for the whole group. The representative event is intended to be used as a quick preview for the whole group. Events in the group are usually sufficiently similar to each other such that showing an arbitrary representative provides insight into the characteristics of the group as a whole.
+    representative :: (Core.Maybe ErrorEvent),
+    -- | Approximate number of occurrences over time. Timed counts returned by ListGroups are guaranteed to be: - Inside the requested time interval - Non-overlapping, and - Ordered by ascending time.
+    timedCounts :: (Core.Maybe [TimedCount])
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ErrorGroupStats' with the minimum fields required to make a request.
+newErrorGroupStats ::
+  ErrorGroupStats
+newErrorGroupStats =
+  ErrorGroupStats
+    { affectedServices = Core.Nothing,
+      affectedUsersCount = Core.Nothing,
+      count = Core.Nothing,
+      firstSeenTime = Core.Nothing,
+      group' = Core.Nothing,
+      lastSeenTime = Core.Nothing,
+      numAffectedServices = Core.Nothing,
+      representative = Core.Nothing,
+      timedCounts = Core.Nothing
+    }
+
+instance Core.FromJSON ErrorGroupStats where
+  parseJSON =
+    Core.withObject
+      "ErrorGroupStats"
+      ( \o ->
+          ErrorGroupStats
+            Core.<$> (o Core..:? "affectedServices")
+            Core.<*> ( o
+                         Core..:? "affectedUsersCount"
+                         Core.<&> Core.fmap Core.fromAsText
+                     )
+            Core.<*> (o Core..:? "count" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "firstSeenTime")
+            Core.<*> (o Core..:? "group")
+            Core.<*> (o Core..:? "lastSeenTime")
+            Core.<*> (o Core..:? "numAffectedServices")
+            Core.<*> (o Core..:? "representative")
+            Core.<*> (o Core..:? "timedCounts")
+      )
+
+instance Core.ToJSON ErrorGroupStats where
+  toJSON ErrorGroupStats {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("affectedServices" Core..=) Core.<$> affectedServices,
+            ("affectedUsersCount" Core..=)
+              Core.. Core.AsText
+              Core.<$> affectedUsersCount,
+            ("count" Core..=) Core.. Core.AsText Core.<$> count,
+            ("firstSeenTime" Core..=) Core.<$> firstSeenTime,
+            ("group" Core..=) Core.<$> group',
+            ("lastSeenTime" Core..=) Core.<$> lastSeenTime,
+            ("numAffectedServices" Core..=) Core.<$> numAffectedServices,
+            ("representative" Core..=) Core.<$> representative,
+            ("timedCounts" Core..=) Core.<$> timedCounts
+          ]
+      )
+
+-- | HTTP request data that is related to a reported error. This data should be provided by the application when reporting an error, unless the error report has been generated automatically from Google App Engine logs.
+--
+-- /See:/ 'newHttpRequestContext' smart constructor.
+data HttpRequestContext = HttpRequestContext
+  { -- | The type of HTTP request, such as @GET@, @POST@, etc.
+    method :: (Core.Maybe Core.Text),
+    -- | The referrer information that is provided with the request.
+    referrer :: (Core.Maybe Core.Text),
+    -- | The IP address from which the request originated. This can be IPv4, IPv6, or a token which is derived from the IP address, depending on the data that has been provided in the error report.
+    remoteIp :: (Core.Maybe Core.Text),
+    -- | The HTTP response status code for the request.
+    responseStatusCode :: (Core.Maybe Core.Int32),
+    -- | The URL of the request.
+    url :: (Core.Maybe Core.Text),
+    -- | The user agent information that is provided with the request.
+    userAgent :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'HttpRequestContext' with the minimum fields required to make a request.
+newHttpRequestContext ::
+  HttpRequestContext
+newHttpRequestContext =
+  HttpRequestContext
+    { method = Core.Nothing,
+      referrer = Core.Nothing,
+      remoteIp = Core.Nothing,
+      responseStatusCode = Core.Nothing,
+      url = Core.Nothing,
+      userAgent = Core.Nothing
+    }
+
+instance Core.FromJSON HttpRequestContext where
+  parseJSON =
+    Core.withObject
+      "HttpRequestContext"
+      ( \o ->
+          HttpRequestContext
+            Core.<$> (o Core..:? "method")
+            Core.<*> (o Core..:? "referrer")
+            Core.<*> (o Core..:? "remoteIp")
+            Core.<*> (o Core..:? "responseStatusCode")
+            Core.<*> (o Core..:? "url")
+            Core.<*> (o Core..:? "userAgent")
+      )
+
+instance Core.ToJSON HttpRequestContext where
+  toJSON HttpRequestContext {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("method" Core..=) Core.<$> method,
+            ("referrer" Core..=) Core.<$> referrer,
+            ("remoteIp" Core..=) Core.<$> remoteIp,
+            ("responseStatusCode" Core..=) Core.<$> responseStatusCode,
+            ("url" Core..=) Core.<$> url,
+            ("userAgent" Core..=) Core.<$> userAgent
+          ]
+      )
+
+-- | Contains a set of requested error events.
+--
+-- /See:/ 'newListEventsResponse' smart constructor.
+data ListEventsResponse = ListEventsResponse
+  { -- | The error events which match the given request.
+    errorEvents :: (Core.Maybe [ErrorEvent]),
+    -- | If non-empty, more results are available. Pass this token, along with the same query parameters as the first request, to view the next page of results.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | The timestamp specifies the start time to which the request was restricted.
+    timeRangeBegin :: (Core.Maybe Core.DateTime)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ListEventsResponse' with the minimum fields required to make a request.
+newListEventsResponse ::
+  ListEventsResponse
+newListEventsResponse =
+  ListEventsResponse
+    { errorEvents = Core.Nothing,
+      nextPageToken = Core.Nothing,
+      timeRangeBegin = Core.Nothing
+    }
+
+instance Core.FromJSON ListEventsResponse where
+  parseJSON =
+    Core.withObject
+      "ListEventsResponse"
+      ( \o ->
+          ListEventsResponse
+            Core.<$> (o Core..:? "errorEvents")
+            Core.<*> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "timeRangeBegin")
+      )
+
+instance Core.ToJSON ListEventsResponse where
+  toJSON ListEventsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("errorEvents" Core..=) Core.<$> errorEvents,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("timeRangeBegin" Core..=) Core.<$> timeRangeBegin
+          ]
+      )
+
+-- | Contains a set of requested error group stats.
+--
+-- /See:/ 'newListGroupStatsResponse' smart constructor.
+data ListGroupStatsResponse = ListGroupStatsResponse
+  { -- | The error group stats which match the given request.
+    errorGroupStats :: (Core.Maybe [ErrorGroupStats]),
+    -- | If non-empty, more results are available. Pass this token, along with the same query parameters as the first request, to view the next page of results.
+    nextPageToken :: (Core.Maybe Core.Text),
+    -- | The timestamp specifies the start time to which the request was restricted. The start time is set based on the requested time range. It may be adjusted to a later time if a project has exceeded the storage quota and older data has been deleted.
+    timeRangeBegin :: (Core.Maybe Core.DateTime)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ListGroupStatsResponse' with the minimum fields required to make a request.
+newListGroupStatsResponse ::
+  ListGroupStatsResponse
+newListGroupStatsResponse =
+  ListGroupStatsResponse
+    { errorGroupStats = Core.Nothing,
+      nextPageToken = Core.Nothing,
+      timeRangeBegin = Core.Nothing
+    }
+
+instance Core.FromJSON ListGroupStatsResponse where
+  parseJSON =
+    Core.withObject
+      "ListGroupStatsResponse"
+      ( \o ->
+          ListGroupStatsResponse
+            Core.<$> (o Core..:? "errorGroupStats")
+            Core.<*> (o Core..:? "nextPageToken")
+            Core.<*> (o Core..:? "timeRangeBegin")
+      )
+
+instance Core.ToJSON ListGroupStatsResponse where
+  toJSON ListGroupStatsResponse {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("errorGroupStats" Core..=) Core.<$> errorGroupStats,
+            ("nextPageToken" Core..=) Core.<$> nextPageToken,
+            ("timeRangeBegin" Core..=) Core.<$> timeRangeBegin
+          ]
+      )
+
+-- | Response for reporting an individual error event. Data may be added to this message in the future.
+--
+-- /See:/ 'newReportErrorEventResponse' smart constructor.
+data ReportErrorEventResponse = ReportErrorEventResponse
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ReportErrorEventResponse' with the minimum fields required to make a request.
+newReportErrorEventResponse ::
+  ReportErrorEventResponse
+newReportErrorEventResponse = ReportErrorEventResponse
+
+instance Core.FromJSON ReportErrorEventResponse where
+  parseJSON =
+    Core.withObject
+      "ReportErrorEventResponse"
+      (\o -> Core.pure ReportErrorEventResponse)
+
+instance Core.ToJSON ReportErrorEventResponse where
+  toJSON = Core.const Core.emptyObject
+
+-- | An error event which is reported to the Error Reporting system.
+--
+-- /See:/ 'newReportedErrorEvent' smart constructor.
+data ReportedErrorEvent = ReportedErrorEvent
+  { -- | Optional. A description of the context in which the error occurred.
+    context :: (Core.Maybe ErrorContext),
+    -- | Optional. Time when the event occurred. If not provided, the time when the event was received by the Error Reporting system is used. If provided, the time must not exceed the <https://cloud.google.com/logging/quotas#logs_retention_periods logs retention period> in the past, or be more than 24 hours in the future. If an invalid time is provided, then an error is returned.
+    eventTime :: (Core.Maybe Core.DateTime),
+    -- | Required. The error message. If no @context.reportLocation@ is provided, the message must contain a header (typically consisting of the exception type name and an error message) and an exception stack trace in one of the supported programming languages and formats. Supported languages are Java, Python, JavaScript, Ruby, C#, PHP, and Go. Supported stack trace formats are: * __Java__: Must be the return value of <https://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html#printStackTrace%28%29 Throwable.printStackTrace()>. * __Python__: Must be the return value of <https://docs.python.org/2/library/traceback.html#traceback.format_exc traceback.format_exc()>. * __JavaScript__: Must be the value of <https://github.com/v8/v8/wiki/Stack-Trace-API error.stack> as returned by V8. * __Ruby__: Must contain frames returned by <https://ruby-doc.org/core-2.2.0/Exception.html#method-i-backtrace Exception.backtrace>. * __C#__: Must be the return value of
+    -- <https://msdn.microsoft.com/en-us/library/system.exception.tostring.aspx Exception.ToString()>. * __PHP__: Must be prefixed with @\"PHP (Notice|Parse error|Fatal error|Warning): \"@ and contain the result of <https://php.net/manual/en/exception.tostring.php (string)$exception>. * __Go__: Must be the return value of <https://pkg.go.dev/runtime/debug#Stack debug.Stack()>.
+    message :: (Core.Maybe Core.Text),
+    -- | Required. The service context in which this error has occurred.
+    serviceContext :: (Core.Maybe ServiceContext)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ReportedErrorEvent' with the minimum fields required to make a request.
+newReportedErrorEvent ::
+  ReportedErrorEvent
+newReportedErrorEvent =
+  ReportedErrorEvent
+    { context = Core.Nothing,
+      eventTime = Core.Nothing,
+      message = Core.Nothing,
+      serviceContext = Core.Nothing
+    }
+
+instance Core.FromJSON ReportedErrorEvent where
+  parseJSON =
+    Core.withObject
+      "ReportedErrorEvent"
+      ( \o ->
+          ReportedErrorEvent
+            Core.<$> (o Core..:? "context")
+            Core.<*> (o Core..:? "eventTime")
+            Core.<*> (o Core..:? "message")
+            Core.<*> (o Core..:? "serviceContext")
+      )
+
+instance Core.ToJSON ReportedErrorEvent where
+  toJSON ReportedErrorEvent {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("context" Core..=) Core.<$> context,
+            ("eventTime" Core..=) Core.<$> eventTime,
+            ("message" Core..=) Core.<$> message,
+            ("serviceContext" Core..=) Core.<$> serviceContext
+          ]
+      )
+
+-- | Describes a running service that sends errors. Its version changes over time and multiple versions can run in parallel.
+--
+-- /See:/ 'newServiceContext' smart constructor.
+data ServiceContext = ServiceContext
+  { -- | Type of the MonitoredResource. List of possible values: https:\/\/cloud.google.com\/monitoring\/api\/resources Value is set automatically for incoming errors and must not be set when reporting errors.
+    resourceType :: (Core.Maybe Core.Text),
+    -- | An identifier of the service, such as the name of the executable, job, or Google App Engine service name. This field is expected to have a low number of values that are relatively stable over time, as opposed to @version@, which can be changed whenever new code is deployed. Contains the service name for error reports extracted from Google App Engine logs or @default@ if the App Engine default service is used.
+    service :: (Core.Maybe Core.Text),
+    -- | Represents the source code version that the developer provided, which could represent a version label or a Git SHA-1 hash, for example. For App Engine standard environment, the version is set to the version of the app.
+    version :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'ServiceContext' with the minimum fields required to make a request.
+newServiceContext ::
+  ServiceContext
+newServiceContext =
+  ServiceContext
+    { resourceType = Core.Nothing,
+      service = Core.Nothing,
+      version = Core.Nothing
+    }
+
+instance Core.FromJSON ServiceContext where
+  parseJSON =
+    Core.withObject
+      "ServiceContext"
+      ( \o ->
+          ServiceContext
+            Core.<$> (o Core..:? "resourceType")
+            Core.<*> (o Core..:? "service")
+            Core.<*> (o Core..:? "version")
+      )
+
+instance Core.ToJSON ServiceContext where
+  toJSON ServiceContext {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("resourceType" Core..=) Core.<$> resourceType,
+            ("service" Core..=) Core.<$> service,
+            ("version" Core..=) Core.<$> version
+          ]
+      )
+
+-- | Indicates a location in the source code of the service for which errors are reported. @functionName@ must be provided by the application when reporting an error, unless the error report contains a @message@ with a supported exception stack trace. All fields are optional for the later case.
+--
+-- /See:/ 'newSourceLocation' smart constructor.
+data SourceLocation = SourceLocation
+  { -- | The source code filename, which can include a truncated relative path, or a full path from a production machine.
+    filePath :: (Core.Maybe Core.Text),
+    -- | Human-readable name of a function or method. The value can include optional context like the class or package name. For example, @my.package.MyClass.method@ in case of Java.
+    functionName :: (Core.Maybe Core.Text),
+    -- | 1-based. 0 indicates that the line number is unknown.
+    lineNumber :: (Core.Maybe Core.Int32)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SourceLocation' with the minimum fields required to make a request.
+newSourceLocation ::
+  SourceLocation
+newSourceLocation =
+  SourceLocation
+    { filePath = Core.Nothing,
+      functionName = Core.Nothing,
+      lineNumber = Core.Nothing
+    }
+
+instance Core.FromJSON SourceLocation where
+  parseJSON =
+    Core.withObject
+      "SourceLocation"
+      ( \o ->
+          SourceLocation
+            Core.<$> (o Core..:? "filePath")
+            Core.<*> (o Core..:? "functionName")
+            Core.<*> (o Core..:? "lineNumber")
+      )
+
+instance Core.ToJSON SourceLocation where
+  toJSON SourceLocation {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("filePath" Core..=) Core.<$> filePath,
+            ("functionName" Core..=) Core.<$> functionName,
+            ("lineNumber" Core..=) Core.<$> lineNumber
+          ]
+      )
+
+-- | A reference to a particular snapshot of the source tree used to build and deploy an application.
+--
+-- /See:/ 'newSourceReference' smart constructor.
+data SourceReference = SourceReference
+  { -- | Optional. A URI string identifying the repository. Example: \"https:\/\/github.com\/GoogleCloudPlatform\/kubernetes.git\"
+    repository :: (Core.Maybe Core.Text),
+    -- | The canonical and persistent identifier of the deployed revision. Example (git): \"0035781c50ec7aa23385dc841529ce8a4b70db1b\"
+    revisionId :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'SourceReference' with the minimum fields required to make a request.
+newSourceReference ::
+  SourceReference
+newSourceReference =
+  SourceReference
+    { repository = Core.Nothing,
+      revisionId = Core.Nothing
+    }
+
+instance Core.FromJSON SourceReference where
+  parseJSON =
+    Core.withObject
+      "SourceReference"
+      ( \o ->
+          SourceReference
+            Core.<$> (o Core..:? "repository")
+            Core.<*> (o Core..:? "revisionId")
+      )
+
+instance Core.ToJSON SourceReference where
+  toJSON SourceReference {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("repository" Core..=) Core.<$> repository,
+            ("revisionId" Core..=) Core.<$> revisionId
+          ]
+      )
+
+-- | The number of errors in a given time period. All numbers are approximate since the error events are sampled before counting them.
+--
+-- /See:/ 'newTimedCount' smart constructor.
+data TimedCount = TimedCount
+  { -- | Approximate number of occurrences in the given time period.
+    count :: (Core.Maybe Core.Int64),
+    -- | End of the time period to which @count@ refers (excluded).
+    endTime :: (Core.Maybe Core.DateTime),
+    -- | Start of the time period to which @count@ refers (included).
+    startTime :: (Core.Maybe Core.DateTime)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'TimedCount' with the minimum fields required to make a request.
+newTimedCount ::
+  TimedCount
+newTimedCount =
+  TimedCount
+    { count = Core.Nothing,
+      endTime = Core.Nothing,
+      startTime = Core.Nothing
+    }
+
+instance Core.FromJSON TimedCount where
+  parseJSON =
+    Core.withObject
+      "TimedCount"
+      ( \o ->
+          TimedCount
+            Core.<$> (o Core..:? "count" Core.<&> Core.fmap Core.fromAsText)
+            Core.<*> (o Core..:? "endTime")
+            Core.<*> (o Core..:? "startTime")
+      )
+
+instance Core.ToJSON TimedCount where
+  toJSON TimedCount {..} =
+    Core.object
+      ( Core.catMaybes
+          [ ("count" Core..=) Core.. Core.AsText Core.<$> count,
+            ("endTime" Core..=) Core.<$> endTime,
+            ("startTime" Core..=) Core.<$> startTime
+          ]
+      )
+
+-- | Information related to tracking the progress on resolving the error.
+--
+-- /See:/ 'newTrackingIssue' smart constructor.
+newtype TrackingIssue = TrackingIssue
+  { -- | A URL pointing to a related entry in an issue tracking system. Example: @https:\/\/github.com\/user\/project\/issues\/4@
+    url :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'TrackingIssue' with the minimum fields required to make a request.
+newTrackingIssue ::
+  TrackingIssue
+newTrackingIssue = TrackingIssue {url = Core.Nothing}
+
+instance Core.FromJSON TrackingIssue where
+  parseJSON =
+    Core.withObject
+      "TrackingIssue"
+      (\o -> TrackingIssue Core.<$> (o Core..:? "url"))
+
+instance Core.ToJSON TrackingIssue where
+  toJSON TrackingIssue {..} =
+    Core.object (Core.catMaybes [("url" Core..=) Core.<$> url])
diff --git a/gen/Gogol/CloudErrorReporting/Internal/Sum.hs b/gen/Gogol/CloudErrorReporting/Internal/Sum.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/CloudErrorReporting/Internal/Sum.hs
@@ -0,0 +1,531 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.CloudErrorReporting.Internal.Sum
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+module Gogol.CloudErrorReporting.Internal.Sum
+  ( -- * Xgafv
+    Xgafv
+      ( Xgafv_1,
+        Xgafv_2,
+        ..
+      ),
+
+    -- * ErrorGroup_ResolutionStatus
+    ErrorGroup_ResolutionStatus
+      ( ErrorGroup_ResolutionStatus_RESOLUTIONSTATUSUNSPECIFIED,
+        ErrorGroup_ResolutionStatus_Open,
+        ErrorGroup_ResolutionStatus_Acknowledged,
+        ErrorGroup_ResolutionStatus_Resolved,
+        ErrorGroup_ResolutionStatus_Muted,
+        ..
+      ),
+
+    -- * ProjectsEventsListTimeRangePeriod
+    ProjectsEventsListTimeRangePeriod
+      ( ProjectsEventsListTimeRangePeriod_PERIODUNSPECIFIED,
+        ProjectsEventsListTimeRangePeriod_PERIOD1HOUR,
+        ProjectsEventsListTimeRangePeriod_PERIOD6HOURS,
+        ProjectsEventsListTimeRangePeriod_PERIOD1DAY,
+        ProjectsEventsListTimeRangePeriod_PERIOD1WEEK,
+        ProjectsEventsListTimeRangePeriod_PERIOD30DAYS,
+        ..
+      ),
+
+    -- * ProjectsGroupStatsListAlignment
+    ProjectsGroupStatsListAlignment
+      ( ProjectsGroupStatsListAlignment_ERRORCOUNTALIGNMENTUNSPECIFIED,
+        ProjectsGroupStatsListAlignment_ALIGNMENTEQUALROUNDED,
+        ProjectsGroupStatsListAlignment_ALIGNMENTEQUALATEND,
+        ..
+      ),
+
+    -- * ProjectsGroupStatsListOrder
+    ProjectsGroupStatsListOrder
+      ( ProjectsGroupStatsListOrder_GROUPORDERUNSPECIFIED,
+        ProjectsGroupStatsListOrder_COUNTDESC,
+        ProjectsGroupStatsListOrder_LASTSEENDESC,
+        ProjectsGroupStatsListOrder_CREATEDDESC,
+        ProjectsGroupStatsListOrder_AFFECTEDUSERSDESC,
+        ..
+      ),
+
+    -- * ProjectsGroupStatsListTimeRangePeriod
+    ProjectsGroupStatsListTimeRangePeriod
+      ( ProjectsGroupStatsListTimeRangePeriod_PERIODUNSPECIFIED,
+        ProjectsGroupStatsListTimeRangePeriod_PERIOD1HOUR,
+        ProjectsGroupStatsListTimeRangePeriod_PERIOD6HOURS,
+        ProjectsGroupStatsListTimeRangePeriod_PERIOD1DAY,
+        ProjectsGroupStatsListTimeRangePeriod_PERIOD1WEEK,
+        ProjectsGroupStatsListTimeRangePeriod_PERIOD30DAYS,
+        ..
+      ),
+
+    -- * ProjectsLocationsEventsListTimeRangePeriod
+    ProjectsLocationsEventsListTimeRangePeriod
+      ( ProjectsLocationsEventsListTimeRangePeriod_PERIODUNSPECIFIED,
+        ProjectsLocationsEventsListTimeRangePeriod_PERIOD1HOUR,
+        ProjectsLocationsEventsListTimeRangePeriod_PERIOD6HOURS,
+        ProjectsLocationsEventsListTimeRangePeriod_PERIOD1DAY,
+        ProjectsLocationsEventsListTimeRangePeriod_PERIOD1WEEK,
+        ProjectsLocationsEventsListTimeRangePeriod_PERIOD30DAYS,
+        ..
+      ),
+
+    -- * ProjectsLocationsGroupStatsListAlignment
+    ProjectsLocationsGroupStatsListAlignment
+      ( ProjectsLocationsGroupStatsListAlignment_ERRORCOUNTALIGNMENTUNSPECIFIED,
+        ProjectsLocationsGroupStatsListAlignment_ALIGNMENTEQUALROUNDED,
+        ProjectsLocationsGroupStatsListAlignment_ALIGNMENTEQUALATEND,
+        ..
+      ),
+
+    -- * ProjectsLocationsGroupStatsListOrder
+    ProjectsLocationsGroupStatsListOrder
+      ( ProjectsLocationsGroupStatsListOrder_GROUPORDERUNSPECIFIED,
+        ProjectsLocationsGroupStatsListOrder_COUNTDESC,
+        ProjectsLocationsGroupStatsListOrder_LASTSEENDESC,
+        ProjectsLocationsGroupStatsListOrder_CREATEDDESC,
+        ProjectsLocationsGroupStatsListOrder_AFFECTEDUSERSDESC,
+        ..
+      ),
+
+    -- * ProjectsLocationsGroupStatsListTimeRangePeriod
+    ProjectsLocationsGroupStatsListTimeRangePeriod
+      ( ProjectsLocationsGroupStatsListTimeRangePeriod_PERIODUNSPECIFIED,
+        ProjectsLocationsGroupStatsListTimeRangePeriod_PERIOD1HOUR,
+        ProjectsLocationsGroupStatsListTimeRangePeriod_PERIOD6HOURS,
+        ProjectsLocationsGroupStatsListTimeRangePeriod_PERIOD1DAY,
+        ProjectsLocationsGroupStatsListTimeRangePeriod_PERIOD1WEEK,
+        ProjectsLocationsGroupStatsListTimeRangePeriod_PERIOD30DAYS,
+        ..
+      ),
+  )
+where
+
+import Gogol.Prelude qualified as Core
+
+-- | V1 error format.
+newtype Xgafv = Xgafv {fromXgafv :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | v1 error format
+pattern Xgafv_1 :: Xgafv
+pattern Xgafv_1 = Xgafv "1"
+
+-- | v2 error format
+pattern Xgafv_2 :: Xgafv
+pattern Xgafv_2 = Xgafv "2"
+
+{-# COMPLETE
+  Xgafv_1,
+  Xgafv_2,
+  Xgafv
+  #-}
+
+-- | Error group\'s resolution status. An unspecified resolution status will be interpreted as OPEN
+newtype ErrorGroup_ResolutionStatus = ErrorGroup_ResolutionStatus {fromErrorGroup_ResolutionStatus :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Status is unknown. When left unspecified in requests, it is treated like OPEN.
+pattern ErrorGroup_ResolutionStatus_RESOLUTIONSTATUSUNSPECIFIED :: ErrorGroup_ResolutionStatus
+pattern ErrorGroup_ResolutionStatus_RESOLUTIONSTATUSUNSPECIFIED = ErrorGroup_ResolutionStatus "RESOLUTION_STATUS_UNSPECIFIED"
+
+-- | The error group is not being addressed. This is the default for new groups. It is also used for errors re-occurring after marked RESOLVED.
+pattern ErrorGroup_ResolutionStatus_Open :: ErrorGroup_ResolutionStatus
+pattern ErrorGroup_ResolutionStatus_Open = ErrorGroup_ResolutionStatus "OPEN"
+
+-- | Error Group manually acknowledged, it can have an issue link attached.
+pattern ErrorGroup_ResolutionStatus_Acknowledged :: ErrorGroup_ResolutionStatus
+pattern ErrorGroup_ResolutionStatus_Acknowledged = ErrorGroup_ResolutionStatus "ACKNOWLEDGED"
+
+-- | Error Group manually resolved, more events for this group are not expected to occur.
+pattern ErrorGroup_ResolutionStatus_Resolved :: ErrorGroup_ResolutionStatus
+pattern ErrorGroup_ResolutionStatus_Resolved = ErrorGroup_ResolutionStatus "RESOLVED"
+
+-- | The error group is muted and excluded by default on group stats requests.
+pattern ErrorGroup_ResolutionStatus_Muted :: ErrorGroup_ResolutionStatus
+pattern ErrorGroup_ResolutionStatus_Muted = ErrorGroup_ResolutionStatus "MUTED"
+
+{-# COMPLETE
+  ErrorGroup_ResolutionStatus_RESOLUTIONSTATUSUNSPECIFIED,
+  ErrorGroup_ResolutionStatus_Open,
+  ErrorGroup_ResolutionStatus_Acknowledged,
+  ErrorGroup_ResolutionStatus_Resolved,
+  ErrorGroup_ResolutionStatus_Muted,
+  ErrorGroup_ResolutionStatus
+  #-}
+
+-- | Restricts the query to the specified time range.
+newtype ProjectsEventsListTimeRangePeriod = ProjectsEventsListTimeRangePeriod {fromProjectsEventsListTimeRangePeriod :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Do not use.
+pattern ProjectsEventsListTimeRangePeriod_PERIODUNSPECIFIED :: ProjectsEventsListTimeRangePeriod
+pattern ProjectsEventsListTimeRangePeriod_PERIODUNSPECIFIED = ProjectsEventsListTimeRangePeriod "PERIOD_UNSPECIFIED"
+
+-- | Retrieve data for the last hour. Recommended minimum timed count duration: 1 min.
+pattern ProjectsEventsListTimeRangePeriod_PERIOD1HOUR :: ProjectsEventsListTimeRangePeriod
+pattern ProjectsEventsListTimeRangePeriod_PERIOD1HOUR = ProjectsEventsListTimeRangePeriod "PERIOD_1_HOUR"
+
+-- | Retrieve data for the last 6 hours. Recommended minimum timed count duration: 10 min.
+pattern ProjectsEventsListTimeRangePeriod_PERIOD6HOURS :: ProjectsEventsListTimeRangePeriod
+pattern ProjectsEventsListTimeRangePeriod_PERIOD6HOURS = ProjectsEventsListTimeRangePeriod "PERIOD_6_HOURS"
+
+-- | Retrieve data for the last day. Recommended minimum timed count duration: 1 hour.
+pattern ProjectsEventsListTimeRangePeriod_PERIOD1DAY :: ProjectsEventsListTimeRangePeriod
+pattern ProjectsEventsListTimeRangePeriod_PERIOD1DAY = ProjectsEventsListTimeRangePeriod "PERIOD_1_DAY"
+
+-- | Retrieve data for the last week. Recommended minimum timed count duration: 6 hours.
+pattern ProjectsEventsListTimeRangePeriod_PERIOD1WEEK :: ProjectsEventsListTimeRangePeriod
+pattern ProjectsEventsListTimeRangePeriod_PERIOD1WEEK = ProjectsEventsListTimeRangePeriod "PERIOD_1_WEEK"
+
+-- | Retrieve data for the last 30 days. Recommended minimum timed count duration: 1 day.
+pattern ProjectsEventsListTimeRangePeriod_PERIOD30DAYS :: ProjectsEventsListTimeRangePeriod
+pattern ProjectsEventsListTimeRangePeriod_PERIOD30DAYS = ProjectsEventsListTimeRangePeriod "PERIOD_30_DAYS"
+
+{-# COMPLETE
+  ProjectsEventsListTimeRangePeriod_PERIODUNSPECIFIED,
+  ProjectsEventsListTimeRangePeriod_PERIOD1HOUR,
+  ProjectsEventsListTimeRangePeriod_PERIOD6HOURS,
+  ProjectsEventsListTimeRangePeriod_PERIOD1DAY,
+  ProjectsEventsListTimeRangePeriod_PERIOD1WEEK,
+  ProjectsEventsListTimeRangePeriod_PERIOD30DAYS,
+  ProjectsEventsListTimeRangePeriod
+  #-}
+
+-- | Optional. The alignment of the timed counts to be returned. Default is @ALIGNMENT_EQUAL_AT_END@.
+newtype ProjectsGroupStatsListAlignment = ProjectsGroupStatsListAlignment {fromProjectsGroupStatsListAlignment :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | No alignment specified.
+pattern ProjectsGroupStatsListAlignment_ERRORCOUNTALIGNMENTUNSPECIFIED :: ProjectsGroupStatsListAlignment
+pattern ProjectsGroupStatsListAlignment_ERRORCOUNTALIGNMENTUNSPECIFIED = ProjectsGroupStatsListAlignment "ERROR_COUNT_ALIGNMENT_UNSPECIFIED"
+
+-- | The time periods shall be consecutive, have width equal to the requested duration, and be aligned at the alignment/time provided in the request. The alignment/time does not have to be inside the query period but even if it is outside, only time periods are returned which overlap with the query period. A rounded alignment will typically result in a different size of the first or the last time period.
+pattern ProjectsGroupStatsListAlignment_ALIGNMENTEQUALROUNDED :: ProjectsGroupStatsListAlignment
+pattern ProjectsGroupStatsListAlignment_ALIGNMENTEQUALROUNDED = ProjectsGroupStatsListAlignment "ALIGNMENT_EQUAL_ROUNDED"
+
+-- | The time periods shall be consecutive, have width equal to the requested duration, and be aligned at the end of the requested time period. This can result in a different size of the first time period.
+pattern ProjectsGroupStatsListAlignment_ALIGNMENTEQUALATEND :: ProjectsGroupStatsListAlignment
+pattern ProjectsGroupStatsListAlignment_ALIGNMENTEQUALATEND = ProjectsGroupStatsListAlignment "ALIGNMENT_EQUAL_AT_END"
+
+{-# COMPLETE
+  ProjectsGroupStatsListAlignment_ERRORCOUNTALIGNMENTUNSPECIFIED,
+  ProjectsGroupStatsListAlignment_ALIGNMENTEQUALROUNDED,
+  ProjectsGroupStatsListAlignment_ALIGNMENTEQUALATEND,
+  ProjectsGroupStatsListAlignment
+  #-}
+
+-- | Optional. The sort order in which the results are returned. Default is @COUNT_DESC@.
+newtype ProjectsGroupStatsListOrder = ProjectsGroupStatsListOrder {fromProjectsGroupStatsListOrder :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | No group order specified.
+pattern ProjectsGroupStatsListOrder_GROUPORDERUNSPECIFIED :: ProjectsGroupStatsListOrder
+pattern ProjectsGroupStatsListOrder_GROUPORDERUNSPECIFIED = ProjectsGroupStatsListOrder "GROUP_ORDER_UNSPECIFIED"
+
+-- | Total count of errors in the given time window in descending order.
+pattern ProjectsGroupStatsListOrder_COUNTDESC :: ProjectsGroupStatsListOrder
+pattern ProjectsGroupStatsListOrder_COUNTDESC = ProjectsGroupStatsListOrder "COUNT_DESC"
+
+-- | Timestamp when the group was last seen in the given time window in descending order.
+pattern ProjectsGroupStatsListOrder_LASTSEENDESC :: ProjectsGroupStatsListOrder
+pattern ProjectsGroupStatsListOrder_LASTSEENDESC = ProjectsGroupStatsListOrder "LAST_SEEN_DESC"
+
+-- | Timestamp when the group was created in descending order.
+pattern ProjectsGroupStatsListOrder_CREATEDDESC :: ProjectsGroupStatsListOrder
+pattern ProjectsGroupStatsListOrder_CREATEDDESC = ProjectsGroupStatsListOrder "CREATED_DESC"
+
+-- | Number of affected users in the given time window in descending order.
+pattern ProjectsGroupStatsListOrder_AFFECTEDUSERSDESC :: ProjectsGroupStatsListOrder
+pattern ProjectsGroupStatsListOrder_AFFECTEDUSERSDESC = ProjectsGroupStatsListOrder "AFFECTED_USERS_DESC"
+
+{-# COMPLETE
+  ProjectsGroupStatsListOrder_GROUPORDERUNSPECIFIED,
+  ProjectsGroupStatsListOrder_COUNTDESC,
+  ProjectsGroupStatsListOrder_LASTSEENDESC,
+  ProjectsGroupStatsListOrder_CREATEDDESC,
+  ProjectsGroupStatsListOrder_AFFECTEDUSERSDESC,
+  ProjectsGroupStatsListOrder
+  #-}
+
+-- | Restricts the query to the specified time range.
+newtype ProjectsGroupStatsListTimeRangePeriod = ProjectsGroupStatsListTimeRangePeriod {fromProjectsGroupStatsListTimeRangePeriod :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Do not use.
+pattern ProjectsGroupStatsListTimeRangePeriod_PERIODUNSPECIFIED :: ProjectsGroupStatsListTimeRangePeriod
+pattern ProjectsGroupStatsListTimeRangePeriod_PERIODUNSPECIFIED = ProjectsGroupStatsListTimeRangePeriod "PERIOD_UNSPECIFIED"
+
+-- | Retrieve data for the last hour. Recommended minimum timed count duration: 1 min.
+pattern ProjectsGroupStatsListTimeRangePeriod_PERIOD1HOUR :: ProjectsGroupStatsListTimeRangePeriod
+pattern ProjectsGroupStatsListTimeRangePeriod_PERIOD1HOUR = ProjectsGroupStatsListTimeRangePeriod "PERIOD_1_HOUR"
+
+-- | Retrieve data for the last 6 hours. Recommended minimum timed count duration: 10 min.
+pattern ProjectsGroupStatsListTimeRangePeriod_PERIOD6HOURS :: ProjectsGroupStatsListTimeRangePeriod
+pattern ProjectsGroupStatsListTimeRangePeriod_PERIOD6HOURS = ProjectsGroupStatsListTimeRangePeriod "PERIOD_6_HOURS"
+
+-- | Retrieve data for the last day. Recommended minimum timed count duration: 1 hour.
+pattern ProjectsGroupStatsListTimeRangePeriod_PERIOD1DAY :: ProjectsGroupStatsListTimeRangePeriod
+pattern ProjectsGroupStatsListTimeRangePeriod_PERIOD1DAY = ProjectsGroupStatsListTimeRangePeriod "PERIOD_1_DAY"
+
+-- | Retrieve data for the last week. Recommended minimum timed count duration: 6 hours.
+pattern ProjectsGroupStatsListTimeRangePeriod_PERIOD1WEEK :: ProjectsGroupStatsListTimeRangePeriod
+pattern ProjectsGroupStatsListTimeRangePeriod_PERIOD1WEEK = ProjectsGroupStatsListTimeRangePeriod "PERIOD_1_WEEK"
+
+-- | Retrieve data for the last 30 days. Recommended minimum timed count duration: 1 day.
+pattern ProjectsGroupStatsListTimeRangePeriod_PERIOD30DAYS :: ProjectsGroupStatsListTimeRangePeriod
+pattern ProjectsGroupStatsListTimeRangePeriod_PERIOD30DAYS = ProjectsGroupStatsListTimeRangePeriod "PERIOD_30_DAYS"
+
+{-# COMPLETE
+  ProjectsGroupStatsListTimeRangePeriod_PERIODUNSPECIFIED,
+  ProjectsGroupStatsListTimeRangePeriod_PERIOD1HOUR,
+  ProjectsGroupStatsListTimeRangePeriod_PERIOD6HOURS,
+  ProjectsGroupStatsListTimeRangePeriod_PERIOD1DAY,
+  ProjectsGroupStatsListTimeRangePeriod_PERIOD1WEEK,
+  ProjectsGroupStatsListTimeRangePeriod_PERIOD30DAYS,
+  ProjectsGroupStatsListTimeRangePeriod
+  #-}
+
+-- | Restricts the query to the specified time range.
+newtype ProjectsLocationsEventsListTimeRangePeriod = ProjectsLocationsEventsListTimeRangePeriod {fromProjectsLocationsEventsListTimeRangePeriod :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Do not use.
+pattern ProjectsLocationsEventsListTimeRangePeriod_PERIODUNSPECIFIED :: ProjectsLocationsEventsListTimeRangePeriod
+pattern ProjectsLocationsEventsListTimeRangePeriod_PERIODUNSPECIFIED = ProjectsLocationsEventsListTimeRangePeriod "PERIOD_UNSPECIFIED"
+
+-- | Retrieve data for the last hour. Recommended minimum timed count duration: 1 min.
+pattern ProjectsLocationsEventsListTimeRangePeriod_PERIOD1HOUR :: ProjectsLocationsEventsListTimeRangePeriod
+pattern ProjectsLocationsEventsListTimeRangePeriod_PERIOD1HOUR = ProjectsLocationsEventsListTimeRangePeriod "PERIOD_1_HOUR"
+
+-- | Retrieve data for the last 6 hours. Recommended minimum timed count duration: 10 min.
+pattern ProjectsLocationsEventsListTimeRangePeriod_PERIOD6HOURS :: ProjectsLocationsEventsListTimeRangePeriod
+pattern ProjectsLocationsEventsListTimeRangePeriod_PERIOD6HOURS = ProjectsLocationsEventsListTimeRangePeriod "PERIOD_6_HOURS"
+
+-- | Retrieve data for the last day. Recommended minimum timed count duration: 1 hour.
+pattern ProjectsLocationsEventsListTimeRangePeriod_PERIOD1DAY :: ProjectsLocationsEventsListTimeRangePeriod
+pattern ProjectsLocationsEventsListTimeRangePeriod_PERIOD1DAY = ProjectsLocationsEventsListTimeRangePeriod "PERIOD_1_DAY"
+
+-- | Retrieve data for the last week. Recommended minimum timed count duration: 6 hours.
+pattern ProjectsLocationsEventsListTimeRangePeriod_PERIOD1WEEK :: ProjectsLocationsEventsListTimeRangePeriod
+pattern ProjectsLocationsEventsListTimeRangePeriod_PERIOD1WEEK = ProjectsLocationsEventsListTimeRangePeriod "PERIOD_1_WEEK"
+
+-- | Retrieve data for the last 30 days. Recommended minimum timed count duration: 1 day.
+pattern ProjectsLocationsEventsListTimeRangePeriod_PERIOD30DAYS :: ProjectsLocationsEventsListTimeRangePeriod
+pattern ProjectsLocationsEventsListTimeRangePeriod_PERIOD30DAYS = ProjectsLocationsEventsListTimeRangePeriod "PERIOD_30_DAYS"
+
+{-# COMPLETE
+  ProjectsLocationsEventsListTimeRangePeriod_PERIODUNSPECIFIED,
+  ProjectsLocationsEventsListTimeRangePeriod_PERIOD1HOUR,
+  ProjectsLocationsEventsListTimeRangePeriod_PERIOD6HOURS,
+  ProjectsLocationsEventsListTimeRangePeriod_PERIOD1DAY,
+  ProjectsLocationsEventsListTimeRangePeriod_PERIOD1WEEK,
+  ProjectsLocationsEventsListTimeRangePeriod_PERIOD30DAYS,
+  ProjectsLocationsEventsListTimeRangePeriod
+  #-}
+
+-- | Optional. The alignment of the timed counts to be returned. Default is @ALIGNMENT_EQUAL_AT_END@.
+newtype ProjectsLocationsGroupStatsListAlignment = ProjectsLocationsGroupStatsListAlignment {fromProjectsLocationsGroupStatsListAlignment :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | No alignment specified.
+pattern ProjectsLocationsGroupStatsListAlignment_ERRORCOUNTALIGNMENTUNSPECIFIED :: ProjectsLocationsGroupStatsListAlignment
+pattern ProjectsLocationsGroupStatsListAlignment_ERRORCOUNTALIGNMENTUNSPECIFIED = ProjectsLocationsGroupStatsListAlignment "ERROR_COUNT_ALIGNMENT_UNSPECIFIED"
+
+-- | The time periods shall be consecutive, have width equal to the requested duration, and be aligned at the alignment/time provided in the request. The alignment/time does not have to be inside the query period but even if it is outside, only time periods are returned which overlap with the query period. A rounded alignment will typically result in a different size of the first or the last time period.
+pattern ProjectsLocationsGroupStatsListAlignment_ALIGNMENTEQUALROUNDED :: ProjectsLocationsGroupStatsListAlignment
+pattern ProjectsLocationsGroupStatsListAlignment_ALIGNMENTEQUALROUNDED = ProjectsLocationsGroupStatsListAlignment "ALIGNMENT_EQUAL_ROUNDED"
+
+-- | The time periods shall be consecutive, have width equal to the requested duration, and be aligned at the end of the requested time period. This can result in a different size of the first time period.
+pattern ProjectsLocationsGroupStatsListAlignment_ALIGNMENTEQUALATEND :: ProjectsLocationsGroupStatsListAlignment
+pattern ProjectsLocationsGroupStatsListAlignment_ALIGNMENTEQUALATEND = ProjectsLocationsGroupStatsListAlignment "ALIGNMENT_EQUAL_AT_END"
+
+{-# COMPLETE
+  ProjectsLocationsGroupStatsListAlignment_ERRORCOUNTALIGNMENTUNSPECIFIED,
+  ProjectsLocationsGroupStatsListAlignment_ALIGNMENTEQUALROUNDED,
+  ProjectsLocationsGroupStatsListAlignment_ALIGNMENTEQUALATEND,
+  ProjectsLocationsGroupStatsListAlignment
+  #-}
+
+-- | Optional. The sort order in which the results are returned. Default is @COUNT_DESC@.
+newtype ProjectsLocationsGroupStatsListOrder = ProjectsLocationsGroupStatsListOrder {fromProjectsLocationsGroupStatsListOrder :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | No group order specified.
+pattern ProjectsLocationsGroupStatsListOrder_GROUPORDERUNSPECIFIED :: ProjectsLocationsGroupStatsListOrder
+pattern ProjectsLocationsGroupStatsListOrder_GROUPORDERUNSPECIFIED = ProjectsLocationsGroupStatsListOrder "GROUP_ORDER_UNSPECIFIED"
+
+-- | Total count of errors in the given time window in descending order.
+pattern ProjectsLocationsGroupStatsListOrder_COUNTDESC :: ProjectsLocationsGroupStatsListOrder
+pattern ProjectsLocationsGroupStatsListOrder_COUNTDESC = ProjectsLocationsGroupStatsListOrder "COUNT_DESC"
+
+-- | Timestamp when the group was last seen in the given time window in descending order.
+pattern ProjectsLocationsGroupStatsListOrder_LASTSEENDESC :: ProjectsLocationsGroupStatsListOrder
+pattern ProjectsLocationsGroupStatsListOrder_LASTSEENDESC = ProjectsLocationsGroupStatsListOrder "LAST_SEEN_DESC"
+
+-- | Timestamp when the group was created in descending order.
+pattern ProjectsLocationsGroupStatsListOrder_CREATEDDESC :: ProjectsLocationsGroupStatsListOrder
+pattern ProjectsLocationsGroupStatsListOrder_CREATEDDESC = ProjectsLocationsGroupStatsListOrder "CREATED_DESC"
+
+-- | Number of affected users in the given time window in descending order.
+pattern ProjectsLocationsGroupStatsListOrder_AFFECTEDUSERSDESC :: ProjectsLocationsGroupStatsListOrder
+pattern ProjectsLocationsGroupStatsListOrder_AFFECTEDUSERSDESC = ProjectsLocationsGroupStatsListOrder "AFFECTED_USERS_DESC"
+
+{-# COMPLETE
+  ProjectsLocationsGroupStatsListOrder_GROUPORDERUNSPECIFIED,
+  ProjectsLocationsGroupStatsListOrder_COUNTDESC,
+  ProjectsLocationsGroupStatsListOrder_LASTSEENDESC,
+  ProjectsLocationsGroupStatsListOrder_CREATEDDESC,
+  ProjectsLocationsGroupStatsListOrder_AFFECTEDUSERSDESC,
+  ProjectsLocationsGroupStatsListOrder
+  #-}
+
+-- | Restricts the query to the specified time range.
+newtype ProjectsLocationsGroupStatsListTimeRangePeriod = ProjectsLocationsGroupStatsListTimeRangePeriod {fromProjectsLocationsGroupStatsListTimeRangePeriod :: Core.Text}
+  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
+  deriving newtype
+    ( Core.Hashable,
+      Core.ToHttpApiData,
+      Core.FromHttpApiData,
+      Core.ToJSON,
+      Core.ToJSONKey,
+      Core.FromJSON,
+      Core.FromJSONKey
+    )
+
+-- | Do not use.
+pattern ProjectsLocationsGroupStatsListTimeRangePeriod_PERIODUNSPECIFIED :: ProjectsLocationsGroupStatsListTimeRangePeriod
+pattern ProjectsLocationsGroupStatsListTimeRangePeriod_PERIODUNSPECIFIED = ProjectsLocationsGroupStatsListTimeRangePeriod "PERIOD_UNSPECIFIED"
+
+-- | Retrieve data for the last hour. Recommended minimum timed count duration: 1 min.
+pattern ProjectsLocationsGroupStatsListTimeRangePeriod_PERIOD1HOUR :: ProjectsLocationsGroupStatsListTimeRangePeriod
+pattern ProjectsLocationsGroupStatsListTimeRangePeriod_PERIOD1HOUR = ProjectsLocationsGroupStatsListTimeRangePeriod "PERIOD_1_HOUR"
+
+-- | Retrieve data for the last 6 hours. Recommended minimum timed count duration: 10 min.
+pattern ProjectsLocationsGroupStatsListTimeRangePeriod_PERIOD6HOURS :: ProjectsLocationsGroupStatsListTimeRangePeriod
+pattern ProjectsLocationsGroupStatsListTimeRangePeriod_PERIOD6HOURS = ProjectsLocationsGroupStatsListTimeRangePeriod "PERIOD_6_HOURS"
+
+-- | Retrieve data for the last day. Recommended minimum timed count duration: 1 hour.
+pattern ProjectsLocationsGroupStatsListTimeRangePeriod_PERIOD1DAY :: ProjectsLocationsGroupStatsListTimeRangePeriod
+pattern ProjectsLocationsGroupStatsListTimeRangePeriod_PERIOD1DAY = ProjectsLocationsGroupStatsListTimeRangePeriod "PERIOD_1_DAY"
+
+-- | Retrieve data for the last week. Recommended minimum timed count duration: 6 hours.
+pattern ProjectsLocationsGroupStatsListTimeRangePeriod_PERIOD1WEEK :: ProjectsLocationsGroupStatsListTimeRangePeriod
+pattern ProjectsLocationsGroupStatsListTimeRangePeriod_PERIOD1WEEK = ProjectsLocationsGroupStatsListTimeRangePeriod "PERIOD_1_WEEK"
+
+-- | Retrieve data for the last 30 days. Recommended minimum timed count duration: 1 day.
+pattern ProjectsLocationsGroupStatsListTimeRangePeriod_PERIOD30DAYS :: ProjectsLocationsGroupStatsListTimeRangePeriod
+pattern ProjectsLocationsGroupStatsListTimeRangePeriod_PERIOD30DAYS = ProjectsLocationsGroupStatsListTimeRangePeriod "PERIOD_30_DAYS"
+
+{-# COMPLETE
+  ProjectsLocationsGroupStatsListTimeRangePeriod_PERIODUNSPECIFIED,
+  ProjectsLocationsGroupStatsListTimeRangePeriod_PERIOD1HOUR,
+  ProjectsLocationsGroupStatsListTimeRangePeriod_PERIOD6HOURS,
+  ProjectsLocationsGroupStatsListTimeRangePeriod_PERIOD1DAY,
+  ProjectsLocationsGroupStatsListTimeRangePeriod_PERIOD1WEEK,
+  ProjectsLocationsGroupStatsListTimeRangePeriod_PERIOD30DAYS,
+  ProjectsLocationsGroupStatsListTimeRangePeriod
+  #-}
diff --git a/gen/Gogol/CloudErrorReporting/Projects/DeleteEvents.hs b/gen/Gogol/CloudErrorReporting/Projects/DeleteEvents.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/CloudErrorReporting/Projects/DeleteEvents.hs
@@ -0,0 +1,114 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.CloudErrorReporting.Projects.DeleteEvents
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Deletes all error events of a given project.
+--
+-- /See:/ <https://cloud.google.com/error-reporting/ Error Reporting API Reference> for @clouderrorreporting.projects.deleteEvents@.
+module Gogol.CloudErrorReporting.Projects.DeleteEvents
+  ( -- * Resource
+    CloudErrorReportingProjectsDeleteEventsResource,
+
+    -- ** Constructing a Request
+    CloudErrorReportingProjectsDeleteEvents (..),
+    newCloudErrorReportingProjectsDeleteEvents,
+  )
+where
+
+import Gogol.CloudErrorReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @clouderrorreporting.projects.deleteEvents@ method which the
+-- 'CloudErrorReportingProjectsDeleteEvents' request conforms to.
+type CloudErrorReportingProjectsDeleteEventsResource =
+  "v1beta1"
+    Core.:> Core.Capture "projectName" Core.Text
+    Core.:> "events"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Delete '[Core.JSON] DeleteEventsResponse
+
+-- | Deletes all error events of a given project.
+--
+-- /See:/ 'newCloudErrorReportingProjectsDeleteEvents' smart constructor.
+data CloudErrorReportingProjectsDeleteEvents = CloudErrorReportingProjectsDeleteEvents
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The resource name of the Google Cloud Platform project. Written as @projects\/{projectID}@ or @projects\/{projectID}\/locations\/{location}@, where @{projectID}@ is the <https://support.google.com/cloud/answer/6158840 Google Cloud Platform project ID> and @{location}@ is a Cloud region. Examples: @projects\/my-project-123@, @projects\/my-project-123\/locations\/global@. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified.
+    projectName :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CloudErrorReportingProjectsDeleteEvents' with the minimum fields required to make a request.
+newCloudErrorReportingProjectsDeleteEvents ::
+  -- |  Required. The resource name of the Google Cloud Platform project. Written as @projects\/{projectID}@ or @projects\/{projectID}\/locations\/{location}@, where @{projectID}@ is the <https://support.google.com/cloud/answer/6158840 Google Cloud Platform project ID> and @{location}@ is a Cloud region. Examples: @projects\/my-project-123@, @projects\/my-project-123\/locations\/global@. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified. See 'projectName'.
+  Core.Text ->
+  CloudErrorReportingProjectsDeleteEvents
+newCloudErrorReportingProjectsDeleteEvents projectName =
+  CloudErrorReportingProjectsDeleteEvents
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      projectName = projectName,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest CloudErrorReportingProjectsDeleteEvents where
+  type
+    Rs CloudErrorReportingProjectsDeleteEvents =
+      DeleteEventsResponse
+  type
+    Scopes CloudErrorReportingProjectsDeleteEvents =
+      '[CloudPlatform'FullControl]
+  requestClient CloudErrorReportingProjectsDeleteEvents {..} =
+    go
+      projectName
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      cloudErrorReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy CloudErrorReportingProjectsDeleteEventsResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/CloudErrorReporting/Projects/Events/List.hs b/gen/Gogol/CloudErrorReporting/Projects/Events/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/CloudErrorReporting/Projects/Events/List.hs
@@ -0,0 +1,149 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.CloudErrorReporting.Projects.Events.List
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Lists the specified events.
+--
+-- /See:/ <https://cloud.google.com/error-reporting/ Error Reporting API Reference> for @clouderrorreporting.projects.events.list@.
+module Gogol.CloudErrorReporting.Projects.Events.List
+  ( -- * Resource
+    CloudErrorReportingProjectsEventsListResource,
+
+    -- ** Constructing a Request
+    CloudErrorReportingProjectsEventsList (..),
+    newCloudErrorReportingProjectsEventsList,
+  )
+where
+
+import Gogol.CloudErrorReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @clouderrorreporting.projects.events.list@ method which the
+-- 'CloudErrorReportingProjectsEventsList' request conforms to.
+type CloudErrorReportingProjectsEventsListResource =
+  "v1beta1"
+    Core.:> Core.Capture "projectName" Core.Text
+    Core.:> "events"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "groupId" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "serviceFilter.resourceType" Core.Text
+    Core.:> Core.QueryParam "serviceFilter.service" Core.Text
+    Core.:> Core.QueryParam "serviceFilter.version" Core.Text
+    Core.:> Core.QueryParam
+              "timeRange.period"
+              ProjectsEventsListTimeRangePeriod
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] ListEventsResponse
+
+-- | Lists the specified events.
+--
+-- /See:/ 'newCloudErrorReportingProjectsEventsList' smart constructor.
+data CloudErrorReportingProjectsEventsList = CloudErrorReportingProjectsEventsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The group for which events shall be returned. The @group_id@ is a unique identifier for a particular error group. The identifier is derived from key parts of the error-log content and is treated as Service Data. For information about how Service Data is handled, see <https://cloud.google.com/terms/cloud-privacy-notice Google Cloud Privacy Notice>.
+    groupId :: (Core.Maybe Core.Text),
+    -- | Optional. The maximum number of results to return per response.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | Optional. A @next_page_token@ provided by a previous response.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The resource name of the Google Cloud Platform project. Written as @projects\/{projectID}@ or @projects\/{projectID}\/locations\/{location}@, where @{projectID}@ is the <https://support.google.com/cloud/answer/6158840 Google Cloud Platform project ID> and @{location}@ is a Cloud region. Examples: @projects\/my-project-123@, @projects\/my-project-123\/locations\/global@. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified.
+    projectName :: Core.Text,
+    -- | Optional. The exact value to match against </error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.resource_type ServiceContext.resource_type>.
+    serviceFilterResourceType :: (Core.Maybe Core.Text),
+    -- | Optional. The exact value to match against </error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.service ServiceContext.service>.
+    serviceFilterService :: (Core.Maybe Core.Text),
+    -- | Optional. The exact value to match against </error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.version ServiceContext.version>.
+    serviceFilterVersion :: (Core.Maybe Core.Text),
+    -- | Restricts the query to the specified time range.
+    timeRangePeriod :: (Core.Maybe ProjectsEventsListTimeRangePeriod),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CloudErrorReportingProjectsEventsList' with the minimum fields required to make a request.
+newCloudErrorReportingProjectsEventsList ::
+  -- |  Required. The resource name of the Google Cloud Platform project. Written as @projects\/{projectID}@ or @projects\/{projectID}\/locations\/{location}@, where @{projectID}@ is the <https://support.google.com/cloud/answer/6158840 Google Cloud Platform project ID> and @{location}@ is a Cloud region. Examples: @projects\/my-project-123@, @projects\/my-project-123\/locations\/global@. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified. See 'projectName'.
+  Core.Text ->
+  CloudErrorReportingProjectsEventsList
+newCloudErrorReportingProjectsEventsList projectName =
+  CloudErrorReportingProjectsEventsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      groupId = Core.Nothing,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      projectName = projectName,
+      serviceFilterResourceType = Core.Nothing,
+      serviceFilterService = Core.Nothing,
+      serviceFilterVersion = Core.Nothing,
+      timeRangePeriod = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest CloudErrorReportingProjectsEventsList where
+  type Rs CloudErrorReportingProjectsEventsList = ListEventsResponse
+  type
+    Scopes CloudErrorReportingProjectsEventsList =
+      '[CloudPlatform'FullControl]
+  requestClient CloudErrorReportingProjectsEventsList {..} =
+    go
+      projectName
+      xgafv
+      accessToken
+      callback
+      groupId
+      pageSize
+      pageToken
+      serviceFilterResourceType
+      serviceFilterService
+      serviceFilterVersion
+      timeRangePeriod
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      cloudErrorReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy CloudErrorReportingProjectsEventsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/CloudErrorReporting/Projects/Events/Report.hs b/gen/Gogol/CloudErrorReporting/Projects/Events/Report.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/CloudErrorReporting/Projects/Events/Report.hs
@@ -0,0 +1,121 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.CloudErrorReporting.Projects.Events.Report
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Report an individual error event and record the event to a log. This endpoint accepts __either__ an OAuth token, __or__ an <https://support.google.com/cloud/answer/6158862 API key> for authentication. To use an API key, append it to the URL as the value of a @key@ parameter. For example: @POST https:\/\/clouderrorreporting.googleapis.com\/v1beta1\/{projectName}\/events:report?key=123ABC456@ __Note:__ [Error Reporting] (https:\/\/cloud.google.com\/error-reporting) is a service built on Cloud Logging and can analyze log entries when all of the following are true: * Customer-managed encryption keys (CMEK) are disabled on the log bucket. * The log bucket satisfies one of the following: * The log bucket is stored in the same project where the logs originated. * The logs were routed to a project, and then that project stored those logs in a log bucket that it owns.
+--
+-- /See:/ <https://cloud.google.com/error-reporting/ Error Reporting API Reference> for @clouderrorreporting.projects.events.report@.
+module Gogol.CloudErrorReporting.Projects.Events.Report
+  ( -- * Resource
+    CloudErrorReportingProjectsEventsReportResource,
+
+    -- ** Constructing a Request
+    CloudErrorReportingProjectsEventsReport (..),
+    newCloudErrorReportingProjectsEventsReport,
+  )
+where
+
+import Gogol.CloudErrorReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @clouderrorreporting.projects.events.report@ method which the
+-- 'CloudErrorReportingProjectsEventsReport' request conforms to.
+type CloudErrorReportingProjectsEventsReportResource =
+  "v1beta1"
+    Core.:> Core.Capture "projectName" Core.Text
+    Core.:> "events:report"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] ReportedErrorEvent
+    Core.:> Core.Post '[Core.JSON] ReportErrorEventResponse
+
+-- | Report an individual error event and record the event to a log. This endpoint accepts __either__ an OAuth token, __or__ an <https://support.google.com/cloud/answer/6158862 API key> for authentication. To use an API key, append it to the URL as the value of a @key@ parameter. For example: @POST https:\/\/clouderrorreporting.googleapis.com\/v1beta1\/{projectName}\/events:report?key=123ABC456@ __Note:__ [Error Reporting] (https:\/\/cloud.google.com\/error-reporting) is a service built on Cloud Logging and can analyze log entries when all of the following are true: * Customer-managed encryption keys (CMEK) are disabled on the log bucket. * The log bucket satisfies one of the following: * The log bucket is stored in the same project where the logs originated. * The logs were routed to a project, and then that project stored those logs in a log bucket that it owns.
+--
+-- /See:/ 'newCloudErrorReportingProjectsEventsReport' smart constructor.
+data CloudErrorReportingProjectsEventsReport = CloudErrorReportingProjectsEventsReport
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Multipart request metadata.
+    payload :: ReportedErrorEvent,
+    -- | Required. The resource name of the Google Cloud Platform project. Written as @projects\/{projectId}@, where @{projectId}@ is the <https://support.google.com/cloud/answer/6158840 Google Cloud Platform project ID>. Example: \/\/ @projects\/my-project-123@.
+    projectName :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CloudErrorReportingProjectsEventsReport' with the minimum fields required to make a request.
+newCloudErrorReportingProjectsEventsReport ::
+  -- |  Multipart request metadata. See 'payload'.
+  ReportedErrorEvent ->
+  -- |  Required. The resource name of the Google Cloud Platform project. Written as @projects\/{projectId}@, where @{projectId}@ is the <https://support.google.com/cloud/answer/6158840 Google Cloud Platform project ID>. Example: \/\/ @projects\/my-project-123@. See 'projectName'.
+  Core.Text ->
+  CloudErrorReportingProjectsEventsReport
+newCloudErrorReportingProjectsEventsReport payload projectName =
+  CloudErrorReportingProjectsEventsReport
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      payload = payload,
+      projectName = projectName,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest CloudErrorReportingProjectsEventsReport where
+  type
+    Rs CloudErrorReportingProjectsEventsReport =
+      ReportErrorEventResponse
+  type
+    Scopes CloudErrorReportingProjectsEventsReport =
+      '[CloudPlatform'FullControl]
+  requestClient CloudErrorReportingProjectsEventsReport {..} =
+    go
+      projectName
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      cloudErrorReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy CloudErrorReportingProjectsEventsReportResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/CloudErrorReporting/Projects/GroupStats/List.hs b/gen/Gogol/CloudErrorReporting/Projects/GroupStats/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/CloudErrorReporting/Projects/GroupStats/List.hs
@@ -0,0 +1,174 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.CloudErrorReporting.Projects.GroupStats.List
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Lists the specified groups.
+--
+-- /See:/ <https://cloud.google.com/error-reporting/ Error Reporting API Reference> for @clouderrorreporting.projects.groupStats.list@.
+module Gogol.CloudErrorReporting.Projects.GroupStats.List
+  ( -- * Resource
+    CloudErrorReportingProjectsGroupStatsListResource,
+
+    -- ** Constructing a Request
+    CloudErrorReportingProjectsGroupStatsList (..),
+    newCloudErrorReportingProjectsGroupStatsList,
+  )
+where
+
+import Gogol.CloudErrorReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @clouderrorreporting.projects.groupStats.list@ method which the
+-- 'CloudErrorReportingProjectsGroupStatsList' request conforms to.
+type CloudErrorReportingProjectsGroupStatsListResource =
+  "v1beta1"
+    Core.:> Core.Capture "projectName" Core.Text
+    Core.:> "groupStats"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "alignment" ProjectsGroupStatsListAlignment
+    Core.:> Core.QueryParam "alignmentTime" Core.DateTime
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "groupId" Core.Text
+    Core.:> Core.QueryParam "order" ProjectsGroupStatsListOrder
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "serviceFilter.resourceType" Core.Text
+    Core.:> Core.QueryParam "serviceFilter.service" Core.Text
+    Core.:> Core.QueryParam "serviceFilter.version" Core.Text
+    Core.:> Core.QueryParam
+              "timeRange.period"
+              ProjectsGroupStatsListTimeRangePeriod
+    Core.:> Core.QueryParam "timedCountDuration" Core.Duration
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] ListGroupStatsResponse
+
+-- | Lists the specified groups.
+--
+-- /See:/ 'newCloudErrorReportingProjectsGroupStatsList' smart constructor.
+data CloudErrorReportingProjectsGroupStatsList = CloudErrorReportingProjectsGroupStatsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Optional. The alignment of the timed counts to be returned. Default is @ALIGNMENT_EQUAL_AT_END@.
+    alignment :: (Core.Maybe ProjectsGroupStatsListAlignment),
+    -- | Optional. Time where the timed counts shall be aligned if rounded alignment is chosen. Default is 00:00 UTC.
+    alignmentTime :: (Core.Maybe Core.DateTime),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Optional. List all ErrorGroupStats with these IDs. The @group_id@ is a unique identifier for a particular error group. The identifier is derived from key parts of the error-log content and is treated as Service Data. For information about how Service Data is handled, see [Google Cloud Privacy Notice] (https:\/\/cloud.google.com\/terms\/cloud-privacy-notice).
+    groupId :: (Core.Maybe [Core.Text]),
+    -- | Optional. The sort order in which the results are returned. Default is @COUNT_DESC@.
+    order :: (Core.Maybe ProjectsGroupStatsListOrder),
+    -- | Optional. The maximum number of results to return per response. Default is 20.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | Optional. A next/page/token provided by a previous response. To view additional results, pass this token along with the identical query parameters as the first request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The resource name of the Google Cloud Platform project. Written as @projects\/{projectID}@ or @projects\/{projectNumber}@, where @{projectID}@ and @{projectNumber}@ can be found in the <https://support.google.com/cloud/answer/6158840 Google Cloud console>. It may also include a location, such as @projects\/{projectID}\/locations\/{location}@ where @{location}@ is a cloud region. Examples: @projects\/my-project-123@, @projects\/5551234@, @projects\/my-project-123\/locations\/us-central1@, @projects\/5551234\/locations\/us-central1@. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified. Use @-@ as a wildcard to request group stats from all regions.
+    projectName :: Core.Text,
+    -- | Optional. The exact value to match against </error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.resource_type ServiceContext.resource_type>.
+    serviceFilterResourceType :: (Core.Maybe Core.Text),
+    -- | Optional. The exact value to match against </error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.service ServiceContext.service>.
+    serviceFilterService :: (Core.Maybe Core.Text),
+    -- | Optional. The exact value to match against </error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.version ServiceContext.version>.
+    serviceFilterVersion :: (Core.Maybe Core.Text),
+    -- | Restricts the query to the specified time range.
+    timeRangePeriod :: (Core.Maybe ProjectsGroupStatsListTimeRangePeriod),
+    -- | Optional. The preferred duration for a single returned TimedCount. If not set, no timed counts are returned.
+    timedCountDuration :: (Core.Maybe Core.Duration),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CloudErrorReportingProjectsGroupStatsList' with the minimum fields required to make a request.
+newCloudErrorReportingProjectsGroupStatsList ::
+  -- |  Required. The resource name of the Google Cloud Platform project. Written as @projects\/{projectID}@ or @projects\/{projectNumber}@, where @{projectID}@ and @{projectNumber}@ can be found in the <https://support.google.com/cloud/answer/6158840 Google Cloud console>. It may also include a location, such as @projects\/{projectID}\/locations\/{location}@ where @{location}@ is a cloud region. Examples: @projects\/my-project-123@, @projects\/5551234@, @projects\/my-project-123\/locations\/us-central1@, @projects\/5551234\/locations\/us-central1@. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified. Use @-@ as a wildcard to request group stats from all regions. See 'projectName'.
+  Core.Text ->
+  CloudErrorReportingProjectsGroupStatsList
+newCloudErrorReportingProjectsGroupStatsList projectName =
+  CloudErrorReportingProjectsGroupStatsList
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      alignment = Core.Nothing,
+      alignmentTime = Core.Nothing,
+      callback = Core.Nothing,
+      groupId = Core.Nothing,
+      order = Core.Nothing,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      projectName = projectName,
+      serviceFilterResourceType = Core.Nothing,
+      serviceFilterService = Core.Nothing,
+      serviceFilterVersion = Core.Nothing,
+      timeRangePeriod = Core.Nothing,
+      timedCountDuration = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    CloudErrorReportingProjectsGroupStatsList
+  where
+  type
+    Rs CloudErrorReportingProjectsGroupStatsList =
+      ListGroupStatsResponse
+  type
+    Scopes CloudErrorReportingProjectsGroupStatsList =
+      '[CloudPlatform'FullControl]
+  requestClient CloudErrorReportingProjectsGroupStatsList {..} =
+    go
+      projectName
+      xgafv
+      accessToken
+      alignment
+      alignmentTime
+      callback
+      (groupId Core.^. Core._Default)
+      order
+      pageSize
+      pageToken
+      serviceFilterResourceType
+      serviceFilterService
+      serviceFilterVersion
+      timeRangePeriod
+      timedCountDuration
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      cloudErrorReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy CloudErrorReportingProjectsGroupStatsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/CloudErrorReporting/Projects/Groups/Get.hs b/gen/Gogol/CloudErrorReporting/Projects/Groups/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/CloudErrorReporting/Projects/Groups/Get.hs
@@ -0,0 +1,111 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.CloudErrorReporting.Projects.Groups.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Get the specified group.
+--
+-- /See:/ <https://cloud.google.com/error-reporting/ Error Reporting API Reference> for @clouderrorreporting.projects.groups.get@.
+module Gogol.CloudErrorReporting.Projects.Groups.Get
+  ( -- * Resource
+    CloudErrorReportingProjectsGroupsGetResource,
+
+    -- ** Constructing a Request
+    CloudErrorReportingProjectsGroupsGet (..),
+    newCloudErrorReportingProjectsGroupsGet,
+  )
+where
+
+import Gogol.CloudErrorReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @clouderrorreporting.projects.groups.get@ method which the
+-- 'CloudErrorReportingProjectsGroupsGet' request conforms to.
+type CloudErrorReportingProjectsGroupsGetResource =
+  "v1beta1"
+    Core.:> Core.Capture "groupName" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] ErrorGroup
+
+-- | Get the specified group.
+--
+-- /See:/ 'newCloudErrorReportingProjectsGroupsGet' smart constructor.
+data CloudErrorReportingProjectsGroupsGet = CloudErrorReportingProjectsGroupsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The group resource name. Written as either @projects\/{projectID}\/groups\/{group_id}@ or @projects\/{projectID}\/locations\/{location}\/groups\/{group_id}@. Call groupStats.list to return a list of groups belonging to this project. Examples: @projects\/my-project-123\/groups\/my-group@, @projects\/my-project-123\/locations\/global\/groups\/my-group@ In the group resource name, the @group_id@ is a unique identifier for a particular error group. The identifier is derived from key parts of the error-log content and is treated as Service Data. For information about how Service Data is handled, see <https://cloud.google.com/terms/cloud-privacy-notice Google Cloud Privacy Notice>. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified.
+    groupName :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CloudErrorReportingProjectsGroupsGet' with the minimum fields required to make a request.
+newCloudErrorReportingProjectsGroupsGet ::
+  -- |  Required. The group resource name. Written as either @projects\/{projectID}\/groups\/{group_id}@ or @projects\/{projectID}\/locations\/{location}\/groups\/{group_id}@. Call groupStats.list to return a list of groups belonging to this project. Examples: @projects\/my-project-123\/groups\/my-group@, @projects\/my-project-123\/locations\/global\/groups\/my-group@ In the group resource name, the @group_id@ is a unique identifier for a particular error group. The identifier is derived from key parts of the error-log content and is treated as Service Data. For information about how Service Data is handled, see <https://cloud.google.com/terms/cloud-privacy-notice Google Cloud Privacy Notice>. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified. See 'groupName'.
+  Core.Text ->
+  CloudErrorReportingProjectsGroupsGet
+newCloudErrorReportingProjectsGroupsGet groupName =
+  CloudErrorReportingProjectsGroupsGet
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      groupName = groupName,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest CloudErrorReportingProjectsGroupsGet where
+  type Rs CloudErrorReportingProjectsGroupsGet = ErrorGroup
+  type
+    Scopes CloudErrorReportingProjectsGroupsGet =
+      '[CloudPlatform'FullControl]
+  requestClient CloudErrorReportingProjectsGroupsGet {..} =
+    go
+      groupName
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      cloudErrorReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy CloudErrorReportingProjectsGroupsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/CloudErrorReporting/Projects/Groups/Update.hs b/gen/Gogol/CloudErrorReporting/Projects/Groups/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/CloudErrorReporting/Projects/Groups/Update.hs
@@ -0,0 +1,118 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.CloudErrorReporting.Projects.Groups.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Replace the data for the specified group. Fails if the group does not exist.
+--
+-- /See:/ <https://cloud.google.com/error-reporting/ Error Reporting API Reference> for @clouderrorreporting.projects.groups.update@.
+module Gogol.CloudErrorReporting.Projects.Groups.Update
+  ( -- * Resource
+    CloudErrorReportingProjectsGroupsUpdateResource,
+
+    -- ** Constructing a Request
+    CloudErrorReportingProjectsGroupsUpdate (..),
+    newCloudErrorReportingProjectsGroupsUpdate,
+  )
+where
+
+import Gogol.CloudErrorReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @clouderrorreporting.projects.groups.update@ method which the
+-- 'CloudErrorReportingProjectsGroupsUpdate' request conforms to.
+type CloudErrorReportingProjectsGroupsUpdateResource =
+  "v1beta1"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] ErrorGroup
+    Core.:> Core.Put '[Core.JSON] ErrorGroup
+
+-- | Replace the data for the specified group. Fails if the group does not exist.
+--
+-- /See:/ 'newCloudErrorReportingProjectsGroupsUpdate' smart constructor.
+data CloudErrorReportingProjectsGroupsUpdate = CloudErrorReportingProjectsGroupsUpdate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The group resource name. Written as @projects\/{projectID}\/groups\/{group_id}@ or @projects\/{projectID}\/locations\/{location}\/groups\/{group_id}@ Examples: @projects\/my-project-123\/groups\/my-group@, @projects\/my-project-123\/locations\/us-central1\/groups\/my-group@ In the group resource name, the @group_id@ is a unique identifier for a particular error group. The identifier is derived from key parts of the error-log content and is treated as Service Data. For information about how Service Data is handled, see <https://cloud.google.com/terms/cloud-privacy-notice Google Cloud Privacy Notice>. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: ErrorGroup,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CloudErrorReportingProjectsGroupsUpdate' with the minimum fields required to make a request.
+newCloudErrorReportingProjectsGroupsUpdate ::
+  -- |  The group resource name. Written as @projects\/{projectID}\/groups\/{group_id}@ or @projects\/{projectID}\/locations\/{location}\/groups\/{group_id}@ Examples: @projects\/my-project-123\/groups\/my-group@, @projects\/my-project-123\/locations\/us-central1\/groups\/my-group@ In the group resource name, the @group_id@ is a unique identifier for a particular error group. The identifier is derived from key parts of the error-log content and is treated as Service Data. For information about how Service Data is handled, see <https://cloud.google.com/terms/cloud-privacy-notice Google Cloud Privacy Notice>. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  ErrorGroup ->
+  CloudErrorReportingProjectsGroupsUpdate
+newCloudErrorReportingProjectsGroupsUpdate name payload =
+  CloudErrorReportingProjectsGroupsUpdate
+    { xgafv = Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance Core.GoogleRequest CloudErrorReportingProjectsGroupsUpdate where
+  type Rs CloudErrorReportingProjectsGroupsUpdate = ErrorGroup
+  type
+    Scopes CloudErrorReportingProjectsGroupsUpdate =
+      '[CloudPlatform'FullControl]
+  requestClient CloudErrorReportingProjectsGroupsUpdate {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      cloudErrorReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy CloudErrorReportingProjectsGroupsUpdateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/CloudErrorReporting/Projects/Locations/DeleteEvents.hs b/gen/Gogol/CloudErrorReporting/Projects/Locations/DeleteEvents.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/CloudErrorReporting/Projects/Locations/DeleteEvents.hs
@@ -0,0 +1,119 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.CloudErrorReporting.Projects.Locations.DeleteEvents
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Deletes all error events of a given project.
+--
+-- /See:/ <https://cloud.google.com/error-reporting/ Error Reporting API Reference> for @clouderrorreporting.projects.locations.deleteEvents@.
+module Gogol.CloudErrorReporting.Projects.Locations.DeleteEvents
+  ( -- * Resource
+    CloudErrorReportingProjectsLocationsDeleteEventsResource,
+
+    -- ** Constructing a Request
+    CloudErrorReportingProjectsLocationsDeleteEvents (..),
+    newCloudErrorReportingProjectsLocationsDeleteEvents,
+  )
+where
+
+import Gogol.CloudErrorReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @clouderrorreporting.projects.locations.deleteEvents@ method which the
+-- 'CloudErrorReportingProjectsLocationsDeleteEvents' request conforms to.
+type CloudErrorReportingProjectsLocationsDeleteEventsResource =
+  "v1beta1"
+    Core.:> Core.Capture "projectName" Core.Text
+    Core.:> "events"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Delete '[Core.JSON] DeleteEventsResponse
+
+-- | Deletes all error events of a given project.
+--
+-- /See:/ 'newCloudErrorReportingProjectsLocationsDeleteEvents' smart constructor.
+data CloudErrorReportingProjectsLocationsDeleteEvents = CloudErrorReportingProjectsLocationsDeleteEvents
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The resource name of the Google Cloud Platform project. Written as @projects\/{projectID}@ or @projects\/{projectID}\/locations\/{location}@, where @{projectID}@ is the <https://support.google.com/cloud/answer/6158840 Google Cloud Platform project ID> and @{location}@ is a Cloud region. Examples: @projects\/my-project-123@, @projects\/my-project-123\/locations\/global@. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified.
+    projectName :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CloudErrorReportingProjectsLocationsDeleteEvents' with the minimum fields required to make a request.
+newCloudErrorReportingProjectsLocationsDeleteEvents ::
+  -- |  Required. The resource name of the Google Cloud Platform project. Written as @projects\/{projectID}@ or @projects\/{projectID}\/locations\/{location}@, where @{projectID}@ is the <https://support.google.com/cloud/answer/6158840 Google Cloud Platform project ID> and @{location}@ is a Cloud region. Examples: @projects\/my-project-123@, @projects\/my-project-123\/locations\/global@. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified. See 'projectName'.
+  Core.Text ->
+  CloudErrorReportingProjectsLocationsDeleteEvents
+newCloudErrorReportingProjectsLocationsDeleteEvents projectName =
+  CloudErrorReportingProjectsLocationsDeleteEvents
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      projectName = projectName,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    CloudErrorReportingProjectsLocationsDeleteEvents
+  where
+  type
+    Rs CloudErrorReportingProjectsLocationsDeleteEvents =
+      DeleteEventsResponse
+  type
+    Scopes CloudErrorReportingProjectsLocationsDeleteEvents =
+      '[CloudPlatform'FullControl]
+  requestClient CloudErrorReportingProjectsLocationsDeleteEvents {..} =
+    go
+      projectName
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      cloudErrorReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy
+                CloudErrorReportingProjectsLocationsDeleteEventsResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/CloudErrorReporting/Projects/Locations/Events/List.hs b/gen/Gogol/CloudErrorReporting/Projects/Locations/Events/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/CloudErrorReporting/Projects/Locations/Events/List.hs
@@ -0,0 +1,155 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.CloudErrorReporting.Projects.Locations.Events.List
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Lists the specified events.
+--
+-- /See:/ <https://cloud.google.com/error-reporting/ Error Reporting API Reference> for @clouderrorreporting.projects.locations.events.list@.
+module Gogol.CloudErrorReporting.Projects.Locations.Events.List
+  ( -- * Resource
+    CloudErrorReportingProjectsLocationsEventsListResource,
+
+    -- ** Constructing a Request
+    CloudErrorReportingProjectsLocationsEventsList (..),
+    newCloudErrorReportingProjectsLocationsEventsList,
+  )
+where
+
+import Gogol.CloudErrorReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @clouderrorreporting.projects.locations.events.list@ method which the
+-- 'CloudErrorReportingProjectsLocationsEventsList' request conforms to.
+type CloudErrorReportingProjectsLocationsEventsListResource =
+  "v1beta1"
+    Core.:> Core.Capture "projectName" Core.Text
+    Core.:> "events"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "groupId" Core.Text
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "serviceFilter.resourceType" Core.Text
+    Core.:> Core.QueryParam "serviceFilter.service" Core.Text
+    Core.:> Core.QueryParam "serviceFilter.version" Core.Text
+    Core.:> Core.QueryParam
+              "timeRange.period"
+              ProjectsLocationsEventsListTimeRangePeriod
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] ListEventsResponse
+
+-- | Lists the specified events.
+--
+-- /See:/ 'newCloudErrorReportingProjectsLocationsEventsList' smart constructor.
+data CloudErrorReportingProjectsLocationsEventsList = CloudErrorReportingProjectsLocationsEventsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The group for which events shall be returned. The @group_id@ is a unique identifier for a particular error group. The identifier is derived from key parts of the error-log content and is treated as Service Data. For information about how Service Data is handled, see <https://cloud.google.com/terms/cloud-privacy-notice Google Cloud Privacy Notice>.
+    groupId :: (Core.Maybe Core.Text),
+    -- | Optional. The maximum number of results to return per response.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | Optional. A @next_page_token@ provided by a previous response.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The resource name of the Google Cloud Platform project. Written as @projects\/{projectID}@ or @projects\/{projectID}\/locations\/{location}@, where @{projectID}@ is the <https://support.google.com/cloud/answer/6158840 Google Cloud Platform project ID> and @{location}@ is a Cloud region. Examples: @projects\/my-project-123@, @projects\/my-project-123\/locations\/global@. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified.
+    projectName :: Core.Text,
+    -- | Optional. The exact value to match against </error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.resource_type ServiceContext.resource_type>.
+    serviceFilterResourceType :: (Core.Maybe Core.Text),
+    -- | Optional. The exact value to match against </error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.service ServiceContext.service>.
+    serviceFilterService :: (Core.Maybe Core.Text),
+    -- | Optional. The exact value to match against </error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.version ServiceContext.version>.
+    serviceFilterVersion :: (Core.Maybe Core.Text),
+    -- | Restricts the query to the specified time range.
+    timeRangePeriod :: (Core.Maybe ProjectsLocationsEventsListTimeRangePeriod),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CloudErrorReportingProjectsLocationsEventsList' with the minimum fields required to make a request.
+newCloudErrorReportingProjectsLocationsEventsList ::
+  -- |  Required. The resource name of the Google Cloud Platform project. Written as @projects\/{projectID}@ or @projects\/{projectID}\/locations\/{location}@, where @{projectID}@ is the <https://support.google.com/cloud/answer/6158840 Google Cloud Platform project ID> and @{location}@ is a Cloud region. Examples: @projects\/my-project-123@, @projects\/my-project-123\/locations\/global@. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified. See 'projectName'.
+  Core.Text ->
+  CloudErrorReportingProjectsLocationsEventsList
+newCloudErrorReportingProjectsLocationsEventsList projectName =
+  CloudErrorReportingProjectsLocationsEventsList
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      groupId = Core.Nothing,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      projectName = projectName,
+      serviceFilterResourceType = Core.Nothing,
+      serviceFilterService = Core.Nothing,
+      serviceFilterVersion = Core.Nothing,
+      timeRangePeriod = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    CloudErrorReportingProjectsLocationsEventsList
+  where
+  type
+    Rs CloudErrorReportingProjectsLocationsEventsList =
+      ListEventsResponse
+  type
+    Scopes CloudErrorReportingProjectsLocationsEventsList =
+      '[CloudPlatform'FullControl]
+  requestClient CloudErrorReportingProjectsLocationsEventsList {..} =
+    go
+      projectName
+      xgafv
+      accessToken
+      callback
+      groupId
+      pageSize
+      pageToken
+      serviceFilterResourceType
+      serviceFilterService
+      serviceFilterVersion
+      timeRangePeriod
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      cloudErrorReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy CloudErrorReportingProjectsLocationsEventsListResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/CloudErrorReporting/Projects/Locations/GroupStats/List.hs b/gen/Gogol/CloudErrorReporting/Projects/Locations/GroupStats/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/CloudErrorReporting/Projects/Locations/GroupStats/List.hs
@@ -0,0 +1,179 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.CloudErrorReporting.Projects.Locations.GroupStats.List
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Lists the specified groups.
+--
+-- /See:/ <https://cloud.google.com/error-reporting/ Error Reporting API Reference> for @clouderrorreporting.projects.locations.groupStats.list@.
+module Gogol.CloudErrorReporting.Projects.Locations.GroupStats.List
+  ( -- * Resource
+    CloudErrorReportingProjectsLocationsGroupStatsListResource,
+
+    -- ** Constructing a Request
+    CloudErrorReportingProjectsLocationsGroupStatsList (..),
+    newCloudErrorReportingProjectsLocationsGroupStatsList,
+  )
+where
+
+import Gogol.CloudErrorReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @clouderrorreporting.projects.locations.groupStats.list@ method which the
+-- 'CloudErrorReportingProjectsLocationsGroupStatsList' request conforms to.
+type CloudErrorReportingProjectsLocationsGroupStatsListResource =
+  "v1beta1"
+    Core.:> Core.Capture "projectName" Core.Text
+    Core.:> "groupStats"
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam
+              "alignment"
+              ProjectsLocationsGroupStatsListAlignment
+    Core.:> Core.QueryParam "alignmentTime" Core.DateTime
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParams "groupId" Core.Text
+    Core.:> Core.QueryParam "order" ProjectsLocationsGroupStatsListOrder
+    Core.:> Core.QueryParam "pageSize" Core.Int32
+    Core.:> Core.QueryParam "pageToken" Core.Text
+    Core.:> Core.QueryParam "serviceFilter.resourceType" Core.Text
+    Core.:> Core.QueryParam "serviceFilter.service" Core.Text
+    Core.:> Core.QueryParam "serviceFilter.version" Core.Text
+    Core.:> Core.QueryParam
+              "timeRange.period"
+              ProjectsLocationsGroupStatsListTimeRangePeriod
+    Core.:> Core.QueryParam "timedCountDuration" Core.Duration
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] ListGroupStatsResponse
+
+-- | Lists the specified groups.
+--
+-- /See:/ 'newCloudErrorReportingProjectsLocationsGroupStatsList' smart constructor.
+data CloudErrorReportingProjectsLocationsGroupStatsList = CloudErrorReportingProjectsLocationsGroupStatsList
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | Optional. The alignment of the timed counts to be returned. Default is @ALIGNMENT_EQUAL_AT_END@.
+    alignment :: (Core.Maybe ProjectsLocationsGroupStatsListAlignment),
+    -- | Optional. Time where the timed counts shall be aligned if rounded alignment is chosen. Default is 00:00 UTC.
+    alignmentTime :: (Core.Maybe Core.DateTime),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Optional. List all ErrorGroupStats with these IDs. The @group_id@ is a unique identifier for a particular error group. The identifier is derived from key parts of the error-log content and is treated as Service Data. For information about how Service Data is handled, see [Google Cloud Privacy Notice] (https:\/\/cloud.google.com\/terms\/cloud-privacy-notice).
+    groupId :: (Core.Maybe [Core.Text]),
+    -- | Optional. The sort order in which the results are returned. Default is @COUNT_DESC@.
+    order :: (Core.Maybe ProjectsLocationsGroupStatsListOrder),
+    -- | Optional. The maximum number of results to return per response. Default is 20.
+    pageSize :: (Core.Maybe Core.Int32),
+    -- | Optional. A next/page/token provided by a previous response. To view additional results, pass this token along with the identical query parameters as the first request.
+    pageToken :: (Core.Maybe Core.Text),
+    -- | Required. The resource name of the Google Cloud Platform project. Written as @projects\/{projectID}@ or @projects\/{projectNumber}@, where @{projectID}@ and @{projectNumber}@ can be found in the <https://support.google.com/cloud/answer/6158840 Google Cloud console>. It may also include a location, such as @projects\/{projectID}\/locations\/{location}@ where @{location}@ is a cloud region. Examples: @projects\/my-project-123@, @projects\/5551234@, @projects\/my-project-123\/locations\/us-central1@, @projects\/5551234\/locations\/us-central1@. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified. Use @-@ as a wildcard to request group stats from all regions.
+    projectName :: Core.Text,
+    -- | Optional. The exact value to match against </error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.resource_type ServiceContext.resource_type>.
+    serviceFilterResourceType :: (Core.Maybe Core.Text),
+    -- | Optional. The exact value to match against </error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.service ServiceContext.service>.
+    serviceFilterService :: (Core.Maybe Core.Text),
+    -- | Optional. The exact value to match against </error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.version ServiceContext.version>.
+    serviceFilterVersion :: (Core.Maybe Core.Text),
+    -- | Restricts the query to the specified time range.
+    timeRangePeriod :: (Core.Maybe ProjectsLocationsGroupStatsListTimeRangePeriod),
+    -- | Optional. The preferred duration for a single returned TimedCount. If not set, no timed counts are returned.
+    timedCountDuration :: (Core.Maybe Core.Duration),
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CloudErrorReportingProjectsLocationsGroupStatsList' with the minimum fields required to make a request.
+newCloudErrorReportingProjectsLocationsGroupStatsList ::
+  -- |  Required. The resource name of the Google Cloud Platform project. Written as @projects\/{projectID}@ or @projects\/{projectNumber}@, where @{projectID}@ and @{projectNumber}@ can be found in the <https://support.google.com/cloud/answer/6158840 Google Cloud console>. It may also include a location, such as @projects\/{projectID}\/locations\/{location}@ where @{location}@ is a cloud region. Examples: @projects\/my-project-123@, @projects\/5551234@, @projects\/my-project-123\/locations\/us-central1@, @projects\/5551234\/locations\/us-central1@. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified. Use @-@ as a wildcard to request group stats from all regions. See 'projectName'.
+  Core.Text ->
+  CloudErrorReportingProjectsLocationsGroupStatsList
+newCloudErrorReportingProjectsLocationsGroupStatsList projectName =
+  CloudErrorReportingProjectsLocationsGroupStatsList
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      alignment = Core.Nothing,
+      alignmentTime = Core.Nothing,
+      callback = Core.Nothing,
+      groupId = Core.Nothing,
+      order = Core.Nothing,
+      pageSize = Core.Nothing,
+      pageToken = Core.Nothing,
+      projectName = projectName,
+      serviceFilterResourceType = Core.Nothing,
+      serviceFilterService = Core.Nothing,
+      serviceFilterVersion = Core.Nothing,
+      timeRangePeriod = Core.Nothing,
+      timedCountDuration = Core.Nothing,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    CloudErrorReportingProjectsLocationsGroupStatsList
+  where
+  type
+    Rs CloudErrorReportingProjectsLocationsGroupStatsList =
+      ListGroupStatsResponse
+  type
+    Scopes CloudErrorReportingProjectsLocationsGroupStatsList =
+      '[CloudPlatform'FullControl]
+  requestClient
+    CloudErrorReportingProjectsLocationsGroupStatsList {..} =
+      go
+        projectName
+        xgafv
+        accessToken
+        alignment
+        alignmentTime
+        callback
+        (groupId Core.^. Core._Default)
+        order
+        pageSize
+        pageToken
+        serviceFilterResourceType
+        serviceFilterService
+        serviceFilterVersion
+        timeRangePeriod
+        timedCountDuration
+        uploadType
+        uploadProtocol
+        (Core.Just Core.AltJSON)
+        cloudErrorReportingService
+      where
+        go =
+          Core.buildClient
+            ( Core.Proxy ::
+                Core.Proxy
+                  CloudErrorReportingProjectsLocationsGroupStatsListResource
+            )
+            Core.mempty
diff --git a/gen/Gogol/CloudErrorReporting/Projects/Locations/Groups/Get.hs b/gen/Gogol/CloudErrorReporting/Projects/Locations/Groups/Get.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/CloudErrorReporting/Projects/Locations/Groups/Get.hs
@@ -0,0 +1,115 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.CloudErrorReporting.Projects.Locations.Groups.Get
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Get the specified group.
+--
+-- /See:/ <https://cloud.google.com/error-reporting/ Error Reporting API Reference> for @clouderrorreporting.projects.locations.groups.get@.
+module Gogol.CloudErrorReporting.Projects.Locations.Groups.Get
+  ( -- * Resource
+    CloudErrorReportingProjectsLocationsGroupsGetResource,
+
+    -- ** Constructing a Request
+    CloudErrorReportingProjectsLocationsGroupsGet (..),
+    newCloudErrorReportingProjectsLocationsGroupsGet,
+  )
+where
+
+import Gogol.CloudErrorReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @clouderrorreporting.projects.locations.groups.get@ method which the
+-- 'CloudErrorReportingProjectsLocationsGroupsGet' request conforms to.
+type CloudErrorReportingProjectsLocationsGroupsGetResource =
+  "v1beta1"
+    Core.:> Core.Capture "groupName" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.Get '[Core.JSON] ErrorGroup
+
+-- | Get the specified group.
+--
+-- /See:/ 'newCloudErrorReportingProjectsLocationsGroupsGet' smart constructor.
+data CloudErrorReportingProjectsLocationsGroupsGet = CloudErrorReportingProjectsLocationsGroupsGet
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | Required. The group resource name. Written as either @projects\/{projectID}\/groups\/{group_id}@ or @projects\/{projectID}\/locations\/{location}\/groups\/{group_id}@. Call groupStats.list to return a list of groups belonging to this project. Examples: @projects\/my-project-123\/groups\/my-group@, @projects\/my-project-123\/locations\/global\/groups\/my-group@ In the group resource name, the @group_id@ is a unique identifier for a particular error group. The identifier is derived from key parts of the error-log content and is treated as Service Data. For information about how Service Data is handled, see <https://cloud.google.com/terms/cloud-privacy-notice Google Cloud Privacy Notice>. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified.
+    groupName :: Core.Text,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CloudErrorReportingProjectsLocationsGroupsGet' with the minimum fields required to make a request.
+newCloudErrorReportingProjectsLocationsGroupsGet ::
+  -- |  Required. The group resource name. Written as either @projects\/{projectID}\/groups\/{group_id}@ or @projects\/{projectID}\/locations\/{location}\/groups\/{group_id}@. Call groupStats.list to return a list of groups belonging to this project. Examples: @projects\/my-project-123\/groups\/my-group@, @projects\/my-project-123\/locations\/global\/groups\/my-group@ In the group resource name, the @group_id@ is a unique identifier for a particular error group. The identifier is derived from key parts of the error-log content and is treated as Service Data. For information about how Service Data is handled, see <https://cloud.google.com/terms/cloud-privacy-notice Google Cloud Privacy Notice>. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified. See 'groupName'.
+  Core.Text ->
+  CloudErrorReportingProjectsLocationsGroupsGet
+newCloudErrorReportingProjectsLocationsGroupsGet groupName =
+  CloudErrorReportingProjectsLocationsGroupsGet
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      groupName = groupName,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    CloudErrorReportingProjectsLocationsGroupsGet
+  where
+  type Rs CloudErrorReportingProjectsLocationsGroupsGet = ErrorGroup
+  type
+    Scopes CloudErrorReportingProjectsLocationsGroupsGet =
+      '[CloudPlatform'FullControl]
+  requestClient CloudErrorReportingProjectsLocationsGroupsGet {..} =
+    go
+      groupName
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      cloudErrorReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy CloudErrorReportingProjectsLocationsGroupsGetResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/CloudErrorReporting/Projects/Locations/Groups/Update.hs b/gen/Gogol/CloudErrorReporting/Projects/Locations/Groups/Update.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/CloudErrorReporting/Projects/Locations/Groups/Update.hs
@@ -0,0 +1,125 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.CloudErrorReporting.Projects.Locations.Groups.Update
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Replace the data for the specified group. Fails if the group does not exist.
+--
+-- /See:/ <https://cloud.google.com/error-reporting/ Error Reporting API Reference> for @clouderrorreporting.projects.locations.groups.update@.
+module Gogol.CloudErrorReporting.Projects.Locations.Groups.Update
+  ( -- * Resource
+    CloudErrorReportingProjectsLocationsGroupsUpdateResource,
+
+    -- ** Constructing a Request
+    CloudErrorReportingProjectsLocationsGroupsUpdate (..),
+    newCloudErrorReportingProjectsLocationsGroupsUpdate,
+  )
+where
+
+import Gogol.CloudErrorReporting.Types
+import Gogol.Prelude qualified as Core
+
+-- | A resource alias for @clouderrorreporting.projects.locations.groups.update@ method which the
+-- 'CloudErrorReportingProjectsLocationsGroupsUpdate' request conforms to.
+type CloudErrorReportingProjectsLocationsGroupsUpdateResource =
+  "v1beta1"
+    Core.:> Core.Capture "name" Core.Text
+    Core.:> Core.QueryParam "$.xgafv" Xgafv
+    Core.:> Core.QueryParam "access_token" Core.Text
+    Core.:> Core.QueryParam "callback" Core.Text
+    Core.:> Core.QueryParam "uploadType" Core.Text
+    Core.:> Core.QueryParam "upload_protocol" Core.Text
+    Core.:> Core.QueryParam "alt" Core.AltJSON
+    Core.:> Core.ReqBody '[Core.JSON] ErrorGroup
+    Core.:> Core.Put '[Core.JSON] ErrorGroup
+
+-- | Replace the data for the specified group. Fails if the group does not exist.
+--
+-- /See:/ 'newCloudErrorReportingProjectsLocationsGroupsUpdate' smart constructor.
+data CloudErrorReportingProjectsLocationsGroupsUpdate = CloudErrorReportingProjectsLocationsGroupsUpdate
+  { -- | V1 error format.
+    xgafv :: (Core.Maybe Xgafv),
+    -- | OAuth access token.
+    accessToken :: (Core.Maybe Core.Text),
+    -- | JSONP
+    callback :: (Core.Maybe Core.Text),
+    -- | The group resource name. Written as @projects\/{projectID}\/groups\/{group_id}@ or @projects\/{projectID}\/locations\/{location}\/groups\/{group_id}@ Examples: @projects\/my-project-123\/groups\/my-group@, @projects\/my-project-123\/locations\/us-central1\/groups\/my-group@ In the group resource name, the @group_id@ is a unique identifier for a particular error group. The identifier is derived from key parts of the error-log content and is treated as Service Data. For information about how Service Data is handled, see <https://cloud.google.com/terms/cloud-privacy-notice Google Cloud Privacy Notice>. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified.
+    name :: Core.Text,
+    -- | Multipart request metadata.
+    payload :: ErrorGroup,
+    -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
+    uploadType :: (Core.Maybe Core.Text),
+    -- | Upload protocol for media (e.g. \"raw\", \"multipart\").
+    uploadProtocol :: (Core.Maybe Core.Text)
+  }
+  deriving (Core.Eq, Core.Show, Core.Generic)
+
+-- | Creates a value of 'CloudErrorReportingProjectsLocationsGroupsUpdate' with the minimum fields required to make a request.
+newCloudErrorReportingProjectsLocationsGroupsUpdate ::
+  -- |  The group resource name. Written as @projects\/{projectID}\/groups\/{group_id}@ or @projects\/{projectID}\/locations\/{location}\/groups\/{group_id}@ Examples: @projects\/my-project-123\/groups\/my-group@, @projects\/my-project-123\/locations\/us-central1\/groups\/my-group@ In the group resource name, the @group_id@ is a unique identifier for a particular error group. The identifier is derived from key parts of the error-log content and is treated as Service Data. For information about how Service Data is handled, see <https://cloud.google.com/terms/cloud-privacy-notice Google Cloud Privacy Notice>. For a list of supported locations, see <https://cloud.google.com/logging/docs/region-support Supported Regions>. @global@ is the default when unspecified. See 'name'.
+  Core.Text ->
+  -- |  Multipart request metadata. See 'payload'.
+  ErrorGroup ->
+  CloudErrorReportingProjectsLocationsGroupsUpdate
+newCloudErrorReportingProjectsLocationsGroupsUpdate name payload =
+  CloudErrorReportingProjectsLocationsGroupsUpdate
+    { xgafv =
+        Core.Nothing,
+      accessToken = Core.Nothing,
+      callback = Core.Nothing,
+      name = name,
+      payload = payload,
+      uploadType = Core.Nothing,
+      uploadProtocol = Core.Nothing
+    }
+
+instance
+  Core.GoogleRequest
+    CloudErrorReportingProjectsLocationsGroupsUpdate
+  where
+  type
+    Rs CloudErrorReportingProjectsLocationsGroupsUpdate =
+      ErrorGroup
+  type
+    Scopes CloudErrorReportingProjectsLocationsGroupsUpdate =
+      '[CloudPlatform'FullControl]
+  requestClient CloudErrorReportingProjectsLocationsGroupsUpdate {..} =
+    go
+      name
+      xgafv
+      accessToken
+      callback
+      uploadType
+      uploadProtocol
+      (Core.Just Core.AltJSON)
+      payload
+      cloudErrorReportingService
+    where
+      go =
+        Core.buildClient
+          ( Core.Proxy ::
+              Core.Proxy
+                CloudErrorReportingProjectsLocationsGroupsUpdateResource
+          )
+          Core.mempty
diff --git a/gen/Gogol/CloudErrorReporting/Types.hs b/gen/Gogol/CloudErrorReporting/Types.hs
new file mode 100644
--- /dev/null
+++ b/gen/Gogol/CloudErrorReporting/Types.hs
@@ -0,0 +1,140 @@
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE DuplicateRecordFields #-}
+{-# LANGUAGE ImportQualifiedPost #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE PatternSynonyms #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NoImplicitPrelude #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- |
+-- Module      : Gogol.CloudErrorReporting.Types
+-- Copyright   : (c) 2015-2025 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
+--               Toni Cebrián <toni@tonicebrian.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+module Gogol.CloudErrorReporting.Types
+  ( -- * Configuration
+    cloudErrorReportingService,
+
+    -- * OAuth Scopes
+    CloudPlatform'FullControl,
+
+    -- * Types
+
+    -- ** Xgafv
+    Xgafv (..),
+
+    -- ** DeleteEventsResponse
+    DeleteEventsResponse (..),
+    newDeleteEventsResponse,
+
+    -- ** ErrorContext
+    ErrorContext (..),
+    newErrorContext,
+
+    -- ** ErrorEvent
+    ErrorEvent (..),
+    newErrorEvent,
+
+    -- ** ErrorGroup
+    ErrorGroup (..),
+    newErrorGroup,
+
+    -- ** ErrorGroup_ResolutionStatus
+    ErrorGroup_ResolutionStatus (..),
+
+    -- ** ErrorGroupStats
+    ErrorGroupStats (..),
+    newErrorGroupStats,
+
+    -- ** HttpRequestContext
+    HttpRequestContext (..),
+    newHttpRequestContext,
+
+    -- ** ListEventsResponse
+    ListEventsResponse (..),
+    newListEventsResponse,
+
+    -- ** ListGroupStatsResponse
+    ListGroupStatsResponse (..),
+    newListGroupStatsResponse,
+
+    -- ** ReportErrorEventResponse
+    ReportErrorEventResponse (..),
+    newReportErrorEventResponse,
+
+    -- ** ReportedErrorEvent
+    ReportedErrorEvent (..),
+    newReportedErrorEvent,
+
+    -- ** ServiceContext
+    ServiceContext (..),
+    newServiceContext,
+
+    -- ** SourceLocation
+    SourceLocation (..),
+    newSourceLocation,
+
+    -- ** SourceReference
+    SourceReference (..),
+    newSourceReference,
+
+    -- ** TimedCount
+    TimedCount (..),
+    newTimedCount,
+
+    -- ** TrackingIssue
+    TrackingIssue (..),
+    newTrackingIssue,
+
+    -- ** ProjectsEventsListTimeRangePeriod
+    ProjectsEventsListTimeRangePeriod (..),
+
+    -- ** ProjectsGroupStatsListAlignment
+    ProjectsGroupStatsListAlignment (..),
+
+    -- ** ProjectsGroupStatsListOrder
+    ProjectsGroupStatsListOrder (..),
+
+    -- ** ProjectsGroupStatsListTimeRangePeriod
+    ProjectsGroupStatsListTimeRangePeriod (..),
+
+    -- ** ProjectsLocationsEventsListTimeRangePeriod
+    ProjectsLocationsEventsListTimeRangePeriod (..),
+
+    -- ** ProjectsLocationsGroupStatsListAlignment
+    ProjectsLocationsGroupStatsListAlignment (..),
+
+    -- ** ProjectsLocationsGroupStatsListOrder
+    ProjectsLocationsGroupStatsListOrder (..),
+
+    -- ** ProjectsLocationsGroupStatsListTimeRangePeriod
+    ProjectsLocationsGroupStatsListTimeRangePeriod (..),
+  )
+where
+
+import Gogol.CloudErrorReporting.Internal.Product
+import Gogol.CloudErrorReporting.Internal.Sum
+import Gogol.Prelude qualified as Core
+
+-- | Default request referring to version @v1beta1@ of the Error Reporting API. This contains the host and root path used as a starting point for constructing service requests.
+cloudErrorReportingService :: Core.ServiceConfig
+cloudErrorReportingService =
+  Core.defaultService
+    (Core.ServiceId "clouderrorreporting:v1beta1")
+    "clouderrorreporting.googleapis.com"
+
+-- | See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account.
+type CloudPlatform'FullControl =
+  "https://www.googleapis.com/auth/cloud-platform"
diff --git a/gen/Network/Google/CloudErrorReporting.hs b/gen/Network/Google/CloudErrorReporting.hs
deleted file mode 100644
--- a/gen/Network/Google/CloudErrorReporting.hs
+++ /dev/null
@@ -1,186 +0,0 @@
-{-# LANGUAGE DataKinds         #-}
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TypeOperators     #-}
-
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-
--- |
--- Module      : Network.Google.CloudErrorReporting
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Groups and counts similar errors from cloud services and applications,
--- reports new errors, and provides access to error groups and their
--- associated errors.
---
--- /See:/ <https://cloud.google.com/error-reporting/ Stackdriver Error Reporting API Reference>
-module Network.Google.CloudErrorReporting
-    (
-    -- * Service Configuration
-      cloudErrorReportingService
-
-    -- * OAuth Scopes
-    , cloudPlatformScope
-
-    -- * API Declaration
-    , CloudErrorReportingAPI
-
-    -- * Resources
-
-    -- ** clouderrorreporting.projects.deleteEvents
-    , module Network.Google.Resource.CloudErrorReporting.Projects.DeleteEvents
-
-    -- ** clouderrorreporting.projects.events.list
-    , module Network.Google.Resource.CloudErrorReporting.Projects.Events.List
-
-    -- ** clouderrorreporting.projects.events.report
-    , module Network.Google.Resource.CloudErrorReporting.Projects.Events.Report
-
-    -- ** clouderrorreporting.projects.groupStats.list
-    , module Network.Google.Resource.CloudErrorReporting.Projects.GroupStats.List
-
-    -- ** clouderrorreporting.projects.groups.get
-    , module Network.Google.Resource.CloudErrorReporting.Projects.Groups.Get
-
-    -- ** clouderrorreporting.projects.groups.update
-    , module Network.Google.Resource.CloudErrorReporting.Projects.Groups.Update
-
-    -- * Types
-
-    -- ** ErrorEvent
-    , ErrorEvent
-    , errorEvent
-    , eeContext
-    , eeEventTime
-    , eeServiceContext
-    , eeMessage
-
-    -- ** ErrorContext
-    , ErrorContext
-    , errorContext
-    , ecHTTPRequest
-    , ecUser
-    , ecSourceReferences
-    , ecReportLocation
-
-    -- ** ErrorGroup
-    , ErrorGroup
-    , errorGroup
-    , egTrackingIssues
-    , egName
-    , egGroupId
-
-    -- ** DeleteEventsResponse
-    , DeleteEventsResponse
-    , deleteEventsResponse
-
-    -- ** ReportedErrorEvent
-    , ReportedErrorEvent
-    , reportedErrorEvent
-    , reeContext
-    , reeEventTime
-    , reeServiceContext
-    , reeMessage
-
-    -- ** HTTPRequestContext
-    , HTTPRequestContext
-    , hTTPRequestContext
-    , httprcRemoteIP
-    , httprcURL
-    , httprcReferrer
-    , httprcMethod
-    , httprcResponseStatusCode
-    , httprcUserAgent
-
-    -- ** TrackingIssue
-    , TrackingIssue
-    , trackingIssue
-    , tiURL
-
-    -- ** ListEventsResponse
-    , ListEventsResponse
-    , listEventsResponse
-    , lerNextPageToken
-    , lerTimeRangeBegin
-    , lerErrorEvents
-
-    -- ** ErrorGroupStats
-    , ErrorGroupStats
-    , errorGroupStats
-    , egsAffectedServices
-    , egsGroup
-    , egsFirstSeenTime
-    , egsAffectedUsersCount
-    , egsCount
-    , egsTimedCounts
-    , egsNumAffectedServices
-    , egsLastSeenTime
-    , egsRepresentative
-
-    -- ** ListGroupStatsResponse
-    , ListGroupStatsResponse
-    , listGroupStatsResponse
-    , lgsrNextPageToken
-    , lgsrTimeRangeBegin
-    , lgsrErrorGroupStats
-
-    -- ** ServiceContext
-    , ServiceContext
-    , serviceContext
-    , scResourceType
-    , scService
-    , scVersion
-
-    -- ** Xgafv
-    , Xgafv (..)
-
-    -- ** TimedCount
-    , TimedCount
-    , timedCount
-    , tcStartTime
-    , tcCount
-    , tcEndTime
-
-    -- ** SourceLocation
-    , SourceLocation
-    , sourceLocation
-    , slLineNumber
-    , slFilePath
-    , slFunctionName
-
-    -- ** SourceReference
-    , SourceReference
-    , sourceReference
-    , srRepository
-    , srRevisionId
-
-    -- ** ReportErrorEventResponse
-    , ReportErrorEventResponse
-    , reportErrorEventResponse
-    ) where
-
-import           Network.Google.CloudErrorReporting.Types
-import           Network.Google.Prelude
-import           Network.Google.Resource.CloudErrorReporting.Projects.DeleteEvents
-import           Network.Google.Resource.CloudErrorReporting.Projects.Events.List
-import           Network.Google.Resource.CloudErrorReporting.Projects.Events.Report
-import           Network.Google.Resource.CloudErrorReporting.Projects.Groups.Get
-import           Network.Google.Resource.CloudErrorReporting.Projects.Groups.Update
-import           Network.Google.Resource.CloudErrorReporting.Projects.GroupStats.List
-
-{- $resources
-TODO
--}
-
--- | Represents the entirety of the methods and resources available for the Stackdriver Error Reporting API service.
-type CloudErrorReportingAPI =
-     ProjectsGroupsGetResource :<|>
-       ProjectsGroupsUpdateResource
-       :<|> ProjectsGroupStatsListResource
-       :<|> ProjectsEventsListResource
-       :<|> ProjectsEventsReportResource
-       :<|> ProjectsDeleteEventsResource
diff --git a/gen/Network/Google/CloudErrorReporting/Types.hs b/gen/Network/Google/CloudErrorReporting/Types.hs
deleted file mode 100644
--- a/gen/Network/Google/CloudErrorReporting/Types.hs
+++ /dev/null
@@ -1,150 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-
-{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-
--- |
--- Module      : Network.Google.CloudErrorReporting.Types
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
-module Network.Google.CloudErrorReporting.Types
-    (
-    -- * Service Configuration
-      cloudErrorReportingService
-
-    -- * OAuth Scopes
-    , cloudPlatformScope
-
-    -- * ErrorEvent
-    , ErrorEvent
-    , errorEvent
-    , eeContext
-    , eeEventTime
-    , eeServiceContext
-    , eeMessage
-
-    -- * ErrorContext
-    , ErrorContext
-    , errorContext
-    , ecHTTPRequest
-    , ecUser
-    , ecSourceReferences
-    , ecReportLocation
-
-    -- * ErrorGroup
-    , ErrorGroup
-    , errorGroup
-    , egTrackingIssues
-    , egName
-    , egGroupId
-
-    -- * DeleteEventsResponse
-    , DeleteEventsResponse
-    , deleteEventsResponse
-
-    -- * ReportedErrorEvent
-    , ReportedErrorEvent
-    , reportedErrorEvent
-    , reeContext
-    , reeEventTime
-    , reeServiceContext
-    , reeMessage
-
-    -- * HTTPRequestContext
-    , HTTPRequestContext
-    , hTTPRequestContext
-    , httprcRemoteIP
-    , httprcURL
-    , httprcReferrer
-    , httprcMethod
-    , httprcResponseStatusCode
-    , httprcUserAgent
-
-    -- * TrackingIssue
-    , TrackingIssue
-    , trackingIssue
-    , tiURL
-
-    -- * ListEventsResponse
-    , ListEventsResponse
-    , listEventsResponse
-    , lerNextPageToken
-    , lerTimeRangeBegin
-    , lerErrorEvents
-
-    -- * ErrorGroupStats
-    , ErrorGroupStats
-    , errorGroupStats
-    , egsAffectedServices
-    , egsGroup
-    , egsFirstSeenTime
-    , egsAffectedUsersCount
-    , egsCount
-    , egsTimedCounts
-    , egsNumAffectedServices
-    , egsLastSeenTime
-    , egsRepresentative
-
-    -- * ListGroupStatsResponse
-    , ListGroupStatsResponse
-    , listGroupStatsResponse
-    , lgsrNextPageToken
-    , lgsrTimeRangeBegin
-    , lgsrErrorGroupStats
-
-    -- * ServiceContext
-    , ServiceContext
-    , serviceContext
-    , scResourceType
-    , scService
-    , scVersion
-
-    -- * Xgafv
-    , Xgafv (..)
-
-    -- * TimedCount
-    , TimedCount
-    , timedCount
-    , tcStartTime
-    , tcCount
-    , tcEndTime
-
-    -- * SourceLocation
-    , SourceLocation
-    , sourceLocation
-    , slLineNumber
-    , slFilePath
-    , slFunctionName
-
-    -- * SourceReference
-    , SourceReference
-    , sourceReference
-    , srRepository
-    , srRevisionId
-
-    -- * ReportErrorEventResponse
-    , ReportErrorEventResponse
-    , reportErrorEventResponse
-    ) where
-
-import           Network.Google.CloudErrorReporting.Types.Product
-import           Network.Google.CloudErrorReporting.Types.Sum
-import           Network.Google.Prelude
-
--- | Default request referring to version 'v1beta1' of the Stackdriver Error Reporting API. This contains the host and root path used as a starting point for constructing service requests.
-cloudErrorReportingService :: ServiceConfig
-cloudErrorReportingService
-  = defaultService
-      (ServiceId "clouderrorreporting:v1beta1")
-      "clouderrorreporting.googleapis.com"
-
--- | View and manage your data across Google Cloud Platform services
-cloudPlatformScope :: Proxy '["https://www.googleapis.com/auth/cloud-platform"]
-cloudPlatformScope = Proxy
diff --git a/gen/Network/Google/CloudErrorReporting/Types/Product.hs b/gen/Network/Google/CloudErrorReporting/Types/Product.hs
deleted file mode 100644
--- a/gen/Network/Google/CloudErrorReporting/Types/Product.hs
+++ /dev/null
@@ -1,1097 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-
-{-# OPTIONS_GHC -fno-warn-unused-binds   #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-
--- |
--- Module      : Network.Google.CloudErrorReporting.Types.Product
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
-module Network.Google.CloudErrorReporting.Types.Product where
-
-import           Network.Google.CloudErrorReporting.Types.Sum
-import           Network.Google.Prelude
-
--- | An error event which is returned by the Error Reporting system.
---
--- /See:/ 'errorEvent' smart constructor.
-data ErrorEvent =
-  ErrorEvent'
-    { _eeContext        :: !(Maybe ErrorContext)
-    , _eeEventTime      :: !(Maybe DateTime')
-    , _eeServiceContext :: !(Maybe ServiceContext)
-    , _eeMessage        :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ErrorEvent' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'eeContext'
---
--- * 'eeEventTime'
---
--- * 'eeServiceContext'
---
--- * 'eeMessage'
-errorEvent
-    :: ErrorEvent
-errorEvent =
-  ErrorEvent'
-    { _eeContext = Nothing
-    , _eeEventTime = Nothing
-    , _eeServiceContext = Nothing
-    , _eeMessage = Nothing
-    }
-
-
--- | Data about the context in which the error occurred.
-eeContext :: Lens' ErrorEvent (Maybe ErrorContext)
-eeContext
-  = lens _eeContext (\ s a -> s{_eeContext = a})
-
--- | Time when the event occurred as provided in the error report. If the
--- report did not contain a timestamp, the time the error was received by
--- the Error Reporting system is used.
-eeEventTime :: Lens' ErrorEvent (Maybe UTCTime)
-eeEventTime
-  = lens _eeEventTime (\ s a -> s{_eeEventTime = a}) .
-      mapping _DateTime
-
--- | The \`ServiceContext\` for which this error was reported.
-eeServiceContext :: Lens' ErrorEvent (Maybe ServiceContext)
-eeServiceContext
-  = lens _eeServiceContext
-      (\ s a -> s{_eeServiceContext = a})
-
--- | The stack trace that was reported or logged by the service.
-eeMessage :: Lens' ErrorEvent (Maybe Text)
-eeMessage
-  = lens _eeMessage (\ s a -> s{_eeMessage = a})
-
-instance FromJSON ErrorEvent where
-        parseJSON
-          = withObject "ErrorEvent"
-              (\ o ->
-                 ErrorEvent' <$>
-                   (o .:? "context") <*> (o .:? "eventTime") <*>
-                     (o .:? "serviceContext")
-                     <*> (o .:? "message"))
-
-instance ToJSON ErrorEvent where
-        toJSON ErrorEvent'{..}
-          = object
-              (catMaybes
-                 [("context" .=) <$> _eeContext,
-                  ("eventTime" .=) <$> _eeEventTime,
-                  ("serviceContext" .=) <$> _eeServiceContext,
-                  ("message" .=) <$> _eeMessage])
-
--- | A description of the context in which an error occurred. This data
--- should be provided by the application when reporting an error, unless
--- the error report has been generated automatically from Google App Engine
--- logs.
---
--- /See:/ 'errorContext' smart constructor.
-data ErrorContext =
-  ErrorContext'
-    { _ecHTTPRequest      :: !(Maybe HTTPRequestContext)
-    , _ecUser             :: !(Maybe Text)
-    , _ecSourceReferences :: !(Maybe [SourceReference])
-    , _ecReportLocation   :: !(Maybe SourceLocation)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ErrorContext' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'ecHTTPRequest'
---
--- * 'ecUser'
---
--- * 'ecSourceReferences'
---
--- * 'ecReportLocation'
-errorContext
-    :: ErrorContext
-errorContext =
-  ErrorContext'
-    { _ecHTTPRequest = Nothing
-    , _ecUser = Nothing
-    , _ecSourceReferences = Nothing
-    , _ecReportLocation = Nothing
-    }
-
-
--- | The HTTP request which was processed when the error was triggered.
-ecHTTPRequest :: Lens' ErrorContext (Maybe HTTPRequestContext)
-ecHTTPRequest
-  = lens _ecHTTPRequest
-      (\ s a -> s{_ecHTTPRequest = a})
-
--- | The user who caused or was affected by the crash. This can be a user ID,
--- an email address, or an arbitrary token that uniquely identifies the
--- user. When sending an error report, leave this field empty if the user
--- was not logged in. In this case the Error Reporting system will use
--- other data, such as remote IP address, to distinguish affected users.
--- See \`affected_users_count\` in \`ErrorGroupStats\`.
-ecUser :: Lens' ErrorContext (Maybe Text)
-ecUser = lens _ecUser (\ s a -> s{_ecUser = a})
-
--- | Source code that was used to build the executable which has caused the
--- given error message.
-ecSourceReferences :: Lens' ErrorContext [SourceReference]
-ecSourceReferences
-  = lens _ecSourceReferences
-      (\ s a -> s{_ecSourceReferences = a})
-      . _Default
-      . _Coerce
-
--- | The location in the source code where the decision was made to report
--- the error, usually the place where it was logged. For a logged exception
--- this would be the source line where the exception is logged, usually
--- close to the place where it was caught.
-ecReportLocation :: Lens' ErrorContext (Maybe SourceLocation)
-ecReportLocation
-  = lens _ecReportLocation
-      (\ s a -> s{_ecReportLocation = a})
-
-instance FromJSON ErrorContext where
-        parseJSON
-          = withObject "ErrorContext"
-              (\ o ->
-                 ErrorContext' <$>
-                   (o .:? "httpRequest") <*> (o .:? "user") <*>
-                     (o .:? "sourceReferences" .!= mempty)
-                     <*> (o .:? "reportLocation"))
-
-instance ToJSON ErrorContext where
-        toJSON ErrorContext'{..}
-          = object
-              (catMaybes
-                 [("httpRequest" .=) <$> _ecHTTPRequest,
-                  ("user" .=) <$> _ecUser,
-                  ("sourceReferences" .=) <$> _ecSourceReferences,
-                  ("reportLocation" .=) <$> _ecReportLocation])
-
--- | Description of a group of similar error events.
---
--- /See:/ 'errorGroup' smart constructor.
-data ErrorGroup =
-  ErrorGroup'
-    { _egTrackingIssues :: !(Maybe [TrackingIssue])
-    , _egName           :: !(Maybe Text)
-    , _egGroupId        :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ErrorGroup' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'egTrackingIssues'
---
--- * 'egName'
---
--- * 'egGroupId'
-errorGroup
-    :: ErrorGroup
-errorGroup =
-  ErrorGroup'
-    {_egTrackingIssues = Nothing, _egName = Nothing, _egGroupId = Nothing}
-
-
--- | Associated tracking issues.
-egTrackingIssues :: Lens' ErrorGroup [TrackingIssue]
-egTrackingIssues
-  = lens _egTrackingIssues
-      (\ s a -> s{_egTrackingIssues = a})
-      . _Default
-      . _Coerce
-
--- | The group resource name. Example:
--- 'projects\/my-project-123\/groups\/my-groupid'
-egName :: Lens' ErrorGroup (Maybe Text)
-egName = lens _egName (\ s a -> s{_egName = a})
-
--- | Group IDs are unique for a given project. If the same kind of error
--- occurs in different service contexts, it will receive the same group ID.
-egGroupId :: Lens' ErrorGroup (Maybe Text)
-egGroupId
-  = lens _egGroupId (\ s a -> s{_egGroupId = a})
-
-instance FromJSON ErrorGroup where
-        parseJSON
-          = withObject "ErrorGroup"
-              (\ o ->
-                 ErrorGroup' <$>
-                   (o .:? "trackingIssues" .!= mempty) <*>
-                     (o .:? "name")
-                     <*> (o .:? "groupId"))
-
-instance ToJSON ErrorGroup where
-        toJSON ErrorGroup'{..}
-          = object
-              (catMaybes
-                 [("trackingIssues" .=) <$> _egTrackingIssues,
-                  ("name" .=) <$> _egName,
-                  ("groupId" .=) <$> _egGroupId])
-
--- | Response message for deleting error events.
---
--- /See:/ 'deleteEventsResponse' smart constructor.
-data DeleteEventsResponse =
-  DeleteEventsResponse'
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'DeleteEventsResponse' with the minimum fields required to make a request.
---
-deleteEventsResponse
-    :: DeleteEventsResponse
-deleteEventsResponse = DeleteEventsResponse'
-
-
-instance FromJSON DeleteEventsResponse where
-        parseJSON
-          = withObject "DeleteEventsResponse"
-              (\ o -> pure DeleteEventsResponse')
-
-instance ToJSON DeleteEventsResponse where
-        toJSON = const emptyObject
-
--- | An error event which is reported to the Error Reporting system.
---
--- /See:/ 'reportedErrorEvent' smart constructor.
-data ReportedErrorEvent =
-  ReportedErrorEvent'
-    { _reeContext        :: !(Maybe ErrorContext)
-    , _reeEventTime      :: !(Maybe DateTime')
-    , _reeServiceContext :: !(Maybe ServiceContext)
-    , _reeMessage        :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportedErrorEvent' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'reeContext'
---
--- * 'reeEventTime'
---
--- * 'reeServiceContext'
---
--- * 'reeMessage'
-reportedErrorEvent
-    :: ReportedErrorEvent
-reportedErrorEvent =
-  ReportedErrorEvent'
-    { _reeContext = Nothing
-    , _reeEventTime = Nothing
-    , _reeServiceContext = Nothing
-    , _reeMessage = Nothing
-    }
-
-
--- | [Optional] A description of the context in which the error occurred.
-reeContext :: Lens' ReportedErrorEvent (Maybe ErrorContext)
-reeContext
-  = lens _reeContext (\ s a -> s{_reeContext = a})
-
--- | [Optional] Time when the event occurred. If not provided, the time when
--- the event was received by the Error Reporting system will be used.
-reeEventTime :: Lens' ReportedErrorEvent (Maybe UTCTime)
-reeEventTime
-  = lens _reeEventTime (\ s a -> s{_reeEventTime = a})
-      . mapping _DateTime
-
--- | [Required] The service context in which this error has occurred.
-reeServiceContext :: Lens' ReportedErrorEvent (Maybe ServiceContext)
-reeServiceContext
-  = lens _reeServiceContext
-      (\ s a -> s{_reeServiceContext = a})
-
--- | [Required] The error message. If no \`context.reportLocation\` is
--- provided, the message must contain a header (typically consisting of the
--- exception type name and an error message) and an exception stack trace
--- in one of the supported programming languages and formats. Supported
--- languages are Java, Python, JavaScript, Ruby, C#, PHP, and Go. Supported
--- stack trace formats are: * **Java**: Must be the return value of
--- [\`Throwable.printStackTrace()\`](https:\/\/docs.oracle.com\/javase\/7\/docs\/api\/java\/lang\/Throwable.html#printStackTrace%28%29).
--- * **Python**: Must be the return value of
--- [\`traceback.format_exc()\`](https:\/\/docs.python.org\/2\/library\/traceback.html#traceback.format_exc).
--- * **JavaScript**: Must be the value of
--- [\`error.stack\`](https:\/\/github.com\/v8\/v8\/wiki\/Stack-Trace-API)
--- as returned by V8. * **Ruby**: Must contain frames returned by
--- [\`Exception.backtrace\`](https:\/\/ruby-doc.org\/core-2.2.0\/Exception.html#method-i-backtrace).
--- * **C#**: Must be the return value of
--- [\`Exception.ToString()\`](https:\/\/msdn.microsoft.com\/en-us\/library\/system.exception.tostring.aspx).
--- * **PHP**: Must start with \`PHP (Notice|Parse error|Fatal
--- error|Warning)\` and contain the result of
--- [\`(string)$exception\`](http:\/\/php.net\/manual\/en\/exception.tostring.php).
--- * **Go**: Must be the return value of
--- [\`runtime.Stack()\`](https:\/\/golang.org\/pkg\/runtime\/debug\/#Stack).
-reeMessage :: Lens' ReportedErrorEvent (Maybe Text)
-reeMessage
-  = lens _reeMessage (\ s a -> s{_reeMessage = a})
-
-instance FromJSON ReportedErrorEvent where
-        parseJSON
-          = withObject "ReportedErrorEvent"
-              (\ o ->
-                 ReportedErrorEvent' <$>
-                   (o .:? "context") <*> (o .:? "eventTime") <*>
-                     (o .:? "serviceContext")
-                     <*> (o .:? "message"))
-
-instance ToJSON ReportedErrorEvent where
-        toJSON ReportedErrorEvent'{..}
-          = object
-              (catMaybes
-                 [("context" .=) <$> _reeContext,
-                  ("eventTime" .=) <$> _reeEventTime,
-                  ("serviceContext" .=) <$> _reeServiceContext,
-                  ("message" .=) <$> _reeMessage])
-
--- | HTTP request data that is related to a reported error. This data should
--- be provided by the application when reporting an error, unless the error
--- report has been generated automatically from Google App Engine logs.
---
--- /See:/ 'hTTPRequestContext' smart constructor.
-data HTTPRequestContext =
-  HTTPRequestContext'
-    { _httprcRemoteIP           :: !(Maybe Text)
-    , _httprcURL                :: !(Maybe Text)
-    , _httprcReferrer           :: !(Maybe Text)
-    , _httprcMethod             :: !(Maybe Text)
-    , _httprcResponseStatusCode :: !(Maybe (Textual Int32))
-    , _httprcUserAgent          :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'HTTPRequestContext' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'httprcRemoteIP'
---
--- * 'httprcURL'
---
--- * 'httprcReferrer'
---
--- * 'httprcMethod'
---
--- * 'httprcResponseStatusCode'
---
--- * 'httprcUserAgent'
-hTTPRequestContext
-    :: HTTPRequestContext
-hTTPRequestContext =
-  HTTPRequestContext'
-    { _httprcRemoteIP = Nothing
-    , _httprcURL = Nothing
-    , _httprcReferrer = Nothing
-    , _httprcMethod = Nothing
-    , _httprcResponseStatusCode = Nothing
-    , _httprcUserAgent = Nothing
-    }
-
-
--- | The IP address from which the request originated. This can be IPv4,
--- IPv6, or a token which is derived from the IP address, depending on the
--- data that has been provided in the error report.
-httprcRemoteIP :: Lens' HTTPRequestContext (Maybe Text)
-httprcRemoteIP
-  = lens _httprcRemoteIP
-      (\ s a -> s{_httprcRemoteIP = a})
-
--- | The URL of the request.
-httprcURL :: Lens' HTTPRequestContext (Maybe Text)
-httprcURL
-  = lens _httprcURL (\ s a -> s{_httprcURL = a})
-
--- | The referrer information that is provided with the request.
-httprcReferrer :: Lens' HTTPRequestContext (Maybe Text)
-httprcReferrer
-  = lens _httprcReferrer
-      (\ s a -> s{_httprcReferrer = a})
-
--- | The type of HTTP request, such as \`GET\`, \`POST\`, etc.
-httprcMethod :: Lens' HTTPRequestContext (Maybe Text)
-httprcMethod
-  = lens _httprcMethod (\ s a -> s{_httprcMethod = a})
-
--- | The HTTP response status code for the request.
-httprcResponseStatusCode :: Lens' HTTPRequestContext (Maybe Int32)
-httprcResponseStatusCode
-  = lens _httprcResponseStatusCode
-      (\ s a -> s{_httprcResponseStatusCode = a})
-      . mapping _Coerce
-
--- | The user agent information that is provided with the request.
-httprcUserAgent :: Lens' HTTPRequestContext (Maybe Text)
-httprcUserAgent
-  = lens _httprcUserAgent
-      (\ s a -> s{_httprcUserAgent = a})
-
-instance FromJSON HTTPRequestContext where
-        parseJSON
-          = withObject "HTTPRequestContext"
-              (\ o ->
-                 HTTPRequestContext' <$>
-                   (o .:? "remoteIp") <*> (o .:? "url") <*>
-                     (o .:? "referrer")
-                     <*> (o .:? "method")
-                     <*> (o .:? "responseStatusCode")
-                     <*> (o .:? "userAgent"))
-
-instance ToJSON HTTPRequestContext where
-        toJSON HTTPRequestContext'{..}
-          = object
-              (catMaybes
-                 [("remoteIp" .=) <$> _httprcRemoteIP,
-                  ("url" .=) <$> _httprcURL,
-                  ("referrer" .=) <$> _httprcReferrer,
-                  ("method" .=) <$> _httprcMethod,
-                  ("responseStatusCode" .=) <$>
-                    _httprcResponseStatusCode,
-                  ("userAgent" .=) <$> _httprcUserAgent])
-
--- | Information related to tracking the progress on resolving the error.
---
--- /See:/ 'trackingIssue' smart constructor.
-newtype TrackingIssue =
-  TrackingIssue'
-    { _tiURL :: Maybe Text
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'TrackingIssue' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'tiURL'
-trackingIssue
-    :: TrackingIssue
-trackingIssue = TrackingIssue' {_tiURL = Nothing}
-
-
--- | A URL pointing to a related entry in an issue tracking system. Example:
--- https:\/\/github.com\/user\/project\/issues\/4
-tiURL :: Lens' TrackingIssue (Maybe Text)
-tiURL = lens _tiURL (\ s a -> s{_tiURL = a})
-
-instance FromJSON TrackingIssue where
-        parseJSON
-          = withObject "TrackingIssue"
-              (\ o -> TrackingIssue' <$> (o .:? "url"))
-
-instance ToJSON TrackingIssue where
-        toJSON TrackingIssue'{..}
-          = object (catMaybes [("url" .=) <$> _tiURL])
-
--- | Contains a set of requested error events.
---
--- /See:/ 'listEventsResponse' smart constructor.
-data ListEventsResponse =
-  ListEventsResponse'
-    { _lerNextPageToken  :: !(Maybe Text)
-    , _lerTimeRangeBegin :: !(Maybe DateTime')
-    , _lerErrorEvents    :: !(Maybe [ErrorEvent])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ListEventsResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'lerNextPageToken'
---
--- * 'lerTimeRangeBegin'
---
--- * 'lerErrorEvents'
-listEventsResponse
-    :: ListEventsResponse
-listEventsResponse =
-  ListEventsResponse'
-    { _lerNextPageToken = Nothing
-    , _lerTimeRangeBegin = Nothing
-    , _lerErrorEvents = Nothing
-    }
-
-
--- | If non-empty, more results are available. Pass this token, along with
--- the same query parameters as the first request, to view the next page of
--- results.
-lerNextPageToken :: Lens' ListEventsResponse (Maybe Text)
-lerNextPageToken
-  = lens _lerNextPageToken
-      (\ s a -> s{_lerNextPageToken = a})
-
--- | The timestamp specifies the start time to which the request was
--- restricted.
-lerTimeRangeBegin :: Lens' ListEventsResponse (Maybe UTCTime)
-lerTimeRangeBegin
-  = lens _lerTimeRangeBegin
-      (\ s a -> s{_lerTimeRangeBegin = a})
-      . mapping _DateTime
-
--- | The error events which match the given request.
-lerErrorEvents :: Lens' ListEventsResponse [ErrorEvent]
-lerErrorEvents
-  = lens _lerErrorEvents
-      (\ s a -> s{_lerErrorEvents = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON ListEventsResponse where
-        parseJSON
-          = withObject "ListEventsResponse"
-              (\ o ->
-                 ListEventsResponse' <$>
-                   (o .:? "nextPageToken") <*> (o .:? "timeRangeBegin")
-                     <*> (o .:? "errorEvents" .!= mempty))
-
-instance ToJSON ListEventsResponse where
-        toJSON ListEventsResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _lerNextPageToken,
-                  ("timeRangeBegin" .=) <$> _lerTimeRangeBegin,
-                  ("errorEvents" .=) <$> _lerErrorEvents])
-
--- | Data extracted for a specific group based on certain filter criteria,
--- such as a given time period and\/or service filter.
---
--- /See:/ 'errorGroupStats' smart constructor.
-data ErrorGroupStats =
-  ErrorGroupStats'
-    { _egsAffectedServices    :: !(Maybe [ServiceContext])
-    , _egsGroup               :: !(Maybe ErrorGroup)
-    , _egsFirstSeenTime       :: !(Maybe DateTime')
-    , _egsAffectedUsersCount  :: !(Maybe (Textual Int64))
-    , _egsCount               :: !(Maybe (Textual Int64))
-    , _egsTimedCounts         :: !(Maybe [TimedCount])
-    , _egsNumAffectedServices :: !(Maybe (Textual Int32))
-    , _egsLastSeenTime        :: !(Maybe DateTime')
-    , _egsRepresentative      :: !(Maybe ErrorEvent)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ErrorGroupStats' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'egsAffectedServices'
---
--- * 'egsGroup'
---
--- * 'egsFirstSeenTime'
---
--- * 'egsAffectedUsersCount'
---
--- * 'egsCount'
---
--- * 'egsTimedCounts'
---
--- * 'egsNumAffectedServices'
---
--- * 'egsLastSeenTime'
---
--- * 'egsRepresentative'
-errorGroupStats
-    :: ErrorGroupStats
-errorGroupStats =
-  ErrorGroupStats'
-    { _egsAffectedServices = Nothing
-    , _egsGroup = Nothing
-    , _egsFirstSeenTime = Nothing
-    , _egsAffectedUsersCount = Nothing
-    , _egsCount = Nothing
-    , _egsTimedCounts = Nothing
-    , _egsNumAffectedServices = Nothing
-    , _egsLastSeenTime = Nothing
-    , _egsRepresentative = Nothing
-    }
-
-
--- | Service contexts with a non-zero error count for the given filter
--- criteria. This list can be truncated if multiple services are affected.
--- Refer to \`num_affected_services\` for the total count.
-egsAffectedServices :: Lens' ErrorGroupStats [ServiceContext]
-egsAffectedServices
-  = lens _egsAffectedServices
-      (\ s a -> s{_egsAffectedServices = a})
-      . _Default
-      . _Coerce
-
--- | Group data that is independent of the filter criteria.
-egsGroup :: Lens' ErrorGroupStats (Maybe ErrorGroup)
-egsGroup = lens _egsGroup (\ s a -> s{_egsGroup = a})
-
--- | Approximate first occurrence that was ever seen for this group and which
--- matches the given filter criteria, ignoring the time_range that was
--- specified in the request.
-egsFirstSeenTime :: Lens' ErrorGroupStats (Maybe UTCTime)
-egsFirstSeenTime
-  = lens _egsFirstSeenTime
-      (\ s a -> s{_egsFirstSeenTime = a})
-      . mapping _DateTime
-
--- | Approximate number of affected users in the given group that match the
--- filter criteria. Users are distinguished by data in the \`ErrorContext\`
--- of the individual error events, such as their login name or their remote
--- IP address in case of HTTP requests. The number of affected users can be
--- zero even if the number of errors is non-zero if no data was provided
--- from which the affected user could be deduced. Users are counted based
--- on data in the request context that was provided in the error report. If
--- more users are implicitly affected, such as due to a crash of the whole
--- service, this is not reflected here.
-egsAffectedUsersCount :: Lens' ErrorGroupStats (Maybe Int64)
-egsAffectedUsersCount
-  = lens _egsAffectedUsersCount
-      (\ s a -> s{_egsAffectedUsersCount = a})
-      . mapping _Coerce
-
--- | Approximate total number of events in the given group that match the
--- filter criteria.
-egsCount :: Lens' ErrorGroupStats (Maybe Int64)
-egsCount
-  = lens _egsCount (\ s a -> s{_egsCount = a}) .
-      mapping _Coerce
-
--- | Approximate number of occurrences over time. Timed counts returned by
--- ListGroups are guaranteed to be: - Inside the requested time interval -
--- Non-overlapping, and - Ordered by ascending time.
-egsTimedCounts :: Lens' ErrorGroupStats [TimedCount]
-egsTimedCounts
-  = lens _egsTimedCounts
-      (\ s a -> s{_egsTimedCounts = a})
-      . _Default
-      . _Coerce
-
--- | The total number of services with a non-zero error count for the given
--- filter criteria.
-egsNumAffectedServices :: Lens' ErrorGroupStats (Maybe Int32)
-egsNumAffectedServices
-  = lens _egsNumAffectedServices
-      (\ s a -> s{_egsNumAffectedServices = a})
-      . mapping _Coerce
-
--- | Approximate last occurrence that was ever seen for this group and which
--- matches the given filter criteria, ignoring the time_range that was
--- specified in the request.
-egsLastSeenTime :: Lens' ErrorGroupStats (Maybe UTCTime)
-egsLastSeenTime
-  = lens _egsLastSeenTime
-      (\ s a -> s{_egsLastSeenTime = a})
-      . mapping _DateTime
-
--- | An arbitrary event that is chosen as representative for the whole group.
--- The representative event is intended to be used as a quick preview for
--- the whole group. Events in the group are usually sufficiently similar to
--- each other such that showing an arbitrary representative provides
--- insight into the characteristics of the group as a whole.
-egsRepresentative :: Lens' ErrorGroupStats (Maybe ErrorEvent)
-egsRepresentative
-  = lens _egsRepresentative
-      (\ s a -> s{_egsRepresentative = a})
-
-instance FromJSON ErrorGroupStats where
-        parseJSON
-          = withObject "ErrorGroupStats"
-              (\ o ->
-                 ErrorGroupStats' <$>
-                   (o .:? "affectedServices" .!= mempty) <*>
-                     (o .:? "group")
-                     <*> (o .:? "firstSeenTime")
-                     <*> (o .:? "affectedUsersCount")
-                     <*> (o .:? "count")
-                     <*> (o .:? "timedCounts" .!= mempty)
-                     <*> (o .:? "numAffectedServices")
-                     <*> (o .:? "lastSeenTime")
-                     <*> (o .:? "representative"))
-
-instance ToJSON ErrorGroupStats where
-        toJSON ErrorGroupStats'{..}
-          = object
-              (catMaybes
-                 [("affectedServices" .=) <$> _egsAffectedServices,
-                  ("group" .=) <$> _egsGroup,
-                  ("firstSeenTime" .=) <$> _egsFirstSeenTime,
-                  ("affectedUsersCount" .=) <$> _egsAffectedUsersCount,
-                  ("count" .=) <$> _egsCount,
-                  ("timedCounts" .=) <$> _egsTimedCounts,
-                  ("numAffectedServices" .=) <$>
-                    _egsNumAffectedServices,
-                  ("lastSeenTime" .=) <$> _egsLastSeenTime,
-                  ("representative" .=) <$> _egsRepresentative])
-
--- | Contains a set of requested error group stats.
---
--- /See:/ 'listGroupStatsResponse' smart constructor.
-data ListGroupStatsResponse =
-  ListGroupStatsResponse'
-    { _lgsrNextPageToken   :: !(Maybe Text)
-    , _lgsrTimeRangeBegin  :: !(Maybe DateTime')
-    , _lgsrErrorGroupStats :: !(Maybe [ErrorGroupStats])
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ListGroupStatsResponse' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'lgsrNextPageToken'
---
--- * 'lgsrTimeRangeBegin'
---
--- * 'lgsrErrorGroupStats'
-listGroupStatsResponse
-    :: ListGroupStatsResponse
-listGroupStatsResponse =
-  ListGroupStatsResponse'
-    { _lgsrNextPageToken = Nothing
-    , _lgsrTimeRangeBegin = Nothing
-    , _lgsrErrorGroupStats = Nothing
-    }
-
-
--- | If non-empty, more results are available. Pass this token, along with
--- the same query parameters as the first request, to view the next page of
--- results.
-lgsrNextPageToken :: Lens' ListGroupStatsResponse (Maybe Text)
-lgsrNextPageToken
-  = lens _lgsrNextPageToken
-      (\ s a -> s{_lgsrNextPageToken = a})
-
--- | The timestamp specifies the start time to which the request was
--- restricted. The start time is set based on the requested time range. It
--- may be adjusted to a later time if a project has exceeded the storage
--- quota and older data has been deleted.
-lgsrTimeRangeBegin :: Lens' ListGroupStatsResponse (Maybe UTCTime)
-lgsrTimeRangeBegin
-  = lens _lgsrTimeRangeBegin
-      (\ s a -> s{_lgsrTimeRangeBegin = a})
-      . mapping _DateTime
-
--- | The error group stats which match the given request.
-lgsrErrorGroupStats :: Lens' ListGroupStatsResponse [ErrorGroupStats]
-lgsrErrorGroupStats
-  = lens _lgsrErrorGroupStats
-      (\ s a -> s{_lgsrErrorGroupStats = a})
-      . _Default
-      . _Coerce
-
-instance FromJSON ListGroupStatsResponse where
-        parseJSON
-          = withObject "ListGroupStatsResponse"
-              (\ o ->
-                 ListGroupStatsResponse' <$>
-                   (o .:? "nextPageToken") <*> (o .:? "timeRangeBegin")
-                     <*> (o .:? "errorGroupStats" .!= mempty))
-
-instance ToJSON ListGroupStatsResponse where
-        toJSON ListGroupStatsResponse'{..}
-          = object
-              (catMaybes
-                 [("nextPageToken" .=) <$> _lgsrNextPageToken,
-                  ("timeRangeBegin" .=) <$> _lgsrTimeRangeBegin,
-                  ("errorGroupStats" .=) <$> _lgsrErrorGroupStats])
-
--- | Describes a running service that sends errors. Its version changes over
--- time and multiple versions can run in parallel.
---
--- /See:/ 'serviceContext' smart constructor.
-data ServiceContext =
-  ServiceContext'
-    { _scResourceType :: !(Maybe Text)
-    , _scService      :: !(Maybe Text)
-    , _scVersion      :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ServiceContext' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'scResourceType'
---
--- * 'scService'
---
--- * 'scVersion'
-serviceContext
-    :: ServiceContext
-serviceContext =
-  ServiceContext'
-    {_scResourceType = Nothing, _scService = Nothing, _scVersion = Nothing}
-
-
--- | Type of the MonitoredResource. List of possible values:
--- https:\/\/cloud.google.com\/monitoring\/api\/resources Value is set
--- automatically for incoming errors and must not be set when reporting
--- errors.
-scResourceType :: Lens' ServiceContext (Maybe Text)
-scResourceType
-  = lens _scResourceType
-      (\ s a -> s{_scResourceType = a})
-
--- | An identifier of the service, such as the name of the executable, job,
--- or Google App Engine service name. This field is expected to have a low
--- number of values that are relatively stable over time, as opposed to
--- \`version\`, which can be changed whenever new code is deployed.
--- Contains the service name for error reports extracted from Google App
--- Engine logs or \`default\` if the App Engine default service is used.
-scService :: Lens' ServiceContext (Maybe Text)
-scService
-  = lens _scService (\ s a -> s{_scService = a})
-
--- | Represents the source code version that the developer provided, which
--- could represent a version label or a Git SHA-1 hash, for example. For
--- App Engine standard environment, the version is set to the version of
--- the app.
-scVersion :: Lens' ServiceContext (Maybe Text)
-scVersion
-  = lens _scVersion (\ s a -> s{_scVersion = a})
-
-instance FromJSON ServiceContext where
-        parseJSON
-          = withObject "ServiceContext"
-              (\ o ->
-                 ServiceContext' <$>
-                   (o .:? "resourceType") <*> (o .:? "service") <*>
-                     (o .:? "version"))
-
-instance ToJSON ServiceContext where
-        toJSON ServiceContext'{..}
-          = object
-              (catMaybes
-                 [("resourceType" .=) <$> _scResourceType,
-                  ("service" .=) <$> _scService,
-                  ("version" .=) <$> _scVersion])
-
--- | The number of errors in a given time period. All numbers are approximate
--- since the error events are sampled before counting them.
---
--- /See:/ 'timedCount' smart constructor.
-data TimedCount =
-  TimedCount'
-    { _tcStartTime :: !(Maybe DateTime')
-    , _tcCount     :: !(Maybe (Textual Int64))
-    , _tcEndTime   :: !(Maybe DateTime')
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'TimedCount' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'tcStartTime'
---
--- * 'tcCount'
---
--- * 'tcEndTime'
-timedCount
-    :: TimedCount
-timedCount =
-  TimedCount' {_tcStartTime = Nothing, _tcCount = Nothing, _tcEndTime = Nothing}
-
-
--- | Start of the time period to which \`count\` refers (included).
-tcStartTime :: Lens' TimedCount (Maybe UTCTime)
-tcStartTime
-  = lens _tcStartTime (\ s a -> s{_tcStartTime = a}) .
-      mapping _DateTime
-
--- | Approximate number of occurrences in the given time period.
-tcCount :: Lens' TimedCount (Maybe Int64)
-tcCount
-  = lens _tcCount (\ s a -> s{_tcCount = a}) .
-      mapping _Coerce
-
--- | End of the time period to which \`count\` refers (excluded).
-tcEndTime :: Lens' TimedCount (Maybe UTCTime)
-tcEndTime
-  = lens _tcEndTime (\ s a -> s{_tcEndTime = a}) .
-      mapping _DateTime
-
-instance FromJSON TimedCount where
-        parseJSON
-          = withObject "TimedCount"
-              (\ o ->
-                 TimedCount' <$>
-                   (o .:? "startTime") <*> (o .:? "count") <*>
-                     (o .:? "endTime"))
-
-instance ToJSON TimedCount where
-        toJSON TimedCount'{..}
-          = object
-              (catMaybes
-                 [("startTime" .=) <$> _tcStartTime,
-                  ("count" .=) <$> _tcCount,
-                  ("endTime" .=) <$> _tcEndTime])
-
--- | Indicates a location in the source code of the service for which errors
--- are reported. \`functionName\` must be provided by the application when
--- reporting an error, unless the error report contains a \`message\` with
--- a supported exception stack trace. All fields are optional for the later
--- case.
---
--- /See:/ 'sourceLocation' smart constructor.
-data SourceLocation =
-  SourceLocation'
-    { _slLineNumber   :: !(Maybe (Textual Int32))
-    , _slFilePath     :: !(Maybe Text)
-    , _slFunctionName :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SourceLocation' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'slLineNumber'
---
--- * 'slFilePath'
---
--- * 'slFunctionName'
-sourceLocation
-    :: SourceLocation
-sourceLocation =
-  SourceLocation'
-    {_slLineNumber = Nothing, _slFilePath = Nothing, _slFunctionName = Nothing}
-
-
--- | 1-based. 0 indicates that the line number is unknown.
-slLineNumber :: Lens' SourceLocation (Maybe Int32)
-slLineNumber
-  = lens _slLineNumber (\ s a -> s{_slLineNumber = a})
-      . mapping _Coerce
-
--- | The source code filename, which can include a truncated relative path,
--- or a full path from a production machine.
-slFilePath :: Lens' SourceLocation (Maybe Text)
-slFilePath
-  = lens _slFilePath (\ s a -> s{_slFilePath = a})
-
--- | Human-readable name of a function or method. The value can include
--- optional context like the class or package name. For example,
--- \`my.package.MyClass.method\` in case of Java.
-slFunctionName :: Lens' SourceLocation (Maybe Text)
-slFunctionName
-  = lens _slFunctionName
-      (\ s a -> s{_slFunctionName = a})
-
-instance FromJSON SourceLocation where
-        parseJSON
-          = withObject "SourceLocation"
-              (\ o ->
-                 SourceLocation' <$>
-                   (o .:? "lineNumber") <*> (o .:? "filePath") <*>
-                     (o .:? "functionName"))
-
-instance ToJSON SourceLocation where
-        toJSON SourceLocation'{..}
-          = object
-              (catMaybes
-                 [("lineNumber" .=) <$> _slLineNumber,
-                  ("filePath" .=) <$> _slFilePath,
-                  ("functionName" .=) <$> _slFunctionName])
-
--- | A reference to a particular snapshot of the source tree used to build
--- and deploy an application.
---
--- /See:/ 'sourceReference' smart constructor.
-data SourceReference =
-  SourceReference'
-    { _srRepository :: !(Maybe Text)
-    , _srRevisionId :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'SourceReference' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'srRepository'
---
--- * 'srRevisionId'
-sourceReference
-    :: SourceReference
-sourceReference =
-  SourceReference' {_srRepository = Nothing, _srRevisionId = Nothing}
-
-
--- | Optional. A URI string identifying the repository. Example:
--- \"https:\/\/github.com\/GoogleCloudPlatform\/kubernetes.git\"
-srRepository :: Lens' SourceReference (Maybe Text)
-srRepository
-  = lens _srRepository (\ s a -> s{_srRepository = a})
-
--- | The canonical and persistent identifier of the deployed revision.
--- Example (git): \"0035781c50ec7aa23385dc841529ce8a4b70db1b\"
-srRevisionId :: Lens' SourceReference (Maybe Text)
-srRevisionId
-  = lens _srRevisionId (\ s a -> s{_srRevisionId = a})
-
-instance FromJSON SourceReference where
-        parseJSON
-          = withObject "SourceReference"
-              (\ o ->
-                 SourceReference' <$>
-                   (o .:? "repository") <*> (o .:? "revisionId"))
-
-instance ToJSON SourceReference where
-        toJSON SourceReference'{..}
-          = object
-              (catMaybes
-                 [("repository" .=) <$> _srRepository,
-                  ("revisionId" .=) <$> _srRevisionId])
-
--- | Response for reporting an individual error event. Data may be added to
--- this message in the future.
---
--- /See:/ 'reportErrorEventResponse' smart constructor.
-data ReportErrorEventResponse =
-  ReportErrorEventResponse'
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ReportErrorEventResponse' with the minimum fields required to make a request.
---
-reportErrorEventResponse
-    :: ReportErrorEventResponse
-reportErrorEventResponse = ReportErrorEventResponse'
-
-
-instance FromJSON ReportErrorEventResponse where
-        parseJSON
-          = withObject "ReportErrorEventResponse"
-              (\ o -> pure ReportErrorEventResponse')
-
-instance ToJSON ReportErrorEventResponse where
-        toJSON = const emptyObject
diff --git a/gen/Network/Google/CloudErrorReporting/Types/Sum.hs b/gen/Network/Google/CloudErrorReporting/Types/Sum.hs
deleted file mode 100644
--- a/gen/Network/Google/CloudErrorReporting/Types/Sum.hs
+++ /dev/null
@@ -1,48 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE LambdaCase         #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-
-{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-
--- |
--- Module      : Network.Google.CloudErrorReporting.Types.Sum
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
-module Network.Google.CloudErrorReporting.Types.Sum where
-
-import           Network.Google.Prelude hiding (Bytes)
-
--- | V1 error format.
-data Xgafv
-    = X1
-      -- ^ @1@
-      -- v1 error format
-    | X2
-      -- ^ @2@
-      -- v2 error format
-      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
-
-instance Hashable Xgafv
-
-instance FromHttpApiData Xgafv where
-    parseQueryParam = \case
-        "1" -> Right X1
-        "2" -> Right X2
-        x -> Left ("Unable to parse Xgafv from: " <> x)
-
-instance ToHttpApiData Xgafv where
-    toQueryParam = \case
-        X1 -> "1"
-        X2 -> "2"
-
-instance FromJSON Xgafv where
-    parseJSON = parseJSONText "Xgafv"
-
-instance ToJSON Xgafv where
-    toJSON = toJSONText
diff --git a/gen/Network/Google/Resource/CloudErrorReporting/Projects/DeleteEvents.hs b/gen/Network/Google/Resource/CloudErrorReporting/Projects/DeleteEvents.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/CloudErrorReporting/Projects/DeleteEvents.hs
+++ /dev/null
@@ -1,155 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.CloudErrorReporting.Projects.DeleteEvents
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Deletes all error events of a given project.
---
--- /See:/ <https://cloud.google.com/error-reporting/ Stackdriver Error Reporting API Reference> for @clouderrorreporting.projects.deleteEvents@.
-module Network.Google.Resource.CloudErrorReporting.Projects.DeleteEvents
-    (
-    -- * REST Resource
-      ProjectsDeleteEventsResource
-
-    -- * Creating a Request
-    , projectsDeleteEvents
-    , ProjectsDeleteEvents
-
-    -- * Request Lenses
-    , pdeXgafv
-    , pdeUploadProtocol
-    , pdeAccessToken
-    , pdeUploadType
-    , pdeProjectName
-    , pdeCallback
-    ) where
-
-import           Network.Google.CloudErrorReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @clouderrorreporting.projects.deleteEvents@ method which the
--- 'ProjectsDeleteEvents' request conforms to.
-type ProjectsDeleteEventsResource =
-     "v1beta1" :>
-       Capture "projectName" Text :>
-         "events" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "callback" Text :>
-                     QueryParam "alt" AltJSON :>
-                       Delete '[JSON] DeleteEventsResponse
-
--- | Deletes all error events of a given project.
---
--- /See:/ 'projectsDeleteEvents' smart constructor.
-data ProjectsDeleteEvents =
-  ProjectsDeleteEvents'
-    { _pdeXgafv          :: !(Maybe Xgafv)
-    , _pdeUploadProtocol :: !(Maybe Text)
-    , _pdeAccessToken    :: !(Maybe Text)
-    , _pdeUploadType     :: !(Maybe Text)
-    , _pdeProjectName    :: !Text
-    , _pdeCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsDeleteEvents' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pdeXgafv'
---
--- * 'pdeUploadProtocol'
---
--- * 'pdeAccessToken'
---
--- * 'pdeUploadType'
---
--- * 'pdeProjectName'
---
--- * 'pdeCallback'
-projectsDeleteEvents
-    :: Text -- ^ 'pdeProjectName'
-    -> ProjectsDeleteEvents
-projectsDeleteEvents pPdeProjectName_ =
-  ProjectsDeleteEvents'
-    { _pdeXgafv = Nothing
-    , _pdeUploadProtocol = Nothing
-    , _pdeAccessToken = Nothing
-    , _pdeUploadType = Nothing
-    , _pdeProjectName = pPdeProjectName_
-    , _pdeCallback = Nothing
-    }
-
-
--- | V1 error format.
-pdeXgafv :: Lens' ProjectsDeleteEvents (Maybe Xgafv)
-pdeXgafv = lens _pdeXgafv (\ s a -> s{_pdeXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-pdeUploadProtocol :: Lens' ProjectsDeleteEvents (Maybe Text)
-pdeUploadProtocol
-  = lens _pdeUploadProtocol
-      (\ s a -> s{_pdeUploadProtocol = a})
-
--- | OAuth access token.
-pdeAccessToken :: Lens' ProjectsDeleteEvents (Maybe Text)
-pdeAccessToken
-  = lens _pdeAccessToken
-      (\ s a -> s{_pdeAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-pdeUploadType :: Lens' ProjectsDeleteEvents (Maybe Text)
-pdeUploadType
-  = lens _pdeUploadType
-      (\ s a -> s{_pdeUploadType = a})
-
--- | [Required] The resource name of the Google Cloud Platform project.
--- Written as \`projects\/\` plus the [Google Cloud Platform project
--- ID](https:\/\/support.google.com\/cloud\/answer\/6158840). Example:
--- \`projects\/my-project-123\`.
-pdeProjectName :: Lens' ProjectsDeleteEvents Text
-pdeProjectName
-  = lens _pdeProjectName
-      (\ s a -> s{_pdeProjectName = a})
-
--- | JSONP
-pdeCallback :: Lens' ProjectsDeleteEvents (Maybe Text)
-pdeCallback
-  = lens _pdeCallback (\ s a -> s{_pdeCallback = a})
-
-instance GoogleRequest ProjectsDeleteEvents where
-        type Rs ProjectsDeleteEvents = DeleteEventsResponse
-        type Scopes ProjectsDeleteEvents =
-             '["https://www.googleapis.com/auth/cloud-platform"]
-        requestClient ProjectsDeleteEvents'{..}
-          = go _pdeProjectName _pdeXgafv _pdeUploadProtocol
-              _pdeAccessToken
-              _pdeUploadType
-              _pdeCallback
-              (Just AltJSON)
-              cloudErrorReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ProjectsDeleteEventsResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/CloudErrorReporting/Projects/Events/List.hs b/gen/Network/Google/Resource/CloudErrorReporting/Projects/Events/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/CloudErrorReporting/Projects/Events/List.hs
+++ /dev/null
@@ -1,247 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.CloudErrorReporting.Projects.Events.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Lists the specified events.
---
--- /See:/ <https://cloud.google.com/error-reporting/ Stackdriver Error Reporting API Reference> for @clouderrorreporting.projects.events.list@.
-module Network.Google.Resource.CloudErrorReporting.Projects.Events.List
-    (
-    -- * REST Resource
-      ProjectsEventsListResource
-
-    -- * Creating a Request
-    , projectsEventsList
-    , ProjectsEventsList
-
-    -- * Request Lenses
-    , pelXgafv
-    , pelUploadProtocol
-    , pelAccessToken
-    , pelUploadType
-    , pelProjectName
-    , pelGroupId
-    , pelPageToken
-    , pelPageSize
-    , pelServiceFilterService
-    , pelServiceFilterResourceType
-    , pelCallback
-    , pelServiceFilterVersion
-    , pelTimeRangePeriod
-    ) where
-
-import           Network.Google.CloudErrorReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @clouderrorreporting.projects.events.list@ method which the
--- 'ProjectsEventsList' request conforms to.
-type ProjectsEventsListResource =
-     "v1beta1" :>
-       Capture "projectName" Text :>
-         "events" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "groupId" Text :>
-                     QueryParam "pageToken" Text :>
-                       QueryParam "pageSize" (Textual Int32) :>
-                         QueryParam "serviceFilter.service" Text :>
-                           QueryParam "serviceFilter.resourceType" Text :>
-                             QueryParam "callback" Text :>
-                               QueryParam "serviceFilter.version" Text :>
-                                 QueryParam "timeRange.period" Text :>
-                                   QueryParam "alt" AltJSON :>
-                                     Get '[JSON] ListEventsResponse
-
--- | Lists the specified events.
---
--- /See:/ 'projectsEventsList' smart constructor.
-data ProjectsEventsList =
-  ProjectsEventsList'
-    { _pelXgafv                     :: !(Maybe Xgafv)
-    , _pelUploadProtocol            :: !(Maybe Text)
-    , _pelAccessToken               :: !(Maybe Text)
-    , _pelUploadType                :: !(Maybe Text)
-    , _pelProjectName               :: !Text
-    , _pelGroupId                   :: !(Maybe Text)
-    , _pelPageToken                 :: !(Maybe Text)
-    , _pelPageSize                  :: !(Maybe (Textual Int32))
-    , _pelServiceFilterService      :: !(Maybe Text)
-    , _pelServiceFilterResourceType :: !(Maybe Text)
-    , _pelCallback                  :: !(Maybe Text)
-    , _pelServiceFilterVersion      :: !(Maybe Text)
-    , _pelTimeRangePeriod           :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsEventsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pelXgafv'
---
--- * 'pelUploadProtocol'
---
--- * 'pelAccessToken'
---
--- * 'pelUploadType'
---
--- * 'pelProjectName'
---
--- * 'pelGroupId'
---
--- * 'pelPageToken'
---
--- * 'pelPageSize'
---
--- * 'pelServiceFilterService'
---
--- * 'pelServiceFilterResourceType'
---
--- * 'pelCallback'
---
--- * 'pelServiceFilterVersion'
---
--- * 'pelTimeRangePeriod'
-projectsEventsList
-    :: Text -- ^ 'pelProjectName'
-    -> ProjectsEventsList
-projectsEventsList pPelProjectName_ =
-  ProjectsEventsList'
-    { _pelXgafv = Nothing
-    , _pelUploadProtocol = Nothing
-    , _pelAccessToken = Nothing
-    , _pelUploadType = Nothing
-    , _pelProjectName = pPelProjectName_
-    , _pelGroupId = Nothing
-    , _pelPageToken = Nothing
-    , _pelPageSize = Nothing
-    , _pelServiceFilterService = Nothing
-    , _pelServiceFilterResourceType = Nothing
-    , _pelCallback = Nothing
-    , _pelServiceFilterVersion = Nothing
-    , _pelTimeRangePeriod = Nothing
-    }
-
-
--- | V1 error format.
-pelXgafv :: Lens' ProjectsEventsList (Maybe Xgafv)
-pelXgafv = lens _pelXgafv (\ s a -> s{_pelXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-pelUploadProtocol :: Lens' ProjectsEventsList (Maybe Text)
-pelUploadProtocol
-  = lens _pelUploadProtocol
-      (\ s a -> s{_pelUploadProtocol = a})
-
--- | OAuth access token.
-pelAccessToken :: Lens' ProjectsEventsList (Maybe Text)
-pelAccessToken
-  = lens _pelAccessToken
-      (\ s a -> s{_pelAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-pelUploadType :: Lens' ProjectsEventsList (Maybe Text)
-pelUploadType
-  = lens _pelUploadType
-      (\ s a -> s{_pelUploadType = a})
-
--- | [Required] The resource name of the Google Cloud Platform project.
--- Written as \`projects\/\` plus the [Google Cloud Platform project
--- ID](https:\/\/support.google.com\/cloud\/answer\/6158840). Example:
--- \`projects\/my-project-123\`.
-pelProjectName :: Lens' ProjectsEventsList Text
-pelProjectName
-  = lens _pelProjectName
-      (\ s a -> s{_pelProjectName = a})
-
--- | [Required] The group for which events shall be returned.
-pelGroupId :: Lens' ProjectsEventsList (Maybe Text)
-pelGroupId
-  = lens _pelGroupId (\ s a -> s{_pelGroupId = a})
-
--- | [Optional] A \`next_page_token\` provided by a previous response.
-pelPageToken :: Lens' ProjectsEventsList (Maybe Text)
-pelPageToken
-  = lens _pelPageToken (\ s a -> s{_pelPageToken = a})
-
--- | [Optional] The maximum number of results to return per response.
-pelPageSize :: Lens' ProjectsEventsList (Maybe Int32)
-pelPageSize
-  = lens _pelPageSize (\ s a -> s{_pelPageSize = a}) .
-      mapping _Coerce
-
--- | [Optional] The exact value to match against
--- [\`ServiceContext.service\`](\/error-reporting\/reference\/rest\/v1beta1\/ServiceContext#FIELDS.service).
-pelServiceFilterService :: Lens' ProjectsEventsList (Maybe Text)
-pelServiceFilterService
-  = lens _pelServiceFilterService
-      (\ s a -> s{_pelServiceFilterService = a})
-
--- | [Optional] The exact value to match against
--- [\`ServiceContext.resource_type\`](\/error-reporting\/reference\/rest\/v1beta1\/ServiceContext#FIELDS.resource_type).
-pelServiceFilterResourceType :: Lens' ProjectsEventsList (Maybe Text)
-pelServiceFilterResourceType
-  = lens _pelServiceFilterResourceType
-      (\ s a -> s{_pelServiceFilterResourceType = a})
-
--- | JSONP
-pelCallback :: Lens' ProjectsEventsList (Maybe Text)
-pelCallback
-  = lens _pelCallback (\ s a -> s{_pelCallback = a})
-
--- | [Optional] The exact value to match against
--- [\`ServiceContext.version\`](\/error-reporting\/reference\/rest\/v1beta1\/ServiceContext#FIELDS.version).
-pelServiceFilterVersion :: Lens' ProjectsEventsList (Maybe Text)
-pelServiceFilterVersion
-  = lens _pelServiceFilterVersion
-      (\ s a -> s{_pelServiceFilterVersion = a})
-
--- | Restricts the query to the specified time range.
-pelTimeRangePeriod :: Lens' ProjectsEventsList (Maybe Text)
-pelTimeRangePeriod
-  = lens _pelTimeRangePeriod
-      (\ s a -> s{_pelTimeRangePeriod = a})
-
-instance GoogleRequest ProjectsEventsList where
-        type Rs ProjectsEventsList = ListEventsResponse
-        type Scopes ProjectsEventsList =
-             '["https://www.googleapis.com/auth/cloud-platform"]
-        requestClient ProjectsEventsList'{..}
-          = go _pelProjectName _pelXgafv _pelUploadProtocol
-              _pelAccessToken
-              _pelUploadType
-              _pelGroupId
-              _pelPageToken
-              _pelPageSize
-              _pelServiceFilterService
-              _pelServiceFilterResourceType
-              _pelCallback
-              _pelServiceFilterVersion
-              _pelTimeRangePeriod
-              (Just AltJSON)
-              cloudErrorReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ProjectsEventsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/CloudErrorReporting/Projects/Events/Report.hs b/gen/Network/Google/Resource/CloudErrorReporting/Projects/Events/Report.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/CloudErrorReporting/Projects/Events/Report.hs
+++ /dev/null
@@ -1,179 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.CloudErrorReporting.Projects.Events.Report
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Report an individual error event. This endpoint accepts **either** an
--- OAuth token, **or** an [API
--- key](https:\/\/support.google.com\/cloud\/answer\/6158862) for
--- authentication. To use an API key, append it to the URL as the value of
--- a \`key\` parameter. For example: \`POST
--- https:\/\/clouderrorreporting.googleapis.com\/v1beta1\/projects\/example-project\/events:report?key=123ABC456\`
---
--- /See:/ <https://cloud.google.com/error-reporting/ Stackdriver Error Reporting API Reference> for @clouderrorreporting.projects.events.report@.
-module Network.Google.Resource.CloudErrorReporting.Projects.Events.Report
-    (
-    -- * REST Resource
-      ProjectsEventsReportResource
-
-    -- * Creating a Request
-    , projectsEventsReport
-    , ProjectsEventsReport
-
-    -- * Request Lenses
-    , perXgafv
-    , perUploadProtocol
-    , perAccessToken
-    , perUploadType
-    , perPayload
-    , perProjectName
-    , perCallback
-    ) where
-
-import           Network.Google.CloudErrorReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @clouderrorreporting.projects.events.report@ method which the
--- 'ProjectsEventsReport' request conforms to.
-type ProjectsEventsReportResource =
-     "v1beta1" :>
-       Capture "projectName" Text :>
-         "events:report" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "callback" Text :>
-                     QueryParam "alt" AltJSON :>
-                       ReqBody '[JSON] ReportedErrorEvent :>
-                         Post '[JSON] ReportErrorEventResponse
-
--- | Report an individual error event. This endpoint accepts **either** an
--- OAuth token, **or** an [API
--- key](https:\/\/support.google.com\/cloud\/answer\/6158862) for
--- authentication. To use an API key, append it to the URL as the value of
--- a \`key\` parameter. For example: \`POST
--- https:\/\/clouderrorreporting.googleapis.com\/v1beta1\/projects\/example-project\/events:report?key=123ABC456\`
---
--- /See:/ 'projectsEventsReport' smart constructor.
-data ProjectsEventsReport =
-  ProjectsEventsReport'
-    { _perXgafv          :: !(Maybe Xgafv)
-    , _perUploadProtocol :: !(Maybe Text)
-    , _perAccessToken    :: !(Maybe Text)
-    , _perUploadType     :: !(Maybe Text)
-    , _perPayload        :: !ReportedErrorEvent
-    , _perProjectName    :: !Text
-    , _perCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsEventsReport' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'perXgafv'
---
--- * 'perUploadProtocol'
---
--- * 'perAccessToken'
---
--- * 'perUploadType'
---
--- * 'perPayload'
---
--- * 'perProjectName'
---
--- * 'perCallback'
-projectsEventsReport
-    :: ReportedErrorEvent -- ^ 'perPayload'
-    -> Text -- ^ 'perProjectName'
-    -> ProjectsEventsReport
-projectsEventsReport pPerPayload_ pPerProjectName_ =
-  ProjectsEventsReport'
-    { _perXgafv = Nothing
-    , _perUploadProtocol = Nothing
-    , _perAccessToken = Nothing
-    , _perUploadType = Nothing
-    , _perPayload = pPerPayload_
-    , _perProjectName = pPerProjectName_
-    , _perCallback = Nothing
-    }
-
-
--- | V1 error format.
-perXgafv :: Lens' ProjectsEventsReport (Maybe Xgafv)
-perXgafv = lens _perXgafv (\ s a -> s{_perXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-perUploadProtocol :: Lens' ProjectsEventsReport (Maybe Text)
-perUploadProtocol
-  = lens _perUploadProtocol
-      (\ s a -> s{_perUploadProtocol = a})
-
--- | OAuth access token.
-perAccessToken :: Lens' ProjectsEventsReport (Maybe Text)
-perAccessToken
-  = lens _perAccessToken
-      (\ s a -> s{_perAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-perUploadType :: Lens' ProjectsEventsReport (Maybe Text)
-perUploadType
-  = lens _perUploadType
-      (\ s a -> s{_perUploadType = a})
-
--- | Multipart request metadata.
-perPayload :: Lens' ProjectsEventsReport ReportedErrorEvent
-perPayload
-  = lens _perPayload (\ s a -> s{_perPayload = a})
-
--- | [Required] The resource name of the Google Cloud Platform project.
--- Written as \`projects\/\` plus the [Google Cloud Platform project
--- ID](https:\/\/support.google.com\/cloud\/answer\/6158840). Example:
--- \`projects\/my-project-123\`.
-perProjectName :: Lens' ProjectsEventsReport Text
-perProjectName
-  = lens _perProjectName
-      (\ s a -> s{_perProjectName = a})
-
--- | JSONP
-perCallback :: Lens' ProjectsEventsReport (Maybe Text)
-perCallback
-  = lens _perCallback (\ s a -> s{_perCallback = a})
-
-instance GoogleRequest ProjectsEventsReport where
-        type Rs ProjectsEventsReport =
-             ReportErrorEventResponse
-        type Scopes ProjectsEventsReport =
-             '["https://www.googleapis.com/auth/cloud-platform"]
-        requestClient ProjectsEventsReport'{..}
-          = go _perProjectName _perXgafv _perUploadProtocol
-              _perAccessToken
-              _perUploadType
-              _perCallback
-              (Just AltJSON)
-              _perPayload
-              cloudErrorReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ProjectsEventsReportResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/CloudErrorReporting/Projects/GroupStats/List.hs b/gen/Network/Google/Resource/CloudErrorReporting/Projects/GroupStats/List.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/CloudErrorReporting/Projects/GroupStats/List.hs
+++ /dev/null
@@ -1,314 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.CloudErrorReporting.Projects.GroupStats.List
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Lists the specified groups.
---
--- /See:/ <https://cloud.google.com/error-reporting/ Stackdriver Error Reporting API Reference> for @clouderrorreporting.projects.groupStats.list@.
-module Network.Google.Resource.CloudErrorReporting.Projects.GroupStats.List
-    (
-    -- * REST Resource
-      ProjectsGroupStatsListResource
-
-    -- * Creating a Request
-    , projectsGroupStatsList
-    , ProjectsGroupStatsList
-
-    -- * Request Lenses
-    , pgslXgafv
-    , pgslUploadProtocol
-    , pgslAccessToken
-    , pgslUploadType
-    , pgslTimedCountDuration
-    , pgslAlignment
-    , pgslProjectName
-    , pgslGroupId
-    , pgslAlignmentTime
-    , pgslPageToken
-    , pgslPageSize
-    , pgslServiceFilterService
-    , pgslOrder
-    , pgslServiceFilterResourceType
-    , pgslCallback
-    , pgslServiceFilterVersion
-    , pgslTimeRangePeriod
-    ) where
-
-import           Network.Google.CloudErrorReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @clouderrorreporting.projects.groupStats.list@ method which the
--- 'ProjectsGroupStatsList' request conforms to.
-type ProjectsGroupStatsListResource =
-     "v1beta1" :>
-       Capture "projectName" Text :>
-         "groupStats" :>
-           QueryParam "$.xgafv" Xgafv :>
-             QueryParam "upload_protocol" Text :>
-               QueryParam "access_token" Text :>
-                 QueryParam "uploadType" Text :>
-                   QueryParam "timedCountDuration" GDuration :>
-                     QueryParam "alignment" Text :>
-                       QueryParams "groupId" Text :>
-                         QueryParam "alignmentTime" DateTime' :>
-                           QueryParam "pageToken" Text :>
-                             QueryParam "pageSize" (Textual Int32) :>
-                               QueryParam "serviceFilter.service" Text :>
-                                 QueryParam "order" Text :>
-                                   QueryParam "serviceFilter.resourceType" Text
-                                     :>
-                                     QueryParam "callback" Text :>
-                                       QueryParam "serviceFilter.version" Text
-                                         :>
-                                         QueryParam "timeRange.period" Text :>
-                                           QueryParam "alt" AltJSON :>
-                                             Get '[JSON] ListGroupStatsResponse
-
--- | Lists the specified groups.
---
--- /See:/ 'projectsGroupStatsList' smart constructor.
-data ProjectsGroupStatsList =
-  ProjectsGroupStatsList'
-    { _pgslXgafv                     :: !(Maybe Xgafv)
-    , _pgslUploadProtocol            :: !(Maybe Text)
-    , _pgslAccessToken               :: !(Maybe Text)
-    , _pgslUploadType                :: !(Maybe Text)
-    , _pgslTimedCountDuration        :: !(Maybe GDuration)
-    , _pgslAlignment                 :: !(Maybe Text)
-    , _pgslProjectName               :: !Text
-    , _pgslGroupId                   :: !(Maybe [Text])
-    , _pgslAlignmentTime             :: !(Maybe DateTime')
-    , _pgslPageToken                 :: !(Maybe Text)
-    , _pgslPageSize                  :: !(Maybe (Textual Int32))
-    , _pgslServiceFilterService      :: !(Maybe Text)
-    , _pgslOrder                     :: !(Maybe Text)
-    , _pgslServiceFilterResourceType :: !(Maybe Text)
-    , _pgslCallback                  :: !(Maybe Text)
-    , _pgslServiceFilterVersion      :: !(Maybe Text)
-    , _pgslTimeRangePeriod           :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsGroupStatsList' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pgslXgafv'
---
--- * 'pgslUploadProtocol'
---
--- * 'pgslAccessToken'
---
--- * 'pgslUploadType'
---
--- * 'pgslTimedCountDuration'
---
--- * 'pgslAlignment'
---
--- * 'pgslProjectName'
---
--- * 'pgslGroupId'
---
--- * 'pgslAlignmentTime'
---
--- * 'pgslPageToken'
---
--- * 'pgslPageSize'
---
--- * 'pgslServiceFilterService'
---
--- * 'pgslOrder'
---
--- * 'pgslServiceFilterResourceType'
---
--- * 'pgslCallback'
---
--- * 'pgslServiceFilterVersion'
---
--- * 'pgslTimeRangePeriod'
-projectsGroupStatsList
-    :: Text -- ^ 'pgslProjectName'
-    -> ProjectsGroupStatsList
-projectsGroupStatsList pPgslProjectName_ =
-  ProjectsGroupStatsList'
-    { _pgslXgafv = Nothing
-    , _pgslUploadProtocol = Nothing
-    , _pgslAccessToken = Nothing
-    , _pgslUploadType = Nothing
-    , _pgslTimedCountDuration = Nothing
-    , _pgslAlignment = Nothing
-    , _pgslProjectName = pPgslProjectName_
-    , _pgslGroupId = Nothing
-    , _pgslAlignmentTime = Nothing
-    , _pgslPageToken = Nothing
-    , _pgslPageSize = Nothing
-    , _pgslServiceFilterService = Nothing
-    , _pgslOrder = Nothing
-    , _pgslServiceFilterResourceType = Nothing
-    , _pgslCallback = Nothing
-    , _pgslServiceFilterVersion = Nothing
-    , _pgslTimeRangePeriod = Nothing
-    }
-
-
--- | V1 error format.
-pgslXgafv :: Lens' ProjectsGroupStatsList (Maybe Xgafv)
-pgslXgafv
-  = lens _pgslXgafv (\ s a -> s{_pgslXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-pgslUploadProtocol :: Lens' ProjectsGroupStatsList (Maybe Text)
-pgslUploadProtocol
-  = lens _pgslUploadProtocol
-      (\ s a -> s{_pgslUploadProtocol = a})
-
--- | OAuth access token.
-pgslAccessToken :: Lens' ProjectsGroupStatsList (Maybe Text)
-pgslAccessToken
-  = lens _pgslAccessToken
-      (\ s a -> s{_pgslAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-pgslUploadType :: Lens' ProjectsGroupStatsList (Maybe Text)
-pgslUploadType
-  = lens _pgslUploadType
-      (\ s a -> s{_pgslUploadType = a})
-
--- | [Optional] The preferred duration for a single returned \`TimedCount\`.
--- If not set, no timed counts are returned.
-pgslTimedCountDuration :: Lens' ProjectsGroupStatsList (Maybe Scientific)
-pgslTimedCountDuration
-  = lens _pgslTimedCountDuration
-      (\ s a -> s{_pgslTimedCountDuration = a})
-      . mapping _GDuration
-
--- | [Optional] The alignment of the timed counts to be returned. Default is
--- \`ALIGNMENT_EQUAL_AT_END\`.
-pgslAlignment :: Lens' ProjectsGroupStatsList (Maybe Text)
-pgslAlignment
-  = lens _pgslAlignment
-      (\ s a -> s{_pgslAlignment = a})
-
--- | [Required] The resource name of the Google Cloud Platform project.
--- Written as 'projects\/' plus the
--- <https://support.google.com/cloud/answer/6158840 Google Cloud Platform project ID>.
--- Example: 'projects\/my-project-123'.
-pgslProjectName :: Lens' ProjectsGroupStatsList Text
-pgslProjectName
-  = lens _pgslProjectName
-      (\ s a -> s{_pgslProjectName = a})
-
--- | [Optional] List all 'ErrorGroupStats' with these IDs.
-pgslGroupId :: Lens' ProjectsGroupStatsList [Text]
-pgslGroupId
-  = lens _pgslGroupId (\ s a -> s{_pgslGroupId = a}) .
-      _Default
-      . _Coerce
-
--- | [Optional] Time where the timed counts shall be aligned if rounded
--- alignment is chosen. Default is 00:00 UTC.
-pgslAlignmentTime :: Lens' ProjectsGroupStatsList (Maybe UTCTime)
-pgslAlignmentTime
-  = lens _pgslAlignmentTime
-      (\ s a -> s{_pgslAlignmentTime = a})
-      . mapping _DateTime
-
--- | [Optional] A \`next_page_token\` provided by a previous response. To
--- view additional results, pass this token along with the identical query
--- parameters as the first request.
-pgslPageToken :: Lens' ProjectsGroupStatsList (Maybe Text)
-pgslPageToken
-  = lens _pgslPageToken
-      (\ s a -> s{_pgslPageToken = a})
-
--- | [Optional] The maximum number of results to return per response. Default
--- is 20.
-pgslPageSize :: Lens' ProjectsGroupStatsList (Maybe Int32)
-pgslPageSize
-  = lens _pgslPageSize (\ s a -> s{_pgslPageSize = a})
-      . mapping _Coerce
-
--- | [Optional] The exact value to match against
--- [\`ServiceContext.service\`](\/error-reporting\/reference\/rest\/v1beta1\/ServiceContext#FIELDS.service).
-pgslServiceFilterService :: Lens' ProjectsGroupStatsList (Maybe Text)
-pgslServiceFilterService
-  = lens _pgslServiceFilterService
-      (\ s a -> s{_pgslServiceFilterService = a})
-
--- | [Optional] The sort order in which the results are returned. Default is
--- \`COUNT_DESC\`.
-pgslOrder :: Lens' ProjectsGroupStatsList (Maybe Text)
-pgslOrder
-  = lens _pgslOrder (\ s a -> s{_pgslOrder = a})
-
--- | [Optional] The exact value to match against
--- [\`ServiceContext.resource_type\`](\/error-reporting\/reference\/rest\/v1beta1\/ServiceContext#FIELDS.resource_type).
-pgslServiceFilterResourceType :: Lens' ProjectsGroupStatsList (Maybe Text)
-pgslServiceFilterResourceType
-  = lens _pgslServiceFilterResourceType
-      (\ s a -> s{_pgslServiceFilterResourceType = a})
-
--- | JSONP
-pgslCallback :: Lens' ProjectsGroupStatsList (Maybe Text)
-pgslCallback
-  = lens _pgslCallback (\ s a -> s{_pgslCallback = a})
-
--- | [Optional] The exact value to match against
--- [\`ServiceContext.version\`](\/error-reporting\/reference\/rest\/v1beta1\/ServiceContext#FIELDS.version).
-pgslServiceFilterVersion :: Lens' ProjectsGroupStatsList (Maybe Text)
-pgslServiceFilterVersion
-  = lens _pgslServiceFilterVersion
-      (\ s a -> s{_pgslServiceFilterVersion = a})
-
--- | Restricts the query to the specified time range.
-pgslTimeRangePeriod :: Lens' ProjectsGroupStatsList (Maybe Text)
-pgslTimeRangePeriod
-  = lens _pgslTimeRangePeriod
-      (\ s a -> s{_pgslTimeRangePeriod = a})
-
-instance GoogleRequest ProjectsGroupStatsList where
-        type Rs ProjectsGroupStatsList =
-             ListGroupStatsResponse
-        type Scopes ProjectsGroupStatsList =
-             '["https://www.googleapis.com/auth/cloud-platform"]
-        requestClient ProjectsGroupStatsList'{..}
-          = go _pgslProjectName _pgslXgafv _pgslUploadProtocol
-              _pgslAccessToken
-              _pgslUploadType
-              _pgslTimedCountDuration
-              _pgslAlignment
-              (_pgslGroupId ^. _Default)
-              _pgslAlignmentTime
-              _pgslPageToken
-              _pgslPageSize
-              _pgslServiceFilterService
-              _pgslOrder
-              _pgslServiceFilterResourceType
-              _pgslCallback
-              _pgslServiceFilterVersion
-              _pgslTimeRangePeriod
-              (Just AltJSON)
-              cloudErrorReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ProjectsGroupStatsListResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/CloudErrorReporting/Projects/Groups/Get.hs b/gen/Network/Google/Resource/CloudErrorReporting/Projects/Groups/Get.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/CloudErrorReporting/Projects/Groups/Get.hs
+++ /dev/null
@@ -1,153 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.CloudErrorReporting.Projects.Groups.Get
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Get the specified group.
---
--- /See:/ <https://cloud.google.com/error-reporting/ Stackdriver Error Reporting API Reference> for @clouderrorreporting.projects.groups.get@.
-module Network.Google.Resource.CloudErrorReporting.Projects.Groups.Get
-    (
-    -- * REST Resource
-      ProjectsGroupsGetResource
-
-    -- * Creating a Request
-    , projectsGroupsGet
-    , ProjectsGroupsGet
-
-    -- * Request Lenses
-    , pggXgafv
-    , pggUploadProtocol
-    , pggAccessToken
-    , pggUploadType
-    , pggGroupName
-    , pggCallback
-    ) where
-
-import           Network.Google.CloudErrorReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @clouderrorreporting.projects.groups.get@ method which the
--- 'ProjectsGroupsGet' request conforms to.
-type ProjectsGroupsGetResource =
-     "v1beta1" :>
-       Capture "groupName" Text :>
-         QueryParam "$.xgafv" Xgafv :>
-           QueryParam "upload_protocol" Text :>
-             QueryParam "access_token" Text :>
-               QueryParam "uploadType" Text :>
-                 QueryParam "callback" Text :>
-                   QueryParam "alt" AltJSON :> Get '[JSON] ErrorGroup
-
--- | Get the specified group.
---
--- /See:/ 'projectsGroupsGet' smart constructor.
-data ProjectsGroupsGet =
-  ProjectsGroupsGet'
-    { _pggXgafv          :: !(Maybe Xgafv)
-    , _pggUploadProtocol :: !(Maybe Text)
-    , _pggAccessToken    :: !(Maybe Text)
-    , _pggUploadType     :: !(Maybe Text)
-    , _pggGroupName      :: !Text
-    , _pggCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsGroupsGet' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pggXgafv'
---
--- * 'pggUploadProtocol'
---
--- * 'pggAccessToken'
---
--- * 'pggUploadType'
---
--- * 'pggGroupName'
---
--- * 'pggCallback'
-projectsGroupsGet
-    :: Text -- ^ 'pggGroupName'
-    -> ProjectsGroupsGet
-projectsGroupsGet pPggGroupName_ =
-  ProjectsGroupsGet'
-    { _pggXgafv = Nothing
-    , _pggUploadProtocol = Nothing
-    , _pggAccessToken = Nothing
-    , _pggUploadType = Nothing
-    , _pggGroupName = pPggGroupName_
-    , _pggCallback = Nothing
-    }
-
-
--- | V1 error format.
-pggXgafv :: Lens' ProjectsGroupsGet (Maybe Xgafv)
-pggXgafv = lens _pggXgafv (\ s a -> s{_pggXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-pggUploadProtocol :: Lens' ProjectsGroupsGet (Maybe Text)
-pggUploadProtocol
-  = lens _pggUploadProtocol
-      (\ s a -> s{_pggUploadProtocol = a})
-
--- | OAuth access token.
-pggAccessToken :: Lens' ProjectsGroupsGet (Maybe Text)
-pggAccessToken
-  = lens _pggAccessToken
-      (\ s a -> s{_pggAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-pggUploadType :: Lens' ProjectsGroupsGet (Maybe Text)
-pggUploadType
-  = lens _pggUploadType
-      (\ s a -> s{_pggUploadType = a})
-
--- | [Required] The group resource name. Written as
--- 'projects\/projectID\/groups\/group_name'. Call
--- </error-reporting/reference/rest/v1beta1/projects.groupStats/list groupStats.list>
--- to return a list of groups belonging to this project. Example:
--- 'projects\/my-project-123\/groups\/my-group'
-pggGroupName :: Lens' ProjectsGroupsGet Text
-pggGroupName
-  = lens _pggGroupName (\ s a -> s{_pggGroupName = a})
-
--- | JSONP
-pggCallback :: Lens' ProjectsGroupsGet (Maybe Text)
-pggCallback
-  = lens _pggCallback (\ s a -> s{_pggCallback = a})
-
-instance GoogleRequest ProjectsGroupsGet where
-        type Rs ProjectsGroupsGet = ErrorGroup
-        type Scopes ProjectsGroupsGet =
-             '["https://www.googleapis.com/auth/cloud-platform"]
-        requestClient ProjectsGroupsGet'{..}
-          = go _pggGroupName _pggXgafv _pggUploadProtocol
-              _pggAccessToken
-              _pggUploadType
-              _pggCallback
-              (Just AltJSON)
-              cloudErrorReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ProjectsGroupsGetResource)
-                      mempty
diff --git a/gen/Network/Google/Resource/CloudErrorReporting/Projects/Groups/Update.hs b/gen/Network/Google/Resource/CloudErrorReporting/Projects/Groups/Update.hs
deleted file mode 100644
--- a/gen/Network/Google/Resource/CloudErrorReporting/Projects/Groups/Update.hs
+++ /dev/null
@@ -1,164 +0,0 @@
-{-# LANGUAGE DataKinds          #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveGeneric      #-}
-{-# LANGUAGE FlexibleInstances  #-}
-{-# LANGUAGE NoImplicitPrelude  #-}
-{-# LANGUAGE OverloadedStrings  #-}
-{-# LANGUAGE RecordWildCards    #-}
-{-# LANGUAGE TypeFamilies       #-}
-{-# LANGUAGE TypeOperators      #-}
-
-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
-
--- |
--- Module      : Network.Google.Resource.CloudErrorReporting.Projects.Groups.Update
--- Copyright   : (c) 2015-2016 Brendan Hay
--- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
--- Stability   : auto-generated
--- Portability : non-portable (GHC extensions)
---
--- Replace the data for the specified group. Fails if the group does not
--- exist.
---
--- /See:/ <https://cloud.google.com/error-reporting/ Stackdriver Error Reporting API Reference> for @clouderrorreporting.projects.groups.update@.
-module Network.Google.Resource.CloudErrorReporting.Projects.Groups.Update
-    (
-    -- * REST Resource
-      ProjectsGroupsUpdateResource
-
-    -- * Creating a Request
-    , projectsGroupsUpdate
-    , ProjectsGroupsUpdate
-
-    -- * Request Lenses
-    , pguXgafv
-    , pguUploadProtocol
-    , pguAccessToken
-    , pguUploadType
-    , pguPayload
-    , pguName
-    , pguCallback
-    ) where
-
-import           Network.Google.CloudErrorReporting.Types
-import           Network.Google.Prelude
-
--- | A resource alias for @clouderrorreporting.projects.groups.update@ method which the
--- 'ProjectsGroupsUpdate' request conforms to.
-type ProjectsGroupsUpdateResource =
-     "v1beta1" :>
-       Capture "name" Text :>
-         QueryParam "$.xgafv" Xgafv :>
-           QueryParam "upload_protocol" Text :>
-             QueryParam "access_token" Text :>
-               QueryParam "uploadType" Text :>
-                 QueryParam "callback" Text :>
-                   QueryParam "alt" AltJSON :>
-                     ReqBody '[JSON] ErrorGroup :> Put '[JSON] ErrorGroup
-
--- | Replace the data for the specified group. Fails if the group does not
--- exist.
---
--- /See:/ 'projectsGroupsUpdate' smart constructor.
-data ProjectsGroupsUpdate =
-  ProjectsGroupsUpdate'
-    { _pguXgafv          :: !(Maybe Xgafv)
-    , _pguUploadProtocol :: !(Maybe Text)
-    , _pguAccessToken    :: !(Maybe Text)
-    , _pguUploadType     :: !(Maybe Text)
-    , _pguPayload        :: !ErrorGroup
-    , _pguName           :: !Text
-    , _pguCallback       :: !(Maybe Text)
-    }
-  deriving (Eq, Show, Data, Typeable, Generic)
-
-
--- | Creates a value of 'ProjectsGroupsUpdate' with the minimum fields required to make a request.
---
--- Use one of the following lenses to modify other fields as desired:
---
--- * 'pguXgafv'
---
--- * 'pguUploadProtocol'
---
--- * 'pguAccessToken'
---
--- * 'pguUploadType'
---
--- * 'pguPayload'
---
--- * 'pguName'
---
--- * 'pguCallback'
-projectsGroupsUpdate
-    :: ErrorGroup -- ^ 'pguPayload'
-    -> Text -- ^ 'pguName'
-    -> ProjectsGroupsUpdate
-projectsGroupsUpdate pPguPayload_ pPguName_ =
-  ProjectsGroupsUpdate'
-    { _pguXgafv = Nothing
-    , _pguUploadProtocol = Nothing
-    , _pguAccessToken = Nothing
-    , _pguUploadType = Nothing
-    , _pguPayload = pPguPayload_
-    , _pguName = pPguName_
-    , _pguCallback = Nothing
-    }
-
-
--- | V1 error format.
-pguXgafv :: Lens' ProjectsGroupsUpdate (Maybe Xgafv)
-pguXgafv = lens _pguXgafv (\ s a -> s{_pguXgafv = a})
-
--- | Upload protocol for media (e.g. \"raw\", \"multipart\").
-pguUploadProtocol :: Lens' ProjectsGroupsUpdate (Maybe Text)
-pguUploadProtocol
-  = lens _pguUploadProtocol
-      (\ s a -> s{_pguUploadProtocol = a})
-
--- | OAuth access token.
-pguAccessToken :: Lens' ProjectsGroupsUpdate (Maybe Text)
-pguAccessToken
-  = lens _pguAccessToken
-      (\ s a -> s{_pguAccessToken = a})
-
--- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
-pguUploadType :: Lens' ProjectsGroupsUpdate (Maybe Text)
-pguUploadType
-  = lens _pguUploadType
-      (\ s a -> s{_pguUploadType = a})
-
--- | Multipart request metadata.
-pguPayload :: Lens' ProjectsGroupsUpdate ErrorGroup
-pguPayload
-  = lens _pguPayload (\ s a -> s{_pguPayload = a})
-
--- | The group resource name. Example:
--- 'projects\/my-project-123\/groups\/my-groupid'
-pguName :: Lens' ProjectsGroupsUpdate Text
-pguName = lens _pguName (\ s a -> s{_pguName = a})
-
--- | JSONP
-pguCallback :: Lens' ProjectsGroupsUpdate (Maybe Text)
-pguCallback
-  = lens _pguCallback (\ s a -> s{_pguCallback = a})
-
-instance GoogleRequest ProjectsGroupsUpdate where
-        type Rs ProjectsGroupsUpdate = ErrorGroup
-        type Scopes ProjectsGroupsUpdate =
-             '["https://www.googleapis.com/auth/cloud-platform"]
-        requestClient ProjectsGroupsUpdate'{..}
-          = go _pguName _pguXgafv _pguUploadProtocol
-              _pguAccessToken
-              _pguUploadType
-              _pguCallback
-              (Just AltJSON)
-              _pguPayload
-              cloudErrorReportingService
-          where go
-                  = buildClient
-                      (Proxy :: Proxy ProjectsGroupsUpdateResource)
-                      mempty
diff --git a/gogol-clouderrorreporting.cabal b/gogol-clouderrorreporting.cabal
--- a/gogol-clouderrorreporting.cabal
+++ b/gogol-clouderrorreporting.cabal
@@ -1,53 +1,71 @@
-name:                  gogol-clouderrorreporting
-version:               0.5.0
-synopsis:              Google Stackdriver Error Reporting SDK.
-homepage:              https://github.com/brendanhay/gogol
-bug-reports:           https://github.com/brendanhay/gogol/issues
-license:               OtherLicense
-license-file:          LICENSE
-author:                Brendan Hay
-maintainer:            Brendan Hay <brendan.g.hay@gmail.com>
-copyright:             Copyright (c) 2015-2016 Brendan Hay
-category:              Network, Google, Cloud
-build-type:            Simple
-cabal-version:         >= 1.10
-extra-source-files:    README.md src/.gitkeep
+cabal-version:      2.2
+name:               gogol-clouderrorreporting
+version:            1.0.0
+synopsis:           Google Error Reporting SDK.
+homepage:           https://github.com/brendanhay/gogol
+bug-reports:        https://github.com/brendanhay/gogol/issues
+license:            MPL-2.0
+license-file:       LICENSE
+author:             Brendan Hay
+maintainer:
+  Brendan Hay <brendan.g.hay+gogol@gmail.com>, Toni Cebrián <toni@tonicebrian.com>
 
+copyright:          Copyright (c) 2015-2025 Brendan Hay
+category:           Google
+build-type:         Simple
+extra-source-files:
+  README.md
+  src/.gitkeep
+
 description:
-    Groups and counts similar errors from cloud services and applications,
-    reports new errors, and provides access to error groups and their
-    associated errors.
-    .
-    /Warning:/ This is an experimental prototype/preview release which is still
-    under exploratory development and not intended for public use, caveat emptor!
-    .
-    This library is compatible with version @v1beta1@
-    of the API.
+  Groups and counts similar errors from cloud services and applications, reports new errors, and provides access to error groups and their associated errors.
+  .
+  /Warning:/ This is an experimental prototype/preview release which is still
+  under exploratory development and not intended for public use, caveat emptor!
+  .
+  This library is compatible with version @v1beta1@
+  of the API.
 
 source-repository head
-    type:     git
-    location: git://github.com/brendanhay/gogol.git
+  type:     git
+  location: git://github.com/brendanhay/gogol.git
+  subdir:   gogol-clouderrorreporting
 
+flag field-selectors
+  description:
+    If record field selectors should be enabled. Disabling this requires GHC >=9.2 and the NoFieldSelectors extension.
+
+  default:     False
+  manual:      True
+
 library
-    default-language:  Haskell2010
-    hs-source-dirs:    src gen
+  default-language: GHC2021
+  hs-source-dirs:   src gen
+  ghc-options:
+    -Wall -fwarn-incomplete-uni-patterns
+    -fwarn-incomplete-record-updates -funbox-strict-fields
+    -fwarn-unused-packages
 
-    ghc-options:       -Wall
+  if (!flag(field-selectors) && impl(ghc >=9.2))
+    default-extensions: NoFieldSelectors
 
-    exposed-modules:
-          Network.Google.CloudErrorReporting
-        , Network.Google.CloudErrorReporting.Types
-        , Network.Google.Resource.CloudErrorReporting.Projects.DeleteEvents
-        , Network.Google.Resource.CloudErrorReporting.Projects.Events.List
-        , Network.Google.Resource.CloudErrorReporting.Projects.Events.Report
-        , Network.Google.Resource.CloudErrorReporting.Projects.GroupStats.List
-        , Network.Google.Resource.CloudErrorReporting.Projects.Groups.Get
-        , Network.Google.Resource.CloudErrorReporting.Projects.Groups.Update
+  exposed-modules:
+    Gogol.CloudErrorReporting
+    Gogol.CloudErrorReporting.Projects.DeleteEvents
+    Gogol.CloudErrorReporting.Projects.Events.List
+    Gogol.CloudErrorReporting.Projects.Events.Report
+    Gogol.CloudErrorReporting.Projects.Groups.Get
+    Gogol.CloudErrorReporting.Projects.Groups.Update
+    Gogol.CloudErrorReporting.Projects.GroupStats.List
+    Gogol.CloudErrorReporting.Projects.Locations.DeleteEvents
+    Gogol.CloudErrorReporting.Projects.Locations.Events.List
+    Gogol.CloudErrorReporting.Projects.Locations.Groups.Get
+    Gogol.CloudErrorReporting.Projects.Locations.Groups.Update
+    Gogol.CloudErrorReporting.Projects.Locations.GroupStats.List
+    Gogol.CloudErrorReporting.Types
 
-    other-modules:
-          Network.Google.CloudErrorReporting.Types.Product
-        , Network.Google.CloudErrorReporting.Types.Sum
+  other-modules:
+    Gogol.CloudErrorReporting.Internal.Product
+    Gogol.CloudErrorReporting.Internal.Sum
 
-    build-depends:
-          gogol-core == 0.5.0.*
-        , base       >= 4.7 && < 5
+  build-depends:    gogol-core ^>=1.0.0
