"""Generated message classes for essentialcontacts version v1beta1.

"""
# NOTE: This file is autogenerated and should not be edited by hand.

from __future__ import absolute_import

from apitools.base.protorpclite import messages as _messages
from apitools.base.py import encoding


package = 'essentialcontacts'


class EssentialcontactsFoldersContactsComputeRequest(_messages.Message):
  r"""A EssentialcontactsFoldersContactsComputeRequest object.

  Enums:
    NotificationCategoriesValueValuesEnum: The categories of notifications to
      compute contacts for. If ALL is included in this list, contacts
      subscribed to any notification category will be returned.

  Fields:
    notificationCategories: The categories of notifications to compute
      contacts for. If ALL is included in this list, contacts subscribed to
      any notification category will be returned.
    pageSize: Optional. The maximum number of results to return from this
      request. Non-positive values are ignored. The presence of
      `next_page_token` in the response indicates that more results might be
      available. If not specified, the default page_size is 100.
    pageToken: Optional. If present, retrieves the next batch of results from
      the preceding call to this method. `page_token` must be the value of
      `next_page_token` from the previous response. The values of other method
      parameters should be identical to those in the previous call.
    parent: Required. The name of the resource to compute contacts for.
      Format: organizations/{organization_id}, folders/{folder_id} or
      projects/{project_id}
  """

  class NotificationCategoriesValueValuesEnum(_messages.Enum):
    r"""The categories of notifications to compute contacts for. If ALL is
    included in this list, contacts subscribed to any notification category
    will be returned.

    Values:
      NOTIFICATION_CATEGORY_UNSPECIFIED: Notification category is unrecognized
        or unspecified.
      ALL: All notifications related to the resource, including notifications
        pertaining to categories added in the future.
      SUSPENSION: Notifications related to imminent account suspension.
      SECURITY: Notifications related to security/privacy incidents,
        notifications, and vulnerabilities.
      TECHNICAL: Notifications related to technical events and issues such as
        outages, errors, or bugs.
      BILLING: Notifications related to billing and payments notifications,
        price updates, errors, or credits.
      LEGAL: Notifications related to enforcement actions, regulatory
        compliance, or government notices.
      PRODUCT_UPDATES: Notifications related to new versions, product terms
        updates, or deprecations.
      TECHNICAL_INCIDENTS: Child category of TECHNICAL. If assigned, technical
        incident notifications will go to these contacts instead of TECHNICAL.
    """
    NOTIFICATION_CATEGORY_UNSPECIFIED = 0
    ALL = 1
    SUSPENSION = 2
    SECURITY = 3
    TECHNICAL = 4
    BILLING = 5
    LEGAL = 6
    PRODUCT_UPDATES = 7
    TECHNICAL_INCIDENTS = 8

  notificationCategories = _messages.EnumField('NotificationCategoriesValueValuesEnum', 1, repeated=True)
  pageSize = _messages.IntegerField(2, variant=_messages.Variant.INT32)
  pageToken = _messages.StringField(3)
  parent = _messages.StringField(4, required=True)


class EssentialcontactsFoldersContactsCreateRequest(_messages.Message):
  r"""A EssentialcontactsFoldersContactsCreateRequest object.

  Fields:
    googleCloudEssentialcontactsV1beta1Contact: A
      GoogleCloudEssentialcontactsV1beta1Contact resource to be passed as the
      request body.
    parent: Required. The resource to save this contact for. Format:
      organizations/{organization_id}, folders/{folder_id} or
      projects/{project_id}
  """

  googleCloudEssentialcontactsV1beta1Contact = _messages.MessageField('GoogleCloudEssentialcontactsV1beta1Contact', 1)
  parent = _messages.StringField(2, required=True)


class EssentialcontactsFoldersContactsDeleteRequest(_messages.Message):
  r"""A EssentialcontactsFoldersContactsDeleteRequest object.

  Fields:
    name: Required. The name of the contact to delete. Format:
      organizations/{organization_id}/contacts/{contact_id},
      folders/{folder_id}/contacts/{contact_id} or
      projects/{project_id}/contacts/{contact_id}
  """

  name = _messages.StringField(1, required=True)


class EssentialcontactsFoldersContactsGetRequest(_messages.Message):
  r"""A EssentialcontactsFoldersContactsGetRequest object.

  Fields:
    name: Required. The name of the contact to retrieve. Format:
      organizations/{organization_id}/contacts/{contact_id},
      folders/{folder_id}/contacts/{contact_id} or
      projects/{project_id}/contacts/{contact_id}
  """

  name = _messages.StringField(1, required=True)


class EssentialcontactsFoldersContactsListRequest(_messages.Message):
  r"""A EssentialcontactsFoldersContactsListRequest object.

  Fields:
    pageSize: Optional. The maximum number of results to return from this
      request. Non-positive values are ignored. The presence of
      `next_page_token` in the response indicates that more results might be
      available. If not specified, the default page_size is 100.
    pageToken: Optional. If present, retrieves the next batch of results from
      the preceding call to this method. `page_token` must be the value of
      `next_page_token` from the previous response. The values of other method
      parameters should be identical to those in the previous call.
    parent: Required. The parent resource name. Format:
      organizations/{organization_id}, folders/{folder_id} or
      projects/{project_id}
  """

  pageSize = _messages.IntegerField(1, variant=_messages.Variant.INT32)
  pageToken = _messages.StringField(2)
  parent = _messages.StringField(3, required=True)


class EssentialcontactsFoldersContactsPatchRequest(_messages.Message):
  r"""A EssentialcontactsFoldersContactsPatchRequest object.

  Fields:
    googleCloudEssentialcontactsV1beta1Contact: A
      GoogleCloudEssentialcontactsV1beta1Contact resource to be passed as the
      request body.
    name: Output only. The identifier for the contact. Format:
      {resource_type}/{resource_id}/contacts/{contact_id}
    updateMask: Optional. The update mask applied to the resource. For the
      `FieldMask` definition, see https://developers.google.com/protocol-
      buffers/docs/reference/google.protobuf#fieldmask
  """

  googleCloudEssentialcontactsV1beta1Contact = _messages.MessageField('GoogleCloudEssentialcontactsV1beta1Contact', 1)
  name = _messages.StringField(2, required=True)
  updateMask = _messages.StringField(3)


class EssentialcontactsFoldersContactsSendTestMessageRequest(_messages.Message):
  r"""A EssentialcontactsFoldersContactsSendTestMessageRequest object.

  Fields:
    googleCloudEssentialcontactsV1beta1SendTestMessageRequest: A
      GoogleCloudEssentialcontactsV1beta1SendTestMessageRequest resource to be
      passed as the request body.
    resource: Required. The name of the resource to send the test message for.
      All contacts must either be set directly on this resource or inherited
      from another resource that is an ancestor of this one. Format:
      organizations/{organization_id}, folders/{folder_id} or
      projects/{project_id}
  """

  googleCloudEssentialcontactsV1beta1SendTestMessageRequest = _messages.MessageField('GoogleCloudEssentialcontactsV1beta1SendTestMessageRequest', 1)
  resource = _messages.StringField(2, required=True)


class EssentialcontactsOrganizationsContactsComputeRequest(_messages.Message):
  r"""A EssentialcontactsOrganizationsContactsComputeRequest object.

  Enums:
    NotificationCategoriesValueValuesEnum: The categories of notifications to
      compute contacts for. If ALL is included in this list, contacts
      subscribed to any notification category will be returned.

  Fields:
    notificationCategories: The categories of notifications to compute
      contacts for. If ALL is included in this list, contacts subscribed to
      any notification category will be returned.
    pageSize: Optional. The maximum number of results to return from this
      request. Non-positive values are ignored. The presence of
      `next_page_token` in the response indicates that more results might be
      available. If not specified, the default page_size is 100.
    pageToken: Optional. If present, retrieves the next batch of results from
      the preceding call to this method. `page_token` must be the value of
      `next_page_token` from the previous response. The values of other method
      parameters should be identical to those in the previous call.
    parent: Required. The name of the resource to compute contacts for.
      Format: organizations/{organization_id}, folders/{folder_id} or
      projects/{project_id}
  """

  class NotificationCategoriesValueValuesEnum(_messages.Enum):
    r"""The categories of notifications to compute contacts for. If ALL is
    included in this list, contacts subscribed to any notification category
    will be returned.

    Values:
      NOTIFICATION_CATEGORY_UNSPECIFIED: Notification category is unrecognized
        or unspecified.
      ALL: All notifications related to the resource, including notifications
        pertaining to categories added in the future.
      SUSPENSION: Notifications related to imminent account suspension.
      SECURITY: Notifications related to security/privacy incidents,
        notifications, and vulnerabilities.
      TECHNICAL: Notifications related to technical events and issues such as
        outages, errors, or bugs.
      BILLING: Notifications related to billing and payments notifications,
        price updates, errors, or credits.
      LEGAL: Notifications related to enforcement actions, regulatory
        compliance, or government notices.
      PRODUCT_UPDATES: Notifications related to new versions, product terms
        updates, or deprecations.
      TECHNICAL_INCIDENTS: Child category of TECHNICAL. If assigned, technical
        incident notifications will go to these contacts instead of TECHNICAL.
    """
    NOTIFICATION_CATEGORY_UNSPECIFIED = 0
    ALL = 1
    SUSPENSION = 2
    SECURITY = 3
    TECHNICAL = 4
    BILLING = 5
    LEGAL = 6
    PRODUCT_UPDATES = 7
    TECHNICAL_INCIDENTS = 8

  notificationCategories = _messages.EnumField('NotificationCategoriesValueValuesEnum', 1, repeated=True)
  pageSize = _messages.IntegerField(2, variant=_messages.Variant.INT32)
  pageToken = _messages.StringField(3)
  parent = _messages.StringField(4, required=True)


class EssentialcontactsOrganizationsContactsCreateRequest(_messages.Message):
  r"""A EssentialcontactsOrganizationsContactsCreateRequest object.

  Fields:
    googleCloudEssentialcontactsV1beta1Contact: A
      GoogleCloudEssentialcontactsV1beta1Contact resource to be passed as the
      request body.
    parent: Required. The resource to save this contact for. Format:
      organizations/{organization_id}, folders/{folder_id} or
      projects/{project_id}
  """

  googleCloudEssentialcontactsV1beta1Contact = _messages.MessageField('GoogleCloudEssentialcontactsV1beta1Contact', 1)
  parent = _messages.StringField(2, required=True)


class EssentialcontactsOrganizationsContactsDeleteRequest(_messages.Message):
  r"""A EssentialcontactsOrganizationsContactsDeleteRequest object.

  Fields:
    name: Required. The name of the contact to delete. Format:
      organizations/{organization_id}/contacts/{contact_id},
      folders/{folder_id}/contacts/{contact_id} or
      projects/{project_id}/contacts/{contact_id}
  """

  name = _messages.StringField(1, required=True)


class EssentialcontactsOrganizationsContactsGetRequest(_messages.Message):
  r"""A EssentialcontactsOrganizationsContactsGetRequest object.

  Fields:
    name: Required. The name of the contact to retrieve. Format:
      organizations/{organization_id}/contacts/{contact_id},
      folders/{folder_id}/contacts/{contact_id} or
      projects/{project_id}/contacts/{contact_id}
  """

  name = _messages.StringField(1, required=True)


class EssentialcontactsOrganizationsContactsListRequest(_messages.Message):
  r"""A EssentialcontactsOrganizationsContactsListRequest object.

  Fields:
    pageSize: Optional. The maximum number of results to return from this
      request. Non-positive values are ignored. The presence of
      `next_page_token` in the response indicates that more results might be
      available. If not specified, the default page_size is 100.
    pageToken: Optional. If present, retrieves the next batch of results from
      the preceding call to this method. `page_token` must be the value of
      `next_page_token` from the previous response. The values of other method
      parameters should be identical to those in the previous call.
    parent: Required. The parent resource name. Format:
      organizations/{organization_id}, folders/{folder_id} or
      projects/{project_id}
  """

  pageSize = _messages.IntegerField(1, variant=_messages.Variant.INT32)
  pageToken = _messages.StringField(2)
  parent = _messages.StringField(3, required=True)


class EssentialcontactsOrganizationsContactsPatchRequest(_messages.Message):
  r"""A EssentialcontactsOrganizationsContactsPatchRequest object.

  Fields:
    googleCloudEssentialcontactsV1beta1Contact: A
      GoogleCloudEssentialcontactsV1beta1Contact resource to be passed as the
      request body.
    name: Output only. The identifier for the contact. Format:
      {resource_type}/{resource_id}/contacts/{contact_id}
    updateMask: Optional. The update mask applied to the resource. For the
      `FieldMask` definition, see https://developers.google.com/protocol-
      buffers/docs/reference/google.protobuf#fieldmask
  """

  googleCloudEssentialcontactsV1beta1Contact = _messages.MessageField('GoogleCloudEssentialcontactsV1beta1Contact', 1)
  name = _messages.StringField(2, required=True)
  updateMask = _messages.StringField(3)


class EssentialcontactsOrganizationsContactsSendTestMessageRequest(_messages.Message):
  r"""A EssentialcontactsOrganizationsContactsSendTestMessageRequest object.

  Fields:
    googleCloudEssentialcontactsV1beta1SendTestMessageRequest: A
      GoogleCloudEssentialcontactsV1beta1SendTestMessageRequest resource to be
      passed as the request body.
    resource: Required. The name of the resource to send the test message for.
      All contacts must either be set directly on this resource or inherited
      from another resource that is an ancestor of this one. Format:
      organizations/{organization_id}, folders/{folder_id} or
      projects/{project_id}
  """

  googleCloudEssentialcontactsV1beta1SendTestMessageRequest = _messages.MessageField('GoogleCloudEssentialcontactsV1beta1SendTestMessageRequest', 1)
  resource = _messages.StringField(2, required=True)


class EssentialcontactsProjectsContactsComputeRequest(_messages.Message):
  r"""A EssentialcontactsProjectsContactsComputeRequest object.

  Enums:
    NotificationCategoriesValueValuesEnum: The categories of notifications to
      compute contacts for. If ALL is included in this list, contacts
      subscribed to any notification category will be returned.

  Fields:
    notificationCategories: The categories of notifications to compute
      contacts for. If ALL is included in this list, contacts subscribed to
      any notification category will be returned.
    pageSize: Optional. The maximum number of results to return from this
      request. Non-positive values are ignored. The presence of
      `next_page_token` in the response indicates that more results might be
      available. If not specified, the default page_size is 100.
    pageToken: Optional. If present, retrieves the next batch of results from
      the preceding call to this method. `page_token` must be the value of
      `next_page_token` from the previous response. The values of other method
      parameters should be identical to those in the previous call.
    parent: Required. The name of the resource to compute contacts for.
      Format: organizations/{organization_id}, folders/{folder_id} or
      projects/{project_id}
  """

  class NotificationCategoriesValueValuesEnum(_messages.Enum):
    r"""The categories of notifications to compute contacts for. If ALL is
    included in this list, contacts subscribed to any notification category
    will be returned.

    Values:
      NOTIFICATION_CATEGORY_UNSPECIFIED: Notification category is unrecognized
        or unspecified.
      ALL: All notifications related to the resource, including notifications
        pertaining to categories added in the future.
      SUSPENSION: Notifications related to imminent account suspension.
      SECURITY: Notifications related to security/privacy incidents,
        notifications, and vulnerabilities.
      TECHNICAL: Notifications related to technical events and issues such as
        outages, errors, or bugs.
      BILLING: Notifications related to billing and payments notifications,
        price updates, errors, or credits.
      LEGAL: Notifications related to enforcement actions, regulatory
        compliance, or government notices.
      PRODUCT_UPDATES: Notifications related to new versions, product terms
        updates, or deprecations.
      TECHNICAL_INCIDENTS: Child category of TECHNICAL. If assigned, technical
        incident notifications will go to these contacts instead of TECHNICAL.
    """
    NOTIFICATION_CATEGORY_UNSPECIFIED = 0
    ALL = 1
    SUSPENSION = 2
    SECURITY = 3
    TECHNICAL = 4
    BILLING = 5
    LEGAL = 6
    PRODUCT_UPDATES = 7
    TECHNICAL_INCIDENTS = 8

  notificationCategories = _messages.EnumField('NotificationCategoriesValueValuesEnum', 1, repeated=True)
  pageSize = _messages.IntegerField(2, variant=_messages.Variant.INT32)
  pageToken = _messages.StringField(3)
  parent = _messages.StringField(4, required=True)


class EssentialcontactsProjectsContactsCreateRequest(_messages.Message):
  r"""A EssentialcontactsProjectsContactsCreateRequest object.

  Fields:
    googleCloudEssentialcontactsV1beta1Contact: A
      GoogleCloudEssentialcontactsV1beta1Contact resource to be passed as the
      request body.
    parent: Required. The resource to save this contact for. Format:
      organizations/{organization_id}, folders/{folder_id} or
      projects/{project_id}
  """

  googleCloudEssentialcontactsV1beta1Contact = _messages.MessageField('GoogleCloudEssentialcontactsV1beta1Contact', 1)
  parent = _messages.StringField(2, required=True)


class EssentialcontactsProjectsContactsDeleteRequest(_messages.Message):
  r"""A EssentialcontactsProjectsContactsDeleteRequest object.

  Fields:
    name: Required. The name of the contact to delete. Format:
      organizations/{organization_id}/contacts/{contact_id},
      folders/{folder_id}/contacts/{contact_id} or
      projects/{project_id}/contacts/{contact_id}
  """

  name = _messages.StringField(1, required=True)


class EssentialcontactsProjectsContactsGetRequest(_messages.Message):
  r"""A EssentialcontactsProjectsContactsGetRequest object.

  Fields:
    name: Required. The name of the contact to retrieve. Format:
      organizations/{organization_id}/contacts/{contact_id},
      folders/{folder_id}/contacts/{contact_id} or
      projects/{project_id}/contacts/{contact_id}
  """

  name = _messages.StringField(1, required=True)


class EssentialcontactsProjectsContactsListRequest(_messages.Message):
  r"""A EssentialcontactsProjectsContactsListRequest object.

  Fields:
    pageSize: Optional. The maximum number of results to return from this
      request. Non-positive values are ignored. The presence of
      `next_page_token` in the response indicates that more results might be
      available. If not specified, the default page_size is 100.
    pageToken: Optional. If present, retrieves the next batch of results from
      the preceding call to this method. `page_token` must be the value of
      `next_page_token` from the previous response. The values of other method
      parameters should be identical to those in the previous call.
    parent: Required. The parent resource name. Format:
      organizations/{organization_id}, folders/{folder_id} or
      projects/{project_id}
  """

  pageSize = _messages.IntegerField(1, variant=_messages.Variant.INT32)
  pageToken = _messages.StringField(2)
  parent = _messages.StringField(3, required=True)


class EssentialcontactsProjectsContactsPatchRequest(_messages.Message):
  r"""A EssentialcontactsProjectsContactsPatchRequest object.

  Fields:
    googleCloudEssentialcontactsV1beta1Contact: A
      GoogleCloudEssentialcontactsV1beta1Contact resource to be passed as the
      request body.
    name: Output only. The identifier for the contact. Format:
      {resource_type}/{resource_id}/contacts/{contact_id}
    updateMask: Optional. The update mask applied to the resource. For the
      `FieldMask` definition, see https://developers.google.com/protocol-
      buffers/docs/reference/google.protobuf#fieldmask
  """

  googleCloudEssentialcontactsV1beta1Contact = _messages.MessageField('GoogleCloudEssentialcontactsV1beta1Contact', 1)
  name = _messages.StringField(2, required=True)
  updateMask = _messages.StringField(3)


class EssentialcontactsProjectsContactsSendTestMessageRequest(_messages.Message):
  r"""A EssentialcontactsProjectsContactsSendTestMessageRequest object.

  Fields:
    googleCloudEssentialcontactsV1beta1SendTestMessageRequest: A
      GoogleCloudEssentialcontactsV1beta1SendTestMessageRequest resource to be
      passed as the request body.
    resource: Required. The name of the resource to send the test message for.
      All contacts must either be set directly on this resource or inherited
      from another resource that is an ancestor of this one. Format:
      organizations/{organization_id}, folders/{folder_id} or
      projects/{project_id}
  """

  googleCloudEssentialcontactsV1beta1SendTestMessageRequest = _messages.MessageField('GoogleCloudEssentialcontactsV1beta1SendTestMessageRequest', 1)
  resource = _messages.StringField(2, required=True)


class GoogleCloudEssentialcontactsV1beta1ComputeContactsResponse(_messages.Message):
  r"""Response message for the ComputeContacts method.

  Fields:
    contacts: All contacts for the resource that are subscribed to the
      specified notification categories, including contacts inherited from any
      parent resources.
    nextPageToken: If there are more results than those appearing in this
      response, then `next_page_token` is included. To get the next set of
      results, call this method again using the value of `next_page_token` as
      `page_token` and the rest of the parameters the same as the original
      request.
  """

  contacts = _messages.MessageField('GoogleCloudEssentialcontactsV1beta1Contact', 1, repeated=True)
  nextPageToken = _messages.StringField(2)


class GoogleCloudEssentialcontactsV1beta1Contact(_messages.Message):
  r"""A contact that will receive notifications from Google Cloud.

  Enums:
    NotificationCategorySubscriptionsValueListEntryValuesEnum:
    ValidationStateValueValuesEnum: Output only. The validity of the contact.
      A contact is considered valid if it is the correct recipient for
      notifications for a particular resource.

  Fields:
    email: Required. The email address to send notifications to. The email
      address does not need to be a Google Account.
    languageTag: Required. The preferred language for notifications, as a ISO
      639-1 language code. See [Supported
      languages](https://cloud.google.com/resource-manager/docs/managing-
      notification-contacts#supported-languages) for a list of supported
      languages.
    name: Output only. The identifier for the contact. Format:
      {resource_type}/{resource_id}/contacts/{contact_id}
    notificationCategorySubscriptions: Required. The categories of
      notifications that the contact will receive communications for.
    validateTime: Output only. The last time the validation_state was updated,
      either manually or automatically. A contact is considered stale if its
      validation state was updated more than 1 year ago.
    validationState: Output only. The validity of the contact. A contact is
      considered valid if it is the correct recipient for notifications for a
      particular resource.
  """

  class NotificationCategorySubscriptionsValueListEntryValuesEnum(_messages.Enum):
    r"""NotificationCategorySubscriptionsValueListEntryValuesEnum enum type.

    Values:
      NOTIFICATION_CATEGORY_UNSPECIFIED: Notification category is unrecognized
        or unspecified.
      ALL: All notifications related to the resource, including notifications
        pertaining to categories added in the future.
      SUSPENSION: Notifications related to imminent account suspension.
      SECURITY: Notifications related to security/privacy incidents,
        notifications, and vulnerabilities.
      TECHNICAL: Notifications related to technical events and issues such as
        outages, errors, or bugs.
      BILLING: Notifications related to billing and payments notifications,
        price updates, errors, or credits.
      LEGAL: Notifications related to enforcement actions, regulatory
        compliance, or government notices.
      PRODUCT_UPDATES: Notifications related to new versions, product terms
        updates, or deprecations.
      TECHNICAL_INCIDENTS: Child category of TECHNICAL. If assigned, technical
        incident notifications will go to these contacts instead of TECHNICAL.
    """
    NOTIFICATION_CATEGORY_UNSPECIFIED = 0
    ALL = 1
    SUSPENSION = 2
    SECURITY = 3
    TECHNICAL = 4
    BILLING = 5
    LEGAL = 6
    PRODUCT_UPDATES = 7
    TECHNICAL_INCIDENTS = 8

  class ValidationStateValueValuesEnum(_messages.Enum):
    r"""Output only. The validity of the contact. A contact is considered
    valid if it is the correct recipient for notifications for a particular
    resource.

    Values:
      VALIDATION_STATE_UNSPECIFIED: The validation state is unknown or
        unspecified.
      VALID: The contact is marked as valid. This is usually done manually by
        the contact admin. All new contacts begin in the valid state.
      INVALID: The contact is considered invalid. This may become the state if
        the contact's email is found to be unreachable.
    """
    VALIDATION_STATE_UNSPECIFIED = 0
    VALID = 1
    INVALID = 2

  email = _messages.StringField(1)
  languageTag = _messages.StringField(2)
  name = _messages.StringField(3)
  notificationCategorySubscriptions = _messages.EnumField('NotificationCategorySubscriptionsValueListEntryValuesEnum', 4, repeated=True)
  validateTime = _messages.StringField(5)
  validationState = _messages.EnumField('ValidationStateValueValuesEnum', 6)


class GoogleCloudEssentialcontactsV1beta1ListContactsResponse(_messages.Message):
  r"""Response message for the ListContacts method.

  Fields:
    contacts: The contacts for the specified resource.
    nextPageToken: If there are more results than those appearing in this
      response, then `next_page_token` is included. To get the next set of
      results, call this method again using the value of `next_page_token` as
      `page_token` and the rest of the parameters the same as the original
      request.
  """

  contacts = _messages.MessageField('GoogleCloudEssentialcontactsV1beta1Contact', 1, repeated=True)
  nextPageToken = _messages.StringField(2)


class GoogleCloudEssentialcontactsV1beta1SendTestMessageRequest(_messages.Message):
  r"""Request message for the SendTestMessage method.

  Enums:
    NotificationCategoryValueValuesEnum: Required. The notification category
      to send the test message for. All contacts must be subscribed to this
      category.

  Fields:
    contacts: Required. The list of names of the contacts to send a test
      message to. Format:
      organizations/{organization_id}/contacts/{contact_id},
      folders/{folder_id}/contacts/{contact_id} or
      projects/{project_id}/contacts/{contact_id}
    notificationCategory: Required. The notification category to send the test
      message for. All contacts must be subscribed to this category.
  """

  class NotificationCategoryValueValuesEnum(_messages.Enum):
    r"""Required. The notification category to send the test message for. All
    contacts must be subscribed to this category.

    Values:
      NOTIFICATION_CATEGORY_UNSPECIFIED: Notification category is unrecognized
        or unspecified.
      ALL: All notifications related to the resource, including notifications
        pertaining to categories added in the future.
      SUSPENSION: Notifications related to imminent account suspension.
      SECURITY: Notifications related to security/privacy incidents,
        notifications, and vulnerabilities.
      TECHNICAL: Notifications related to technical events and issues such as
        outages, errors, or bugs.
      BILLING: Notifications related to billing and payments notifications,
        price updates, errors, or credits.
      LEGAL: Notifications related to enforcement actions, regulatory
        compliance, or government notices.
      PRODUCT_UPDATES: Notifications related to new versions, product terms
        updates, or deprecations.
      TECHNICAL_INCIDENTS: Child category of TECHNICAL. If assigned, technical
        incident notifications will go to these contacts instead of TECHNICAL.
    """
    NOTIFICATION_CATEGORY_UNSPECIFIED = 0
    ALL = 1
    SUSPENSION = 2
    SECURITY = 3
    TECHNICAL = 4
    BILLING = 5
    LEGAL = 6
    PRODUCT_UPDATES = 7
    TECHNICAL_INCIDENTS = 8

  contacts = _messages.StringField(1, repeated=True)
  notificationCategory = _messages.EnumField('NotificationCategoryValueValuesEnum', 2)


class GoogleProtobufEmpty(_messages.Message):
  r"""A generic empty message that you can re-use to avoid defining duplicated
  empty messages in your APIs. A typical example is to use it as the request
  or the response type of an API method. For instance: service Foo { rpc
  Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }
  """



class StandardQueryParameters(_messages.Message):
  r"""Query parameters accepted by all methods.

  Enums:
    FXgafvValueValuesEnum: V1 error format.
    AltValueValuesEnum: Data format for response.

  Fields:
    f__xgafv: V1 error format.
    access_token: OAuth access token.
    alt: Data format for response.
    callback: JSONP
    fields: Selector specifying which fields to include in a partial response.
    key: API key. Your API key identifies your project and provides you with
      API access, quota, and reports. Required unless you provide an OAuth 2.0
      token.
    oauth_token: OAuth 2.0 token for the current user.
    prettyPrint: Returns response with indentations and line breaks.
    quotaUser: Available to use for quota purposes for server-side
      applications. Can be any arbitrary string assigned to a user, but should
      not exceed 40 characters.
    trace: A tracing token of the form "token:<tokenid>" to include in api
      requests.
    uploadType: Legacy upload protocol for media (e.g. "media", "multipart").
    upload_protocol: Upload protocol for media (e.g. "raw", "multipart").
  """

  class AltValueValuesEnum(_messages.Enum):
    r"""Data format for response.

    Values:
      json: Responses with Content-Type of application/json
      media: Media download with context-dependent Content-Type
      proto: Responses with Content-Type of application/x-protobuf
    """
    json = 0
    media = 1
    proto = 2

  class FXgafvValueValuesEnum(_messages.Enum):
    r"""V1 error format.

    Values:
      _1: v1 error format
      _2: v2 error format
    """
    _1 = 0
    _2 = 1

  f__xgafv = _messages.EnumField('FXgafvValueValuesEnum', 1)
  access_token = _messages.StringField(2)
  alt = _messages.EnumField('AltValueValuesEnum', 3, default='json')
  callback = _messages.StringField(4)
  fields = _messages.StringField(5)
  key = _messages.StringField(6)
  oauth_token = _messages.StringField(7)
  prettyPrint = _messages.BooleanField(8, default=True)
  quotaUser = _messages.StringField(9)
  trace = _messages.StringField(10)
  uploadType = _messages.StringField(11)
  upload_protocol = _messages.StringField(12)


encoding.AddCustomJsonFieldMapping(
    StandardQueryParameters, 'f__xgafv', '$.xgafv')
encoding.AddCustomJsonEnumMapping(
    StandardQueryParameters.FXgafvValueValuesEnum, '_1', '1')
encoding.AddCustomJsonEnumMapping(
    StandardQueryParameters.FXgafvValueValuesEnum, '_2', '2')
