# frozen_string_literal: true # Copyright 2024 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # https://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Auto-generated by gapic-generator-ruby. DO NOT EDIT! module Google module Cloud module ServiceHealth module V1 # Represents service health events that may affect Google Cloud products. # Event resource is a read-only view and does not allow any modifications. All # fields are output only. # @!attribute [r] name # @return [::String] # Output only. Identifier. Name of the event. Unique name of the event in # this scope including project and location using the form # `projects/{project_id}/locations/{location}/events/{event_id}`. # @!attribute [r] title # @return [::String] # Output only. Brief description for the event. # @!attribute [r] description # @return [::String] # Output only. Free-form, human-readable description. # @!attribute [r] category # @return [::Google::Cloud::ServiceHealth::V1::Event::EventCategory] # Output only. The category of the event. # @!attribute [r] detailed_category # @return [::Google::Cloud::ServiceHealth::V1::Event::DetailedCategory] # Output only. The detailed category of the event. # @!attribute [r] state # @return [::Google::Cloud::ServiceHealth::V1::Event::State] # Output only. The current state of the event. # @!attribute [r] detailed_state # @return [::Google::Cloud::ServiceHealth::V1::Event::DetailedState] # Output only. The current detailed state of the incident. # @!attribute [rw] event_impacts # @return [::Array<::Google::Cloud::ServiceHealth::V1::EventImpact>] # Google Cloud products and locations impacted by the event. # @!attribute [r] relevance # @return [::Google::Cloud::ServiceHealth::V1::Event::Relevance] # Output only. Communicates why a given event is deemed relevant in the # context of a given project. # @!attribute [r] updates # @return [::Array<::Google::Cloud::ServiceHealth::V1::EventUpdate>] # Output only. Event updates are correspondence from Google. # @!attribute [r] parent_event # @return [::String] # Output only. When `detailed_state`=`MERGED`, `parent_event` contains the # name of the parent event. All further updates will be published to the # parent event. # @!attribute [r] update_time # @return [::Google::Protobuf::Timestamp] # Output only. The time when the event was last modified. # @!attribute [r] start_time # @return [::Google::Protobuf::Timestamp] # Output only. The start time of the event, if applicable. # @!attribute [r] end_time # @return [::Google::Protobuf::Timestamp] # Output only. The end time of the event, if applicable. # @!attribute [r] next_update_time # @return [::Google::Protobuf::Timestamp] # Output only. The time when the next update can be expected. class Event include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # The category of the event. This enum lists all possible categories of # event. module EventCategory # Unspecified category. EVENT_CATEGORY_UNSPECIFIED = 0 # Event category for service outage or degradation. INCIDENT = 2 end # The detailed category of an event. Contains all possible states for all # event categories. module DetailedCategory # Unspecified detailed category. DETAILED_CATEGORY_UNSPECIFIED = 0 # Indicates an event with category INCIDENT has a confirmed impact to at # least one Google Cloud product. CONFIRMED_INCIDENT = 1 # Indicates an event with category INCIDENT is under investigation to # determine if it has a confirmed impact on any Google Cloud products. EMERGING_INCIDENT = 2 end # The state of the event. This enum lists all possible states of event. module State # Unspecified state. STATE_UNSPECIFIED = 0 # Event is actively affecting a Google Cloud product and will continue to # receive updates. ACTIVE = 1 # Event is no longer affecting the Google Cloud product or has been merged # with another event. CLOSED = 2 end # The detailed state of the incident. This enum lists all possible detailed # states of an incident. module DetailedState # Unspecified detail state. DETAILED_STATE_UNSPECIFIED = 0 # Google engineers are actively investigating the event to determine the # impact. EMERGING = 1 # The incident is confirmed and impacting at least one Google Cloud # product. Ongoing status updates will be provided until it is resolved. CONFIRMED = 2 # The incident is no longer affecting any Google Cloud product, and there # will be no further updates. RESOLVED = 3 # The incident was merged into a parent incident. All further updates will # be published to the parent only. The `parent_event` field contains the # name of the parent. MERGED = 4 # The incident was automatically closed because the issues couldn’t be # confirmed or is no longer impacting Google Cloud Products and/or # Locations. AUTO_CLOSED = 9 # The incident was verified as non-impactful. No further action required. FALSE_POSITIVE = 10 end # Communicates why a given incident is deemed relevant in the context of a # given project. This enum lists all possible detailed states of relevance. module Relevance # Unspecified relevance. RELEVANCE_UNSPECIFIED = 0 # The relevance of the incident to the project is unknown. UNKNOWN = 2 # The incident does not impact the project. NOT_IMPACTED = 6 # The incident is associated with a Google Cloud product your project uses, # but the incident may not be impacting your project. For example, the # incident may be impacting a Google Cloud product that your project uses, # but in a location that your project does not use. PARTIALLY_RELATED = 7 # The incident has a direct connection with your project and impacts a # Google Cloud product in a location your project uses. RELATED = 8 # The incident is verified to be impacting your project. IMPACTED = 9 end end # Represents service health events that may affect Google Cloud products used # across the organization. It is a read-only view and does not allow any # modifications. # @!attribute [r] name # @return [::String] # Output only. Identifier. Name of the event. Unique name of the event in # this scope including organization ID and location using the form # `organizations/{organization_id}/locations/{location}/organizationEvents/{event_id}`. # # `organization_id` - see [Getting your organization resource # ID](https://cloud.google.com/resource-manager/docs/creating-managing-organization#retrieving_your_organization_id).
# `location` - The location to get the service health events from.
# `event_id` - Organization event ID to retrieve. # @!attribute [r] title # @return [::String] # Output only. Brief description for the event. # @!attribute [r] description # @return [::String] # Output only. Free-form, human-readable description. # @!attribute [r] category # @return [::Google::Cloud::ServiceHealth::V1::OrganizationEvent::EventCategory] # Output only. The category of the event. # @!attribute [r] detailed_category # @return [::Google::Cloud::ServiceHealth::V1::OrganizationEvent::DetailedCategory] # Output only. The detailed category of the event. # @!attribute [r] state # @return [::Google::Cloud::ServiceHealth::V1::OrganizationEvent::State] # Output only. The current state of the event. # @!attribute [r] detailed_state # @return [::Google::Cloud::ServiceHealth::V1::OrganizationEvent::DetailedState] # Output only. The current detailed state of the incident. # @!attribute [r] event_impacts # @return [::Array<::Google::Cloud::ServiceHealth::V1::EventImpact>] # Output only. Represents the Google Cloud products and locations impacted by # the event. # @!attribute [r] updates # @return [::Array<::Google::Cloud::ServiceHealth::V1::EventUpdate>] # Output only. Incident-only field. Event updates are correspondence from # Google. # @!attribute [r] parent_event # @return [::String] # Output only. When `detailed_state`=`MERGED`, `parent_event` contains the # name of the parent event. All further updates will be published to the # parent event. # @!attribute [r] update_time # @return [::Google::Protobuf::Timestamp] # Output only. The time the update was posted. # @!attribute [r] start_time # @return [::Google::Protobuf::Timestamp] # Output only. The start time of the event, if applicable. # @!attribute [r] end_time # @return [::Google::Protobuf::Timestamp] # Output only. The end time of the event, if applicable. # @!attribute [r] next_update_time # @return [::Google::Protobuf::Timestamp] # Output only. Incident-only field. The time when the next update can be # expected. class OrganizationEvent include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # The category of the event. This enum lists all possible categories of # event. module EventCategory # Unspecified category. EVENT_CATEGORY_UNSPECIFIED = 0 # Event category for service outage or degradation. INCIDENT = 2 end # The detailed category of an event. Contains all possible states for all # event categories. module DetailedCategory # Unspecified detailed category. DETAILED_CATEGORY_UNSPECIFIED = 0 # Indicates an event with category INCIDENT has a confirmed impact to at # least one Google Cloud product. CONFIRMED_INCIDENT = 1 # Indicates an event with category INCIDENT is under investigation to # determine if it has a confirmed impact on any Google Cloud products. EMERGING_INCIDENT = 2 end # The state of the organization event. This enum lists all possible states of # event. module State # Unspecified state. STATE_UNSPECIFIED = 0 # Event is actively affecting a Google Cloud product and will continue to # receive updates. ACTIVE = 1 # Event is no longer affecting the Google Cloud product or has been merged # with another event. CLOSED = 2 end # The detailed state of the incident. This enum lists all possible detailed # states of an incident. module DetailedState # Unspecified detail state. DETAILED_STATE_UNSPECIFIED = 0 # Google engineers are actively investigating the incident to determine the # impact. EMERGING = 1 # The incident is confirmed and impacting at least one Google Cloud # product. Ongoing status updates will be provided until it is resolved. CONFIRMED = 2 # The incident is no longer affecting any Google Cloud product, and there # will be no further updates. RESOLVED = 3 # The incident was merged into a parent event. All further updates will be # published to the parent only. The `parent_event` contains the name of the # parent. MERGED = 4 # The incident was automatically closed because the issues couldn’t be # confirmed or is no longer impacting Google Cloud Products and/or # Locations. AUTO_CLOSED = 9 # The incident was verified as non-impactful. No further action required. FALSE_POSITIVE = 10 end end # Records an update made to the event. # @!attribute [r] update_time # @return [::Google::Protobuf::Timestamp] # Output only. The time the update was posted. # @!attribute [r] title # @return [::String] # Output only. Brief title for the event. # @!attribute [r] description # @return [::String] # Output only. Free-form, human-readable description. # @!attribute [r] symptom # @return [::String] # Output only. Symptoms of the event, if available. # @!attribute [r] workaround # @return [::String] # Output only. Workaround steps to remediate the event impact, if available. class EventUpdate include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Represents the locations impacted by the event. # @!attribute [rw] location_name # @return [::String] # Location impacted by the event. Example: `"us-central1"` class Location include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Represents the Google Cloud product impacted by the event. # @!attribute [rw] product_name # @return [::String] # Google Cloud product impacted by the event. Example: `"Google Cloud SQL"` class Product include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Represents the Google Cloud products and locations impacted by the event. # @!attribute [rw] product # @return [::Google::Cloud::ServiceHealth::V1::Product] # Google Cloud product impacted by the event. # @!attribute [rw] location # @return [::Google::Cloud::ServiceHealth::V1::Location] # Location impacted by the event. class EventImpact include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Represents impact to assets at organizational level. It is a read-only view # and does not allow any modifications. # @!attribute [r] name # @return [::String] # Output only. Identifier. Unique name of the organization impact in this # scope including organization and location using the form # `organizations/{organization_id}/locations/{location}/organizationImpacts/{organization_impact_id}`. # # `organization_id` - ID (number) of the organization that contains the # event. To get your `organization_id`, see # [Getting your organization resource # ID](https://cloud.google.com/resource-manager/docs/creating-managing-organization#retrieving_your_organization_id).
# `organization_impact_id` - ID of the [OrganizationImpact # resource](/service-health/docs/reference/rest/v1beta/organizations.locations.organizationImpacts#OrganizationImpact). # @!attribute [r] events # @return [::Array<::String>] # Output only. A list of event names impacting the asset. # @!attribute [r] asset # @return [::Google::Cloud::ServiceHealth::V1::Asset] # Output only. Google Cloud asset possibly impacted by the specified events. # @!attribute [r] update_time # @return [::Google::Protobuf::Timestamp] # Output only. The time when the affected project was last modified. class OrganizationImpact include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Represents the asset impacted by the events. # @!attribute [r] asset_name # @return [::String] # Output only. Full name of the resource as defined in # [Resource # Names](https://cloud.google.com/apis/design/resource_names#full_resource_name). # @!attribute [r] asset_type # @return [::String] # Output only. Type of the asset. Example: # `"cloudresourcemanager.googleapis.com/Project"` class Asset include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # @!attribute [rw] parent # @return [::String] # Required. Parent value using the form # `projects/{project_id}/locations/{location}/events`. # # `project_id` - ID of the project for which to list service health # events. # `location` - The location to get the service health events from. # To retrieve service health events of category = INCIDENT, use `location` = # `global`. # @!attribute [rw] page_size # @return [::Integer] # Optional. The maximum number of events that should be returned. Acceptable # values are 1 to 100, inclusive. (The default value is 10.) If more results # are available, the service returns a next_page_token that you can use to # get the next page of results in subsequent list requests. The service may # return fewer events than the requested page_size. # @!attribute [rw] page_token # @return [::String] # Optional. A token identifying a page of results the server should return. # Provide Page token returned by a previous `ListEvents` call to retrieve the # next page of results. When paginating, all other parameters provided to # `ListEvents` must match the call that provided the page token. # @!attribute [rw] filter # @return [::String] # Optional. A filter expression that filters resources listed in the # response. The expression takes the following forms:
# * field=value for `category` and `state`
# * field <, >, <=, or >= value for `update_time`
# Examples: `category=INCIDENT`, `update_time>=2000-01-01T11:30:00-04:00` #
# # Multiple filter queries are separated by spaces. Example: # `category=INCIDENT state=ACTIVE`. # # By default, each expression is an AND expression. However, you can include # AND and OR expressions explicitly. # # Filter is supported for the following fields: `category`, `state`, # `update_time` # @!attribute [rw] view # @return [::Google::Cloud::ServiceHealth::V1::EventView] # Optional. Event fields to include in response. class ListEventsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # @!attribute [r] events # @return [::Array<::Google::Cloud::ServiceHealth::V1::Event>] # Output only. List of events. # @!attribute [r] next_page_token # @return [::String] # Output only. The continuation token, used to page through large result # sets. Provide this value in a subsequent request as page_token to retrieve # the next page. # # If this field is not present, there are no subsequent results. # @!attribute [r] unreachable # @return [::Array<::String>] # Output only. Locations that could not be reached. class ListEventsResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Message for getting an event # @!attribute [rw] name # @return [::String] # Required. Unique name of the event in this scope including project # and location using the form # `projects/{project_id}/locations/{location}/events/{event_id}`. # # `project_id` - Project ID of the project that contains the event.
# `location` - The location to get the service health events from.
# `event_id` - Event ID to retrieve. class GetEventRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # @!attribute [rw] parent # @return [::String] # Required. Parent value using the form # `organizations/{organization_id}/locations/{location}/organizationEvents`. # # `organization_id` - ID (number) of the project that contains the event. To # get your `organization_id`, see # [Getting your organization resource # ID](https://cloud.google.com/resource-manager/docs/creating-managing-organization#retrieving_your_organization_id).
# `location` - The location to get the service health events from. To # retrieve service health events of category = INCIDENT, use `location` = # `global`. # @!attribute [rw] page_size # @return [::Integer] # Optional. The maximum number of events that should be returned. Acceptable # values are `1` to `100`, inclusive. (The default value is `10`.) If more # results are available, the service returns a `next_page_token` that you can # use to get the next page of results in subsequent list requests. The # service may return fewer events than the requested `page_size`. # @!attribute [rw] page_token # @return [::String] # Optional. A token identifying a page of results the server should return. # # Provide Page token returned by a previous `ListOrganizationEvents` call to # retrieve the next page of results. # # When paginating, all other parameters provided to # `ListOrganizationEvents` must match the call that provided the page token. # @!attribute [rw] filter # @return [::String] # Optional. A filter expression that filters resources listed in the # response. The expression takes the following forms: # # * field=value for `category` and `state` # * field <, >, <=, or >= value for `update_time` # # Examples: `category=INCIDENT`, `update_time>=2000-01-01T11:30:00-04:00` # # Multiple filter queries are space-separated. Example: # `category=INCIDENT state=ACTIVE`. # # By default, each expression is an AND expression. However, you can include # AND and OR expressions explicitly. # # Filter is supported for the following fields: `category`, `state`, # `update_time` # @!attribute [rw] view # @return [::Google::Cloud::ServiceHealth::V1::OrganizationEventView] # Optional. OrganizationEvent fields to include in response. class ListOrganizationEventsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # @!attribute [r] organization_events # @return [::Array<::Google::Cloud::ServiceHealth::V1::OrganizationEvent>] # Output only. List of organization events affecting an organization. # @!attribute [r] next_page_token # @return [::String] # Output only. The continuation token, used to page through large result # sets. Provide this value in a subsequent request as `page_token` to # retrieve the next page. # # If this field is not present, there are no subsequent results. # @!attribute [r] unreachable # @return [::Array<::String>] # Output only. Locations that could not be reached. class ListOrganizationEventsResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # @!attribute [rw] name # @return [::String] # Required. Unique name of the event in this scope including organization and # event ID using the form # `organizations/{organization_id}/locations/locations/global/organizationEvents/{event_id}`. # # `organization_id` - ID (number) of the project that contains the event. To # get your `organization_id`, see # [Getting your organization resource # ID](https://cloud.google.com/resource-manager/docs/creating-managing-organization#retrieving_your_organization_id).
# `event_id` - Organization event ID to retrieve. class GetOrganizationEventRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Message for requesting list of OrganizationImpacts # @!attribute [rw] parent # @return [::String] # Required. Parent value using the form # `organizations/{organization_id}/locations/{location}/organizationImpacts`. # # `organization_id` - ID (number) of the project that contains the event. To # get your `organization_id`, see # [Getting your organization resource # ID](https://cloud.google.com/resource-manager/docs/creating-managing-organization#retrieving_your_organization_id). # @!attribute [rw] page_size # @return [::Integer] # Optional. The maximum number of events that should be returned. Acceptable # values are `1` to `100`, inclusive. The default value is `10`. # # If more results are available, the service returns a # `next_page_token` that can be used to get the next page of results in # subsequent list requests. The service may return fewer # [impacts](/service-health/docs/reference/rest/v1beta/organizations.locations.organizationImpacts#OrganizationImpact) # than the requested `page_size`. # @!attribute [rw] page_token # @return [::String] # Optional. A token identifying a page of results the server should return. # # Provide `page_token` returned by a previous `ListOrganizationImpacts` call # to retrieve the next page of results. # # When paginating, all other parameters provided to `ListOrganizationImpacts` # must match the call that provided the page token. # @!attribute [rw] filter # @return [::String] # Optional. A filter expression that filters resources listed in the # response. The expression is in the form of `field:value` for checking if a # repeated field contains a value. # # Example: # `events:organizations%2F{organization_id}%2Flocations%2Fglobal%2ForganizationEvents%2Fevent-id` # # To get your `{organization_id}`, see # [Getting your organization resource # ID](https://cloud.google.com/resource-manager/docs/creating-managing-organization#retrieving_your_organization_id). # # Multiple filter queries are separated by spaces. # # By default, each expression is an AND expression. However, you can include # AND and OR expressions explicitly. # Filter is supported for the following fields: `events`. class ListOrganizationImpactsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # @!attribute [r] organization_impacts # @return [::Array<::Google::Cloud::ServiceHealth::V1::OrganizationImpact>] # Output only. List of # [impacts](/service-health/docs/reference/rest/v1beta/organizations.locations.organizationImpacts#OrganizationImpact) # for an organization affected by service health events. # @!attribute [r] next_page_token # @return [::String] # Output only. The continuation token, used to page through large result # sets. Provide this value in a subsequent request as `page_token` to # retrieve the next page. # # If this field is not present, there are no subsequent results. # @!attribute [r] unreachable # @return [::Array<::String>] # Output only. Locations that could not be reached. class ListOrganizationImpactsResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # @!attribute [rw] name # @return [::String] # Required. Name of the resource using the form # `organizations/{organization_id}/locations/global/organizationImpacts/{organization_impact_id}`. # # `organization_id` - ID (number) of the organization that contains the # event. To get your `organization_id`, see # [Getting your organization resource # ID](https://cloud.google.com/resource-manager/docs/creating-managing-organization#retrieving_your_organization_id).
# `organization_impact_id` - ID of the [OrganizationImpact # resource](/service-health/docs/reference/rest/v1beta/organizations.locations.organizationImpacts#OrganizationImpact). class GetOrganizationImpactRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The event fields to include in ListEvents API response. This enum lists all # possible event views. module EventView # Unspecified event view. Default to `EVENT_VIEW_BASIC`. EVENT_VIEW_UNSPECIFIED = 0 # Includes all fields except `updates`. This view is the default for # ListEvents API. EVENT_VIEW_BASIC = 1 # Includes all event fields. EVENT_VIEW_FULL = 2 end # The organization event fields to include in ListOrganizationEvents API # response. This enum lists all possible organization event views. module OrganizationEventView # Unspecified event view. Default to `ORGANIZATION_EVENT_VIEW_BASIC`. ORGANIZATION_EVENT_VIEW_UNSPECIFIED = 0 # Includes all organization event fields except `updates`. This view is the # default for ListOrganizationEvents API. ORGANIZATION_EVENT_VIEW_BASIC = 1 # Includes all organization event fields. ORGANIZATION_EVENT_VIEW_FULL = 2 end end end end end