Cloud Monitoring API . projects . uptimeCheckConfigs

Instance Methods

close()

Close httplib2 connections.

create(parent, body=None, x__xgafv=None)

Creates a new Uptime check configuration.

delete(name, x__xgafv=None)

Deletes an Uptime check configuration. Note that this method will fail if the Uptime check configuration is referenced by an alert policy or other dependent configs that would be rendered invalid by the deletion.

get(name, x__xgafv=None)

Gets a single Uptime check configuration.

list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)

Lists the existing valid Uptime check configurations for the project (leaving out any invalid configurations).

list_next()

Retrieves the next page of results.

patch(name, body=None, updateMask=None, x__xgafv=None)

Updates an Uptime check configuration. You can either replace the entire configuration with a new one or replace only certain fields in the current configuration by specifying the fields to be updated via updateMask. Returns the updated configuration.

Method Details

close()
Close httplib2 connections.
create(parent, body=None, x__xgafv=None)
Creates a new Uptime check configuration.

Args:
  parent: string, Required. The project (https://cloud.google.com/monitoring/api/v3#project_name) in which to create the Uptime check. The format is: projects/[PROJECT_ID_OR_NUMBER]  (required)
  body: object, The request body.
    The object takes the form of:

{ # This message configures which resources and services to monitor for availability.
  "checkerType": "A String", # The type of checkers to use to execute the Uptime check.
  "contentMatchers": [ # The content that is expected to appear in the data returned by the target server against which the check is run. Currently, only the first entry in the content_matchers list is supported, and additional entries will be ignored. This field is optional and should only be specified if a content match is required as part of the/ Uptime check.
    { # Optional. Used to perform content matching. This allows matching based on substrings and regular expressions, together with their negations. Only the first 4 MB of an HTTP or HTTPS check's response (and the first 1 MB of a TCP check's response) are examined for purposes of content matching.
      "content": "A String", # String, regex or JSON content to match. Maximum 1024 bytes. An empty content string indicates no content matching is to be performed.
      "jsonPathMatcher": { # Information needed to perform a JSONPath content match. Used for ContentMatcherOption::MATCHES_JSON_PATH and ContentMatcherOption::NOT_MATCHES_JSON_PATH. # Matcher information for MATCHES_JSON_PATH and NOT_MATCHES_JSON_PATH
        "jsonMatcher": "A String", # The type of JSONPath match that will be applied to the JSON output (ContentMatcher.content)
        "jsonPath": "A String", # JSONPath within the response output pointing to the expected ContentMatcher::content to match against.
      },
      "matcher": "A String", # The type of content matcher that will be applied to the server output, compared to the content string when the check is run.
    },
  ],
  "displayName": "A String", # A human-friendly name for the Uptime check configuration. The display name should be unique within a Cloud Monitoring Workspace in order to make it easier to identify; however, uniqueness is not enforced. Required.
  "httpCheck": { # Information involved in an HTTP/HTTPS Uptime check request. # Contains information needed to make an HTTP or HTTPS check.
    "acceptedResponseStatusCodes": [ # If present, the check will only pass if the HTTP response status code is in this set of status codes. If empty, the HTTP status code will only pass if the HTTP status code is 200-299.
      { # A status to accept. Either a status code class like "2xx", or an integer status code like "200".
        "statusClass": "A String", # A class of status codes to accept.
        "statusValue": 42, # A status code to accept.
      },
    ],
    "authInfo": { # The authentication parameters to provide to the specified resource or URL that requires a username and password. Currently, only Basic HTTP authentication (https://tools.ietf.org/html/rfc7617) is supported in Uptime checks. # The authentication information. Optional when creating an HTTP check; defaults to empty. Do not set both auth_method and auth_info.
      "password": "A String", # The password to use when authenticating with the HTTP server.
      "username": "A String", # The username to use when authenticating with the HTTP server.
    },
    "body": "A String", # The request body associated with the HTTP POST request. If content_type is URL_ENCODED, the body passed in must be URL-encoded. Users can provide a Content-Length header via the headers field or the API will do so. If the request_method is GET and body is not empty, the API will return an error. The maximum byte size is 1 megabyte.Note: If client libraries aren't used (which performs the conversion automatically) base64 encode your body data since the field is of bytes type.
    "contentType": "A String", # The content type header to use for the check. The following configurations result in errors: 1. Content type is specified in both the headers field and the content_type field. 2. Request method is GET and content_type is not TYPE_UNSPECIFIED 3. Request method is POST and content_type is TYPE_UNSPECIFIED. 4. Request method is POST and a "Content-Type" header is provided via headers field. The content_type field should be used instead.
    "customContentType": "A String", # A user provided content type header to use for the check. The invalid configurations outlined in the content_type field apply to custom_content_type, as well as the following: 1. content_type is URL_ENCODED and custom_content_type is set. 2. content_type is USER_PROVIDED and custom_content_type is not set.
    "headers": { # The list of headers to send as part of the Uptime check request. If two headers have the same key and different values, they should be entered as a single header, with the value being a comma-separated list of all the desired values as described at https://www.w3.org/Protocols/rfc2616/rfc2616.txt (page 31). Entering two separate headers with the same key in a Create call will cause the first to be overwritten by the second. The maximum number of headers allowed is 100.
      "a_key": "A String",
    },
    "maskHeaders": True or False, # Boolean specifying whether to encrypt the header information. Encryption should be specified for any headers related to authentication that you do not wish to be seen when retrieving the configuration. The server will be responsible for encrypting the headers. On Get/List calls, if mask_headers is set to true then the headers will be obscured with ******.
    "path": "A String", # Optional (defaults to "/"). The path to the page against which to run the check. Will be combined with the host (specified within the monitored_resource) and port to construct the full URL. If the provided path does not begin with "/", a "/" will be prepended automatically.
    "pingConfig": { # Information involved in sending ICMP pings alongside public HTTP/TCP checks. For HTTP, the pings are performed for each part of the redirect chain. # Contains information needed to add pings to an HTTP check.
      "pingsCount": 42, # Number of ICMP pings. A maximum of 3 ICMP pings is currently supported.
    },
    "port": 42, # Optional (defaults to 80 when use_ssl is false, and 443 when use_ssl is true). The TCP port on the HTTP server against which to run the check. Will be combined with host (specified within the monitored_resource) and path to construct the full URL.
    "requestMethod": "A String", # The HTTP request method to use for the check. If set to METHOD_UNSPECIFIED then request_method defaults to GET.
    "serviceAgentAuthentication": { # Contains information needed for generating either an OpenID Connect token (https://developers.google.com/identity/protocols/OpenIDConnect) or OAuth token (https://developers.google.com/identity/protocols/oauth2). The token will be generated for the Monitoring service agent service account. # If specified, Uptime will generate and attach an OIDC JWT token for the Monitoring service agent service account as an Authorization header in the HTTP request when probing.
      "type": "A String", # Type of authentication.
    },
    "useSsl": True or False, # If true, use HTTPS instead of HTTP to run the check.
    "validateSsl": True or False, # Boolean specifying whether to include SSL certificate validation as a part of the Uptime check. Only applies to checks where monitored_resource is set to uptime_url. If use_ssl is false, setting validate_ssl to true has no effect.
  },
  "internalCheckers": [ # The internal checkers that this check will egress from. If is_internal is true and this list is empty, the check will egress from all the InternalCheckers configured for the project that owns this UptimeCheckConfig.
    { # An internal checker allows Uptime checks to run on private/internal GCP resources.
      "displayName": "A String", # The checker's human-readable name. The display name should be unique within a Cloud Monitoring Metrics Scope in order to make it easier to identify; however, uniqueness is not enforced.
      "gcpZone": "A String", # The GCP zone the Uptime check should egress from. Only respected for internal Uptime checks, where internal_network is specified.
      "name": "A String", # A unique resource name for this InternalChecker. The format is: projects/[PROJECT_ID_OR_NUMBER]/internalCheckers/[INTERNAL_CHECKER_ID] [PROJECT_ID_OR_NUMBER] is the Cloud Monitoring Metrics Scope project for the Uptime check config associated with the internal checker.
      "network": "A String", # The GCP VPC network (https://cloud.google.com/vpc/docs/vpc) where the internal resource lives (ex: "default").
      "peerProjectId": "A String", # The GCP project ID where the internal checker lives. Not necessary the same as the Metrics Scope project.
      "state": "A String", # The current operational state of the internal checker.
    },
  ],
  "isInternal": True or False, # If this is true, then checks are made only from the 'internal_checkers'. If it is false, then checks are made only from the 'selected_regions'. It is an error to provide 'selected_regions' when is_internal is true, or to provide 'internal_checkers' when is_internal is false.
  "monitoredResource": { # An object representing a resource that can be used for monitoring, logging, billing, or other purposes. Examples include virtual machine instances, databases, and storage devices such as disks. The type field identifies a MonitoredResourceDescriptor object that describes the resource's schema. Information in the labels field identifies the actual resource and its attributes according to the schema. For example, a particular Compute Engine VM instance could be represented by the following object, because the MonitoredResourceDescriptor for "gce_instance" has labels "project_id", "instance_id" and "zone": { "type": "gce_instance", "labels": { "project_id": "my-project", "instance_id": "12345678901234", "zone": "us-central1-a" }} # The monitored resource (https://cloud.google.com/monitoring/api/resources) associated with the configuration. The following monitored resource types are valid for this field: uptime_url, gce_instance, gae_app, aws_ec2_instance, aws_elb_load_balancer k8s_service servicedirectory_service cloud_run_revision
    "labels": { # Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels "project_id", "instance_id", and "zone".
      "a_key": "A String",
    },
    "type": "A String", # Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance. For a list of types, see Monitoring resource types (https://cloud.google.com/monitoring/api/resources) and Logging resource types (https://cloud.google.com/logging/docs/api/v2/resource-list).
  },
  "name": "A String", # Identifier. A unique resource name for this Uptime check configuration. The format is: projects/[PROJECT_ID_OR_NUMBER]/uptimeCheckConfigs/[UPTIME_CHECK_ID] [PROJECT_ID_OR_NUMBER] is the Workspace host project associated with the Uptime check.This field should be omitted when creating the Uptime check configuration; on create, the resource name is assigned by the server and included in the response.
  "period": "A String", # How often, in seconds, the Uptime check is performed. Currently, the only supported values are 60s (1 minute), 300s (5 minutes), 600s (10 minutes), and 900s (15 minutes). Optional, defaults to 60s.
  "resourceGroup": { # The resource submessage for group checks. It can be used instead of a monitored resource, when multiple resources are being monitored. # The group resource associated with the configuration.
    "groupId": "A String", # The group of resources being monitored. Should be only the [GROUP_ID], and not the full-path projects/[PROJECT_ID_OR_NUMBER]/groups/[GROUP_ID].
    "resourceType": "A String", # The resource type of the group members.
  },
  "selectedRegions": [ # The list of regions from which the check will be run. Some regions contain one location, and others contain more than one. If this field is specified, enough regions must be provided to include a minimum of 3 locations. Not specifying this field will result in Uptime checks running from all available regions.
    "A String",
  ],
  "syntheticMonitor": { # Describes a Synthetic Monitor to be invoked by Uptime. # Specifies a Synthetic Monitor to invoke.
    "cloudFunctionV2": { # A Synthetic Monitor deployed to a Cloud Functions V2 instance. # Target a Synthetic Monitor GCFv2 instance.
      "cloudRunRevision": { # An object representing a resource that can be used for monitoring, logging, billing, or other purposes. Examples include virtual machine instances, databases, and storage devices such as disks. The type field identifies a MonitoredResourceDescriptor object that describes the resource's schema. Information in the labels field identifies the actual resource and its attributes according to the schema. For example, a particular Compute Engine VM instance could be represented by the following object, because the MonitoredResourceDescriptor for "gce_instance" has labels "project_id", "instance_id" and "zone": { "type": "gce_instance", "labels": { "project_id": "my-project", "instance_id": "12345678901234", "zone": "us-central1-a" }} # Output only. The cloud_run_revision Monitored Resource associated with the GCFv2. The Synthetic Monitor execution results (metrics, logs, and spans) are reported against this Monitored Resource. This field is output only.
        "labels": { # Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels "project_id", "instance_id", and "zone".
          "a_key": "A String",
        },
        "type": "A String", # Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance. For a list of types, see Monitoring resource types (https://cloud.google.com/monitoring/api/resources) and Logging resource types (https://cloud.google.com/logging/docs/api/v2/resource-list).
      },
      "name": "A String", # Required. Fully qualified GCFv2 resource name i.e. projects/{project}/locations/{location}/functions/{function} Required.
    },
  },
  "tcpCheck": { # Information required for a TCP Uptime check request. # Contains information needed to make a TCP check.
    "pingConfig": { # Information involved in sending ICMP pings alongside public HTTP/TCP checks. For HTTP, the pings are performed for each part of the redirect chain. # Contains information needed to add pings to a TCP check.
      "pingsCount": 42, # Number of ICMP pings. A maximum of 3 ICMP pings is currently supported.
    },
    "port": 42, # The TCP port on the server against which to run the check. Will be combined with host (specified within the monitored_resource) to construct the full URL. Required.
  },
  "timeout": "A String", # The maximum amount of time to wait for the request to complete (must be between 1 and 60 seconds). Required.
  "userLabels": { # User-supplied key/value data to be used for organizing and identifying the UptimeCheckConfig objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
    "a_key": "A String",
  },
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This message configures which resources and services to monitor for availability.
  "checkerType": "A String", # The type of checkers to use to execute the Uptime check.
  "contentMatchers": [ # The content that is expected to appear in the data returned by the target server against which the check is run. Currently, only the first entry in the content_matchers list is supported, and additional entries will be ignored. This field is optional and should only be specified if a content match is required as part of the/ Uptime check.
    { # Optional. Used to perform content matching. This allows matching based on substrings and regular expressions, together with their negations. Only the first 4 MB of an HTTP or HTTPS check's response (and the first 1 MB of a TCP check's response) are examined for purposes of content matching.
      "content": "A String", # String, regex or JSON content to match. Maximum 1024 bytes. An empty content string indicates no content matching is to be performed.
      "jsonPathMatcher": { # Information needed to perform a JSONPath content match. Used for ContentMatcherOption::MATCHES_JSON_PATH and ContentMatcherOption::NOT_MATCHES_JSON_PATH. # Matcher information for MATCHES_JSON_PATH and NOT_MATCHES_JSON_PATH
        "jsonMatcher": "A String", # The type of JSONPath match that will be applied to the JSON output (ContentMatcher.content)
        "jsonPath": "A String", # JSONPath within the response output pointing to the expected ContentMatcher::content to match against.
      },
      "matcher": "A String", # The type of content matcher that will be applied to the server output, compared to the content string when the check is run.
    },
  ],
  "displayName": "A String", # A human-friendly name for the Uptime check configuration. The display name should be unique within a Cloud Monitoring Workspace in order to make it easier to identify; however, uniqueness is not enforced. Required.
  "httpCheck": { # Information involved in an HTTP/HTTPS Uptime check request. # Contains information needed to make an HTTP or HTTPS check.
    "acceptedResponseStatusCodes": [ # If present, the check will only pass if the HTTP response status code is in this set of status codes. If empty, the HTTP status code will only pass if the HTTP status code is 200-299.
      { # A status to accept. Either a status code class like "2xx", or an integer status code like "200".
        "statusClass": "A String", # A class of status codes to accept.
        "statusValue": 42, # A status code to accept.
      },
    ],
    "authInfo": { # The authentication parameters to provide to the specified resource or URL that requires a username and password. Currently, only Basic HTTP authentication (https://tools.ietf.org/html/rfc7617) is supported in Uptime checks. # The authentication information. Optional when creating an HTTP check; defaults to empty. Do not set both auth_method and auth_info.
      "password": "A String", # The password to use when authenticating with the HTTP server.
      "username": "A String", # The username to use when authenticating with the HTTP server.
    },
    "body": "A String", # The request body associated with the HTTP POST request. If content_type is URL_ENCODED, the body passed in must be URL-encoded. Users can provide a Content-Length header via the headers field or the API will do so. If the request_method is GET and body is not empty, the API will return an error. The maximum byte size is 1 megabyte.Note: If client libraries aren't used (which performs the conversion automatically) base64 encode your body data since the field is of bytes type.
    "contentType": "A String", # The content type header to use for the check. The following configurations result in errors: 1. Content type is specified in both the headers field and the content_type field. 2. Request method is GET and content_type is not TYPE_UNSPECIFIED 3. Request method is POST and content_type is TYPE_UNSPECIFIED. 4. Request method is POST and a "Content-Type" header is provided via headers field. The content_type field should be used instead.
    "customContentType": "A String", # A user provided content type header to use for the check. The invalid configurations outlined in the content_type field apply to custom_content_type, as well as the following: 1. content_type is URL_ENCODED and custom_content_type is set. 2. content_type is USER_PROVIDED and custom_content_type is not set.
    "headers": { # The list of headers to send as part of the Uptime check request. If two headers have the same key and different values, they should be entered as a single header, with the value being a comma-separated list of all the desired values as described at https://www.w3.org/Protocols/rfc2616/rfc2616.txt (page 31). Entering two separate headers with the same key in a Create call will cause the first to be overwritten by the second. The maximum number of headers allowed is 100.
      "a_key": "A String",
    },
    "maskHeaders": True or False, # Boolean specifying whether to encrypt the header information. Encryption should be specified for any headers related to authentication that you do not wish to be seen when retrieving the configuration. The server will be responsible for encrypting the headers. On Get/List calls, if mask_headers is set to true then the headers will be obscured with ******.
    "path": "A String", # Optional (defaults to "/"). The path to the page against which to run the check. Will be combined with the host (specified within the monitored_resource) and port to construct the full URL. If the provided path does not begin with "/", a "/" will be prepended automatically.
    "pingConfig": { # Information involved in sending ICMP pings alongside public HTTP/TCP checks. For HTTP, the pings are performed for each part of the redirect chain. # Contains information needed to add pings to an HTTP check.
      "pingsCount": 42, # Number of ICMP pings. A maximum of 3 ICMP pings is currently supported.
    },
    "port": 42, # Optional (defaults to 80 when use_ssl is false, and 443 when use_ssl is true). The TCP port on the HTTP server against which to run the check. Will be combined with host (specified within the monitored_resource) and path to construct the full URL.
    "requestMethod": "A String", # The HTTP request method to use for the check. If set to METHOD_UNSPECIFIED then request_method defaults to GET.
    "serviceAgentAuthentication": { # Contains information needed for generating either an OpenID Connect token (https://developers.google.com/identity/protocols/OpenIDConnect) or OAuth token (https://developers.google.com/identity/protocols/oauth2). The token will be generated for the Monitoring service agent service account. # If specified, Uptime will generate and attach an OIDC JWT token for the Monitoring service agent service account as an Authorization header in the HTTP request when probing.
      "type": "A String", # Type of authentication.
    },
    "useSsl": True or False, # If true, use HTTPS instead of HTTP to run the check.
    "validateSsl": True or False, # Boolean specifying whether to include SSL certificate validation as a part of the Uptime check. Only applies to checks where monitored_resource is set to uptime_url. If use_ssl is false, setting validate_ssl to true has no effect.
  },
  "internalCheckers": [ # The internal checkers that this check will egress from. If is_internal is true and this list is empty, the check will egress from all the InternalCheckers configured for the project that owns this UptimeCheckConfig.
    { # An internal checker allows Uptime checks to run on private/internal GCP resources.
      "displayName": "A String", # The checker's human-readable name. The display name should be unique within a Cloud Monitoring Metrics Scope in order to make it easier to identify; however, uniqueness is not enforced.
      "gcpZone": "A String", # The GCP zone the Uptime check should egress from. Only respected for internal Uptime checks, where internal_network is specified.
      "name": "A String", # A unique resource name for this InternalChecker. The format is: projects/[PROJECT_ID_OR_NUMBER]/internalCheckers/[INTERNAL_CHECKER_ID] [PROJECT_ID_OR_NUMBER] is the Cloud Monitoring Metrics Scope project for the Uptime check config associated with the internal checker.
      "network": "A String", # The GCP VPC network (https://cloud.google.com/vpc/docs/vpc) where the internal resource lives (ex: "default").
      "peerProjectId": "A String", # The GCP project ID where the internal checker lives. Not necessary the same as the Metrics Scope project.
      "state": "A String", # The current operational state of the internal checker.
    },
  ],
  "isInternal": True or False, # If this is true, then checks are made only from the 'internal_checkers'. If it is false, then checks are made only from the 'selected_regions'. It is an error to provide 'selected_regions' when is_internal is true, or to provide 'internal_checkers' when is_internal is false.
  "monitoredResource": { # An object representing a resource that can be used for monitoring, logging, billing, or other purposes. Examples include virtual machine instances, databases, and storage devices such as disks. The type field identifies a MonitoredResourceDescriptor object that describes the resource's schema. Information in the labels field identifies the actual resource and its attributes according to the schema. For example, a particular Compute Engine VM instance could be represented by the following object, because the MonitoredResourceDescriptor for "gce_instance" has labels "project_id", "instance_id" and "zone": { "type": "gce_instance", "labels": { "project_id": "my-project", "instance_id": "12345678901234", "zone": "us-central1-a" }} # The monitored resource (https://cloud.google.com/monitoring/api/resources) associated with the configuration. The following monitored resource types are valid for this field: uptime_url, gce_instance, gae_app, aws_ec2_instance, aws_elb_load_balancer k8s_service servicedirectory_service cloud_run_revision
    "labels": { # Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels "project_id", "instance_id", and "zone".
      "a_key": "A String",
    },
    "type": "A String", # Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance. For a list of types, see Monitoring resource types (https://cloud.google.com/monitoring/api/resources) and Logging resource types (https://cloud.google.com/logging/docs/api/v2/resource-list).
  },
  "name": "A String", # Identifier. A unique resource name for this Uptime check configuration. The format is: projects/[PROJECT_ID_OR_NUMBER]/uptimeCheckConfigs/[UPTIME_CHECK_ID] [PROJECT_ID_OR_NUMBER] is the Workspace host project associated with the Uptime check.This field should be omitted when creating the Uptime check configuration; on create, the resource name is assigned by the server and included in the response.
  "period": "A String", # How often, in seconds, the Uptime check is performed. Currently, the only supported values are 60s (1 minute), 300s (5 minutes), 600s (10 minutes), and 900s (15 minutes). Optional, defaults to 60s.
  "resourceGroup": { # The resource submessage for group checks. It can be used instead of a monitored resource, when multiple resources are being monitored. # The group resource associated with the configuration.
    "groupId": "A String", # The group of resources being monitored. Should be only the [GROUP_ID], and not the full-path projects/[PROJECT_ID_OR_NUMBER]/groups/[GROUP_ID].
    "resourceType": "A String", # The resource type of the group members.
  },
  "selectedRegions": [ # The list of regions from which the check will be run. Some regions contain one location, and others contain more than one. If this field is specified, enough regions must be provided to include a minimum of 3 locations. Not specifying this field will result in Uptime checks running from all available regions.
    "A String",
  ],
  "syntheticMonitor": { # Describes a Synthetic Monitor to be invoked by Uptime. # Specifies a Synthetic Monitor to invoke.
    "cloudFunctionV2": { # A Synthetic Monitor deployed to a Cloud Functions V2 instance. # Target a Synthetic Monitor GCFv2 instance.
      "cloudRunRevision": { # An object representing a resource that can be used for monitoring, logging, billing, or other purposes. Examples include virtual machine instances, databases, and storage devices such as disks. The type field identifies a MonitoredResourceDescriptor object that describes the resource's schema. Information in the labels field identifies the actual resource and its attributes according to the schema. For example, a particular Compute Engine VM instance could be represented by the following object, because the MonitoredResourceDescriptor for "gce_instance" has labels "project_id", "instance_id" and "zone": { "type": "gce_instance", "labels": { "project_id": "my-project", "instance_id": "12345678901234", "zone": "us-central1-a" }} # Output only. The cloud_run_revision Monitored Resource associated with the GCFv2. The Synthetic Monitor execution results (metrics, logs, and spans) are reported against this Monitored Resource. This field is output only.
        "labels": { # Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels "project_id", "instance_id", and "zone".
          "a_key": "A String",
        },
        "type": "A String", # Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance. For a list of types, see Monitoring resource types (https://cloud.google.com/monitoring/api/resources) and Logging resource types (https://cloud.google.com/logging/docs/api/v2/resource-list).
      },
      "name": "A String", # Required. Fully qualified GCFv2 resource name i.e. projects/{project}/locations/{location}/functions/{function} Required.
    },
  },
  "tcpCheck": { # Information required for a TCP Uptime check request. # Contains information needed to make a TCP check.
    "pingConfig": { # Information involved in sending ICMP pings alongside public HTTP/TCP checks. For HTTP, the pings are performed for each part of the redirect chain. # Contains information needed to add pings to a TCP check.
      "pingsCount": 42, # Number of ICMP pings. A maximum of 3 ICMP pings is currently supported.
    },
    "port": 42, # The TCP port on the server against which to run the check. Will be combined with host (specified within the monitored_resource) to construct the full URL. Required.
  },
  "timeout": "A String", # The maximum amount of time to wait for the request to complete (must be between 1 and 60 seconds). Required.
  "userLabels": { # User-supplied key/value data to be used for organizing and identifying the UptimeCheckConfig objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
    "a_key": "A String",
  },
}
delete(name, x__xgafv=None)
Deletes an Uptime check configuration. Note that this method will fail if the Uptime check configuration is referenced by an alert policy or other dependent configs that would be rendered invalid by the deletion.

Args:
  name: string, Required. The Uptime check configuration to delete. The format is: projects/[PROJECT_ID_OR_NUMBER]/uptimeCheckConfigs/[UPTIME_CHECK_ID]  (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # 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); }
}
get(name, x__xgafv=None)
Gets a single Uptime check configuration.

Args:
  name: string, Required. The Uptime check configuration to retrieve. The format is: projects/[PROJECT_ID_OR_NUMBER]/uptimeCheckConfigs/[UPTIME_CHECK_ID]  (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This message configures which resources and services to monitor for availability.
  "checkerType": "A String", # The type of checkers to use to execute the Uptime check.
  "contentMatchers": [ # The content that is expected to appear in the data returned by the target server against which the check is run. Currently, only the first entry in the content_matchers list is supported, and additional entries will be ignored. This field is optional and should only be specified if a content match is required as part of the/ Uptime check.
    { # Optional. Used to perform content matching. This allows matching based on substrings and regular expressions, together with their negations. Only the first 4 MB of an HTTP or HTTPS check's response (and the first 1 MB of a TCP check's response) are examined for purposes of content matching.
      "content": "A String", # String, regex or JSON content to match. Maximum 1024 bytes. An empty content string indicates no content matching is to be performed.
      "jsonPathMatcher": { # Information needed to perform a JSONPath content match. Used for ContentMatcherOption::MATCHES_JSON_PATH and ContentMatcherOption::NOT_MATCHES_JSON_PATH. # Matcher information for MATCHES_JSON_PATH and NOT_MATCHES_JSON_PATH
        "jsonMatcher": "A String", # The type of JSONPath match that will be applied to the JSON output (ContentMatcher.content)
        "jsonPath": "A String", # JSONPath within the response output pointing to the expected ContentMatcher::content to match against.
      },
      "matcher": "A String", # The type of content matcher that will be applied to the server output, compared to the content string when the check is run.
    },
  ],
  "displayName": "A String", # A human-friendly name for the Uptime check configuration. The display name should be unique within a Cloud Monitoring Workspace in order to make it easier to identify; however, uniqueness is not enforced. Required.
  "httpCheck": { # Information involved in an HTTP/HTTPS Uptime check request. # Contains information needed to make an HTTP or HTTPS check.
    "acceptedResponseStatusCodes": [ # If present, the check will only pass if the HTTP response status code is in this set of status codes. If empty, the HTTP status code will only pass if the HTTP status code is 200-299.
      { # A status to accept. Either a status code class like "2xx", or an integer status code like "200".
        "statusClass": "A String", # A class of status codes to accept.
        "statusValue": 42, # A status code to accept.
      },
    ],
    "authInfo": { # The authentication parameters to provide to the specified resource or URL that requires a username and password. Currently, only Basic HTTP authentication (https://tools.ietf.org/html/rfc7617) is supported in Uptime checks. # The authentication information. Optional when creating an HTTP check; defaults to empty. Do not set both auth_method and auth_info.
      "password": "A String", # The password to use when authenticating with the HTTP server.
      "username": "A String", # The username to use when authenticating with the HTTP server.
    },
    "body": "A String", # The request body associated with the HTTP POST request. If content_type is URL_ENCODED, the body passed in must be URL-encoded. Users can provide a Content-Length header via the headers field or the API will do so. If the request_method is GET and body is not empty, the API will return an error. The maximum byte size is 1 megabyte.Note: If client libraries aren't used (which performs the conversion automatically) base64 encode your body data since the field is of bytes type.
    "contentType": "A String", # The content type header to use for the check. The following configurations result in errors: 1. Content type is specified in both the headers field and the content_type field. 2. Request method is GET and content_type is not TYPE_UNSPECIFIED 3. Request method is POST and content_type is TYPE_UNSPECIFIED. 4. Request method is POST and a "Content-Type" header is provided via headers field. The content_type field should be used instead.
    "customContentType": "A String", # A user provided content type header to use for the check. The invalid configurations outlined in the content_type field apply to custom_content_type, as well as the following: 1. content_type is URL_ENCODED and custom_content_type is set. 2. content_type is USER_PROVIDED and custom_content_type is not set.
    "headers": { # The list of headers to send as part of the Uptime check request. If two headers have the same key and different values, they should be entered as a single header, with the value being a comma-separated list of all the desired values as described at https://www.w3.org/Protocols/rfc2616/rfc2616.txt (page 31). Entering two separate headers with the same key in a Create call will cause the first to be overwritten by the second. The maximum number of headers allowed is 100.
      "a_key": "A String",
    },
    "maskHeaders": True or False, # Boolean specifying whether to encrypt the header information. Encryption should be specified for any headers related to authentication that you do not wish to be seen when retrieving the configuration. The server will be responsible for encrypting the headers. On Get/List calls, if mask_headers is set to true then the headers will be obscured with ******.
    "path": "A String", # Optional (defaults to "/"). The path to the page against which to run the check. Will be combined with the host (specified within the monitored_resource) and port to construct the full URL. If the provided path does not begin with "/", a "/" will be prepended automatically.
    "pingConfig": { # Information involved in sending ICMP pings alongside public HTTP/TCP checks. For HTTP, the pings are performed for each part of the redirect chain. # Contains information needed to add pings to an HTTP check.
      "pingsCount": 42, # Number of ICMP pings. A maximum of 3 ICMP pings is currently supported.
    },
    "port": 42, # Optional (defaults to 80 when use_ssl is false, and 443 when use_ssl is true). The TCP port on the HTTP server against which to run the check. Will be combined with host (specified within the monitored_resource) and path to construct the full URL.
    "requestMethod": "A String", # The HTTP request method to use for the check. If set to METHOD_UNSPECIFIED then request_method defaults to GET.
    "serviceAgentAuthentication": { # Contains information needed for generating either an OpenID Connect token (https://developers.google.com/identity/protocols/OpenIDConnect) or OAuth token (https://developers.google.com/identity/protocols/oauth2). The token will be generated for the Monitoring service agent service account. # If specified, Uptime will generate and attach an OIDC JWT token for the Monitoring service agent service account as an Authorization header in the HTTP request when probing.
      "type": "A String", # Type of authentication.
    },
    "useSsl": True or False, # If true, use HTTPS instead of HTTP to run the check.
    "validateSsl": True or False, # Boolean specifying whether to include SSL certificate validation as a part of the Uptime check. Only applies to checks where monitored_resource is set to uptime_url. If use_ssl is false, setting validate_ssl to true has no effect.
  },
  "internalCheckers": [ # The internal checkers that this check will egress from. If is_internal is true and this list is empty, the check will egress from all the InternalCheckers configured for the project that owns this UptimeCheckConfig.
    { # An internal checker allows Uptime checks to run on private/internal GCP resources.
      "displayName": "A String", # The checker's human-readable name. The display name should be unique within a Cloud Monitoring Metrics Scope in order to make it easier to identify; however, uniqueness is not enforced.
      "gcpZone": "A String", # The GCP zone the Uptime check should egress from. Only respected for internal Uptime checks, where internal_network is specified.
      "name": "A String", # A unique resource name for this InternalChecker. The format is: projects/[PROJECT_ID_OR_NUMBER]/internalCheckers/[INTERNAL_CHECKER_ID] [PROJECT_ID_OR_NUMBER] is the Cloud Monitoring Metrics Scope project for the Uptime check config associated with the internal checker.
      "network": "A String", # The GCP VPC network (https://cloud.google.com/vpc/docs/vpc) where the internal resource lives (ex: "default").
      "peerProjectId": "A String", # The GCP project ID where the internal checker lives. Not necessary the same as the Metrics Scope project.
      "state": "A String", # The current operational state of the internal checker.
    },
  ],
  "isInternal": True or False, # If this is true, then checks are made only from the 'internal_checkers'. If it is false, then checks are made only from the 'selected_regions'. It is an error to provide 'selected_regions' when is_internal is true, or to provide 'internal_checkers' when is_internal is false.
  "monitoredResource": { # An object representing a resource that can be used for monitoring, logging, billing, or other purposes. Examples include virtual machine instances, databases, and storage devices such as disks. The type field identifies a MonitoredResourceDescriptor object that describes the resource's schema. Information in the labels field identifies the actual resource and its attributes according to the schema. For example, a particular Compute Engine VM instance could be represented by the following object, because the MonitoredResourceDescriptor for "gce_instance" has labels "project_id", "instance_id" and "zone": { "type": "gce_instance", "labels": { "project_id": "my-project", "instance_id": "12345678901234", "zone": "us-central1-a" }} # The monitored resource (https://cloud.google.com/monitoring/api/resources) associated with the configuration. The following monitored resource types are valid for this field: uptime_url, gce_instance, gae_app, aws_ec2_instance, aws_elb_load_balancer k8s_service servicedirectory_service cloud_run_revision
    "labels": { # Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels "project_id", "instance_id", and "zone".
      "a_key": "A String",
    },
    "type": "A String", # Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance. For a list of types, see Monitoring resource types (https://cloud.google.com/monitoring/api/resources) and Logging resource types (https://cloud.google.com/logging/docs/api/v2/resource-list).
  },
  "name": "A String", # Identifier. A unique resource name for this Uptime check configuration. The format is: projects/[PROJECT_ID_OR_NUMBER]/uptimeCheckConfigs/[UPTIME_CHECK_ID] [PROJECT_ID_OR_NUMBER] is the Workspace host project associated with the Uptime check.This field should be omitted when creating the Uptime check configuration; on create, the resource name is assigned by the server and included in the response.
  "period": "A String", # How often, in seconds, the Uptime check is performed. Currently, the only supported values are 60s (1 minute), 300s (5 minutes), 600s (10 minutes), and 900s (15 minutes). Optional, defaults to 60s.
  "resourceGroup": { # The resource submessage for group checks. It can be used instead of a monitored resource, when multiple resources are being monitored. # The group resource associated with the configuration.
    "groupId": "A String", # The group of resources being monitored. Should be only the [GROUP_ID], and not the full-path projects/[PROJECT_ID_OR_NUMBER]/groups/[GROUP_ID].
    "resourceType": "A String", # The resource type of the group members.
  },
  "selectedRegions": [ # The list of regions from which the check will be run. Some regions contain one location, and others contain more than one. If this field is specified, enough regions must be provided to include a minimum of 3 locations. Not specifying this field will result in Uptime checks running from all available regions.
    "A String",
  ],
  "syntheticMonitor": { # Describes a Synthetic Monitor to be invoked by Uptime. # Specifies a Synthetic Monitor to invoke.
    "cloudFunctionV2": { # A Synthetic Monitor deployed to a Cloud Functions V2 instance. # Target a Synthetic Monitor GCFv2 instance.
      "cloudRunRevision": { # An object representing a resource that can be used for monitoring, logging, billing, or other purposes. Examples include virtual machine instances, databases, and storage devices such as disks. The type field identifies a MonitoredResourceDescriptor object that describes the resource's schema. Information in the labels field identifies the actual resource and its attributes according to the schema. For example, a particular Compute Engine VM instance could be represented by the following object, because the MonitoredResourceDescriptor for "gce_instance" has labels "project_id", "instance_id" and "zone": { "type": "gce_instance", "labels": { "project_id": "my-project", "instance_id": "12345678901234", "zone": "us-central1-a" }} # Output only. The cloud_run_revision Monitored Resource associated with the GCFv2. The Synthetic Monitor execution results (metrics, logs, and spans) are reported against this Monitored Resource. This field is output only.
        "labels": { # Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels "project_id", "instance_id", and "zone".
          "a_key": "A String",
        },
        "type": "A String", # Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance. For a list of types, see Monitoring resource types (https://cloud.google.com/monitoring/api/resources) and Logging resource types (https://cloud.google.com/logging/docs/api/v2/resource-list).
      },
      "name": "A String", # Required. Fully qualified GCFv2 resource name i.e. projects/{project}/locations/{location}/functions/{function} Required.
    },
  },
  "tcpCheck": { # Information required for a TCP Uptime check request. # Contains information needed to make a TCP check.
    "pingConfig": { # Information involved in sending ICMP pings alongside public HTTP/TCP checks. For HTTP, the pings are performed for each part of the redirect chain. # Contains information needed to add pings to a TCP check.
      "pingsCount": 42, # Number of ICMP pings. A maximum of 3 ICMP pings is currently supported.
    },
    "port": 42, # The TCP port on the server against which to run the check. Will be combined with host (specified within the monitored_resource) to construct the full URL. Required.
  },
  "timeout": "A String", # The maximum amount of time to wait for the request to complete (must be between 1 and 60 seconds). Required.
  "userLabels": { # User-supplied key/value data to be used for organizing and identifying the UptimeCheckConfig objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
    "a_key": "A String",
  },
}
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
Lists the existing valid Uptime check configurations for the project (leaving out any invalid configurations).

Args:
  parent: string, Required. The project (https://cloud.google.com/monitoring/api/v3#project_name) whose Uptime check configurations are listed. The format is: projects/[PROJECT_ID_OR_NUMBER]  (required)
  filter: string, If provided, this field specifies the criteria that must be met by uptime checks to be included in the response.For more details, see Filtering syntax (https://cloud.google.com/monitoring/api/v3/sorting-and-filtering#filter_syntax).
  pageSize: integer, The maximum number of results to return in a single response. The server may further constrain the maximum number of results returned in a single page. If the page_size is <=0, the server will decide the number of results to be returned.
  pageToken: string, If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return more results from the previous method call.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # The protocol for the ListUptimeCheckConfigs response.
  "nextPageToken": "A String", # This field represents the pagination token to retrieve the next page of results. If the value is empty, it means no further results for the request. To retrieve the next page of results, the value of the next_page_token is passed to the subsequent List method call (in the request message's page_token field).
  "totalSize": 42, # The total number of Uptime check configurations for the project, irrespective of any pagination.
  "uptimeCheckConfigs": [ # The returned Uptime check configurations.
    { # This message configures which resources and services to monitor for availability.
      "checkerType": "A String", # The type of checkers to use to execute the Uptime check.
      "contentMatchers": [ # The content that is expected to appear in the data returned by the target server against which the check is run. Currently, only the first entry in the content_matchers list is supported, and additional entries will be ignored. This field is optional and should only be specified if a content match is required as part of the/ Uptime check.
        { # Optional. Used to perform content matching. This allows matching based on substrings and regular expressions, together with their negations. Only the first 4 MB of an HTTP or HTTPS check's response (and the first 1 MB of a TCP check's response) are examined for purposes of content matching.
          "content": "A String", # String, regex or JSON content to match. Maximum 1024 bytes. An empty content string indicates no content matching is to be performed.
          "jsonPathMatcher": { # Information needed to perform a JSONPath content match. Used for ContentMatcherOption::MATCHES_JSON_PATH and ContentMatcherOption::NOT_MATCHES_JSON_PATH. # Matcher information for MATCHES_JSON_PATH and NOT_MATCHES_JSON_PATH
            "jsonMatcher": "A String", # The type of JSONPath match that will be applied to the JSON output (ContentMatcher.content)
            "jsonPath": "A String", # JSONPath within the response output pointing to the expected ContentMatcher::content to match against.
          },
          "matcher": "A String", # The type of content matcher that will be applied to the server output, compared to the content string when the check is run.
        },
      ],
      "displayName": "A String", # A human-friendly name for the Uptime check configuration. The display name should be unique within a Cloud Monitoring Workspace in order to make it easier to identify; however, uniqueness is not enforced. Required.
      "httpCheck": { # Information involved in an HTTP/HTTPS Uptime check request. # Contains information needed to make an HTTP or HTTPS check.
        "acceptedResponseStatusCodes": [ # If present, the check will only pass if the HTTP response status code is in this set of status codes. If empty, the HTTP status code will only pass if the HTTP status code is 200-299.
          { # A status to accept. Either a status code class like "2xx", or an integer status code like "200".
            "statusClass": "A String", # A class of status codes to accept.
            "statusValue": 42, # A status code to accept.
          },
        ],
        "authInfo": { # The authentication parameters to provide to the specified resource or URL that requires a username and password. Currently, only Basic HTTP authentication (https://tools.ietf.org/html/rfc7617) is supported in Uptime checks. # The authentication information. Optional when creating an HTTP check; defaults to empty. Do not set both auth_method and auth_info.
          "password": "A String", # The password to use when authenticating with the HTTP server.
          "username": "A String", # The username to use when authenticating with the HTTP server.
        },
        "body": "A String", # The request body associated with the HTTP POST request. If content_type is URL_ENCODED, the body passed in must be URL-encoded. Users can provide a Content-Length header via the headers field or the API will do so. If the request_method is GET and body is not empty, the API will return an error. The maximum byte size is 1 megabyte.Note: If client libraries aren't used (which performs the conversion automatically) base64 encode your body data since the field is of bytes type.
        "contentType": "A String", # The content type header to use for the check. The following configurations result in errors: 1. Content type is specified in both the headers field and the content_type field. 2. Request method is GET and content_type is not TYPE_UNSPECIFIED 3. Request method is POST and content_type is TYPE_UNSPECIFIED. 4. Request method is POST and a "Content-Type" header is provided via headers field. The content_type field should be used instead.
        "customContentType": "A String", # A user provided content type header to use for the check. The invalid configurations outlined in the content_type field apply to custom_content_type, as well as the following: 1. content_type is URL_ENCODED and custom_content_type is set. 2. content_type is USER_PROVIDED and custom_content_type is not set.
        "headers": { # The list of headers to send as part of the Uptime check request. If two headers have the same key and different values, they should be entered as a single header, with the value being a comma-separated list of all the desired values as described at https://www.w3.org/Protocols/rfc2616/rfc2616.txt (page 31). Entering two separate headers with the same key in a Create call will cause the first to be overwritten by the second. The maximum number of headers allowed is 100.
          "a_key": "A String",
        },
        "maskHeaders": True or False, # Boolean specifying whether to encrypt the header information. Encryption should be specified for any headers related to authentication that you do not wish to be seen when retrieving the configuration. The server will be responsible for encrypting the headers. On Get/List calls, if mask_headers is set to true then the headers will be obscured with ******.
        "path": "A String", # Optional (defaults to "/"). The path to the page against which to run the check. Will be combined with the host (specified within the monitored_resource) and port to construct the full URL. If the provided path does not begin with "/", a "/" will be prepended automatically.
        "pingConfig": { # Information involved in sending ICMP pings alongside public HTTP/TCP checks. For HTTP, the pings are performed for each part of the redirect chain. # Contains information needed to add pings to an HTTP check.
          "pingsCount": 42, # Number of ICMP pings. A maximum of 3 ICMP pings is currently supported.
        },
        "port": 42, # Optional (defaults to 80 when use_ssl is false, and 443 when use_ssl is true). The TCP port on the HTTP server against which to run the check. Will be combined with host (specified within the monitored_resource) and path to construct the full URL.
        "requestMethod": "A String", # The HTTP request method to use for the check. If set to METHOD_UNSPECIFIED then request_method defaults to GET.
        "serviceAgentAuthentication": { # Contains information needed for generating either an OpenID Connect token (https://developers.google.com/identity/protocols/OpenIDConnect) or OAuth token (https://developers.google.com/identity/protocols/oauth2). The token will be generated for the Monitoring service agent service account. # If specified, Uptime will generate and attach an OIDC JWT token for the Monitoring service agent service account as an Authorization header in the HTTP request when probing.
          "type": "A String", # Type of authentication.
        },
        "useSsl": True or False, # If true, use HTTPS instead of HTTP to run the check.
        "validateSsl": True or False, # Boolean specifying whether to include SSL certificate validation as a part of the Uptime check. Only applies to checks where monitored_resource is set to uptime_url. If use_ssl is false, setting validate_ssl to true has no effect.
      },
      "internalCheckers": [ # The internal checkers that this check will egress from. If is_internal is true and this list is empty, the check will egress from all the InternalCheckers configured for the project that owns this UptimeCheckConfig.
        { # An internal checker allows Uptime checks to run on private/internal GCP resources.
          "displayName": "A String", # The checker's human-readable name. The display name should be unique within a Cloud Monitoring Metrics Scope in order to make it easier to identify; however, uniqueness is not enforced.
          "gcpZone": "A String", # The GCP zone the Uptime check should egress from. Only respected for internal Uptime checks, where internal_network is specified.
          "name": "A String", # A unique resource name for this InternalChecker. The format is: projects/[PROJECT_ID_OR_NUMBER]/internalCheckers/[INTERNAL_CHECKER_ID] [PROJECT_ID_OR_NUMBER] is the Cloud Monitoring Metrics Scope project for the Uptime check config associated with the internal checker.
          "network": "A String", # The GCP VPC network (https://cloud.google.com/vpc/docs/vpc) where the internal resource lives (ex: "default").
          "peerProjectId": "A String", # The GCP project ID where the internal checker lives. Not necessary the same as the Metrics Scope project.
          "state": "A String", # The current operational state of the internal checker.
        },
      ],
      "isInternal": True or False, # If this is true, then checks are made only from the 'internal_checkers'. If it is false, then checks are made only from the 'selected_regions'. It is an error to provide 'selected_regions' when is_internal is true, or to provide 'internal_checkers' when is_internal is false.
      "monitoredResource": { # An object representing a resource that can be used for monitoring, logging, billing, or other purposes. Examples include virtual machine instances, databases, and storage devices such as disks. The type field identifies a MonitoredResourceDescriptor object that describes the resource's schema. Information in the labels field identifies the actual resource and its attributes according to the schema. For example, a particular Compute Engine VM instance could be represented by the following object, because the MonitoredResourceDescriptor for "gce_instance" has labels "project_id", "instance_id" and "zone": { "type": "gce_instance", "labels": { "project_id": "my-project", "instance_id": "12345678901234", "zone": "us-central1-a" }} # The monitored resource (https://cloud.google.com/monitoring/api/resources) associated with the configuration. The following monitored resource types are valid for this field: uptime_url, gce_instance, gae_app, aws_ec2_instance, aws_elb_load_balancer k8s_service servicedirectory_service cloud_run_revision
        "labels": { # Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels "project_id", "instance_id", and "zone".
          "a_key": "A String",
        },
        "type": "A String", # Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance. For a list of types, see Monitoring resource types (https://cloud.google.com/monitoring/api/resources) and Logging resource types (https://cloud.google.com/logging/docs/api/v2/resource-list).
      },
      "name": "A String", # Identifier. A unique resource name for this Uptime check configuration. The format is: projects/[PROJECT_ID_OR_NUMBER]/uptimeCheckConfigs/[UPTIME_CHECK_ID] [PROJECT_ID_OR_NUMBER] is the Workspace host project associated with the Uptime check.This field should be omitted when creating the Uptime check configuration; on create, the resource name is assigned by the server and included in the response.
      "period": "A String", # How often, in seconds, the Uptime check is performed. Currently, the only supported values are 60s (1 minute), 300s (5 minutes), 600s (10 minutes), and 900s (15 minutes). Optional, defaults to 60s.
      "resourceGroup": { # The resource submessage for group checks. It can be used instead of a monitored resource, when multiple resources are being monitored. # The group resource associated with the configuration.
        "groupId": "A String", # The group of resources being monitored. Should be only the [GROUP_ID], and not the full-path projects/[PROJECT_ID_OR_NUMBER]/groups/[GROUP_ID].
        "resourceType": "A String", # The resource type of the group members.
      },
      "selectedRegions": [ # The list of regions from which the check will be run. Some regions contain one location, and others contain more than one. If this field is specified, enough regions must be provided to include a minimum of 3 locations. Not specifying this field will result in Uptime checks running from all available regions.
        "A String",
      ],
      "syntheticMonitor": { # Describes a Synthetic Monitor to be invoked by Uptime. # Specifies a Synthetic Monitor to invoke.
        "cloudFunctionV2": { # A Synthetic Monitor deployed to a Cloud Functions V2 instance. # Target a Synthetic Monitor GCFv2 instance.
          "cloudRunRevision": { # An object representing a resource that can be used for monitoring, logging, billing, or other purposes. Examples include virtual machine instances, databases, and storage devices such as disks. The type field identifies a MonitoredResourceDescriptor object that describes the resource's schema. Information in the labels field identifies the actual resource and its attributes according to the schema. For example, a particular Compute Engine VM instance could be represented by the following object, because the MonitoredResourceDescriptor for "gce_instance" has labels "project_id", "instance_id" and "zone": { "type": "gce_instance", "labels": { "project_id": "my-project", "instance_id": "12345678901234", "zone": "us-central1-a" }} # Output only. The cloud_run_revision Monitored Resource associated with the GCFv2. The Synthetic Monitor execution results (metrics, logs, and spans) are reported against this Monitored Resource. This field is output only.
            "labels": { # Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels "project_id", "instance_id", and "zone".
              "a_key": "A String",
            },
            "type": "A String", # Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance. For a list of types, see Monitoring resource types (https://cloud.google.com/monitoring/api/resources) and Logging resource types (https://cloud.google.com/logging/docs/api/v2/resource-list).
          },
          "name": "A String", # Required. Fully qualified GCFv2 resource name i.e. projects/{project}/locations/{location}/functions/{function} Required.
        },
      },
      "tcpCheck": { # Information required for a TCP Uptime check request. # Contains information needed to make a TCP check.
        "pingConfig": { # Information involved in sending ICMP pings alongside public HTTP/TCP checks. For HTTP, the pings are performed for each part of the redirect chain. # Contains information needed to add pings to a TCP check.
          "pingsCount": 42, # Number of ICMP pings. A maximum of 3 ICMP pings is currently supported.
        },
        "port": 42, # The TCP port on the server against which to run the check. Will be combined with host (specified within the monitored_resource) to construct the full URL. Required.
      },
      "timeout": "A String", # The maximum amount of time to wait for the request to complete (must be between 1 and 60 seconds). Required.
      "userLabels": { # User-supplied key/value data to be used for organizing and identifying the UptimeCheckConfig objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
        "a_key": "A String",
      },
    },
  ],
}
list_next()
Retrieves the next page of results.

        Args:
          previous_request: The request for the previous page. (required)
          previous_response: The response from the request for the previous page. (required)

        Returns:
          A request object that you can call 'execute()' on to request the next
          page. Returns None if there are no more items in the collection.
        
patch(name, body=None, updateMask=None, x__xgafv=None)
Updates an Uptime check configuration. You can either replace the entire configuration with a new one or replace only certain fields in the current configuration by specifying the fields to be updated via updateMask. Returns the updated configuration.

Args:
  name: string, Identifier. A unique resource name for this Uptime check configuration. The format is: projects/[PROJECT_ID_OR_NUMBER]/uptimeCheckConfigs/[UPTIME_CHECK_ID] [PROJECT_ID_OR_NUMBER] is the Workspace host project associated with the Uptime check.This field should be omitted when creating the Uptime check configuration; on create, the resource name is assigned by the server and included in the response. (required)
  body: object, The request body.
    The object takes the form of:

{ # This message configures which resources and services to monitor for availability.
  "checkerType": "A String", # The type of checkers to use to execute the Uptime check.
  "contentMatchers": [ # The content that is expected to appear in the data returned by the target server against which the check is run. Currently, only the first entry in the content_matchers list is supported, and additional entries will be ignored. This field is optional and should only be specified if a content match is required as part of the/ Uptime check.
    { # Optional. Used to perform content matching. This allows matching based on substrings and regular expressions, together with their negations. Only the first 4 MB of an HTTP or HTTPS check's response (and the first 1 MB of a TCP check's response) are examined for purposes of content matching.
      "content": "A String", # String, regex or JSON content to match. Maximum 1024 bytes. An empty content string indicates no content matching is to be performed.
      "jsonPathMatcher": { # Information needed to perform a JSONPath content match. Used for ContentMatcherOption::MATCHES_JSON_PATH and ContentMatcherOption::NOT_MATCHES_JSON_PATH. # Matcher information for MATCHES_JSON_PATH and NOT_MATCHES_JSON_PATH
        "jsonMatcher": "A String", # The type of JSONPath match that will be applied to the JSON output (ContentMatcher.content)
        "jsonPath": "A String", # JSONPath within the response output pointing to the expected ContentMatcher::content to match against.
      },
      "matcher": "A String", # The type of content matcher that will be applied to the server output, compared to the content string when the check is run.
    },
  ],
  "displayName": "A String", # A human-friendly name for the Uptime check configuration. The display name should be unique within a Cloud Monitoring Workspace in order to make it easier to identify; however, uniqueness is not enforced. Required.
  "httpCheck": { # Information involved in an HTTP/HTTPS Uptime check request. # Contains information needed to make an HTTP or HTTPS check.
    "acceptedResponseStatusCodes": [ # If present, the check will only pass if the HTTP response status code is in this set of status codes. If empty, the HTTP status code will only pass if the HTTP status code is 200-299.
      { # A status to accept. Either a status code class like "2xx", or an integer status code like "200".
        "statusClass": "A String", # A class of status codes to accept.
        "statusValue": 42, # A status code to accept.
      },
    ],
    "authInfo": { # The authentication parameters to provide to the specified resource or URL that requires a username and password. Currently, only Basic HTTP authentication (https://tools.ietf.org/html/rfc7617) is supported in Uptime checks. # The authentication information. Optional when creating an HTTP check; defaults to empty. Do not set both auth_method and auth_info.
      "password": "A String", # The password to use when authenticating with the HTTP server.
      "username": "A String", # The username to use when authenticating with the HTTP server.
    },
    "body": "A String", # The request body associated with the HTTP POST request. If content_type is URL_ENCODED, the body passed in must be URL-encoded. Users can provide a Content-Length header via the headers field or the API will do so. If the request_method is GET and body is not empty, the API will return an error. The maximum byte size is 1 megabyte.Note: If client libraries aren't used (which performs the conversion automatically) base64 encode your body data since the field is of bytes type.
    "contentType": "A String", # The content type header to use for the check. The following configurations result in errors: 1. Content type is specified in both the headers field and the content_type field. 2. Request method is GET and content_type is not TYPE_UNSPECIFIED 3. Request method is POST and content_type is TYPE_UNSPECIFIED. 4. Request method is POST and a "Content-Type" header is provided via headers field. The content_type field should be used instead.
    "customContentType": "A String", # A user provided content type header to use for the check. The invalid configurations outlined in the content_type field apply to custom_content_type, as well as the following: 1. content_type is URL_ENCODED and custom_content_type is set. 2. content_type is USER_PROVIDED and custom_content_type is not set.
    "headers": { # The list of headers to send as part of the Uptime check request. If two headers have the same key and different values, they should be entered as a single header, with the value being a comma-separated list of all the desired values as described at https://www.w3.org/Protocols/rfc2616/rfc2616.txt (page 31). Entering two separate headers with the same key in a Create call will cause the first to be overwritten by the second. The maximum number of headers allowed is 100.
      "a_key": "A String",
    },
    "maskHeaders": True or False, # Boolean specifying whether to encrypt the header information. Encryption should be specified for any headers related to authentication that you do not wish to be seen when retrieving the configuration. The server will be responsible for encrypting the headers. On Get/List calls, if mask_headers is set to true then the headers will be obscured with ******.
    "path": "A String", # Optional (defaults to "/"). The path to the page against which to run the check. Will be combined with the host (specified within the monitored_resource) and port to construct the full URL. If the provided path does not begin with "/", a "/" will be prepended automatically.
    "pingConfig": { # Information involved in sending ICMP pings alongside public HTTP/TCP checks. For HTTP, the pings are performed for each part of the redirect chain. # Contains information needed to add pings to an HTTP check.
      "pingsCount": 42, # Number of ICMP pings. A maximum of 3 ICMP pings is currently supported.
    },
    "port": 42, # Optional (defaults to 80 when use_ssl is false, and 443 when use_ssl is true). The TCP port on the HTTP server against which to run the check. Will be combined with host (specified within the monitored_resource) and path to construct the full URL.
    "requestMethod": "A String", # The HTTP request method to use for the check. If set to METHOD_UNSPECIFIED then request_method defaults to GET.
    "serviceAgentAuthentication": { # Contains information needed for generating either an OpenID Connect token (https://developers.google.com/identity/protocols/OpenIDConnect) or OAuth token (https://developers.google.com/identity/protocols/oauth2). The token will be generated for the Monitoring service agent service account. # If specified, Uptime will generate and attach an OIDC JWT token for the Monitoring service agent service account as an Authorization header in the HTTP request when probing.
      "type": "A String", # Type of authentication.
    },
    "useSsl": True or False, # If true, use HTTPS instead of HTTP to run the check.
    "validateSsl": True or False, # Boolean specifying whether to include SSL certificate validation as a part of the Uptime check. Only applies to checks where monitored_resource is set to uptime_url. If use_ssl is false, setting validate_ssl to true has no effect.
  },
  "internalCheckers": [ # The internal checkers that this check will egress from. If is_internal is true and this list is empty, the check will egress from all the InternalCheckers configured for the project that owns this UptimeCheckConfig.
    { # An internal checker allows Uptime checks to run on private/internal GCP resources.
      "displayName": "A String", # The checker's human-readable name. The display name should be unique within a Cloud Monitoring Metrics Scope in order to make it easier to identify; however, uniqueness is not enforced.
      "gcpZone": "A String", # The GCP zone the Uptime check should egress from. Only respected for internal Uptime checks, where internal_network is specified.
      "name": "A String", # A unique resource name for this InternalChecker. The format is: projects/[PROJECT_ID_OR_NUMBER]/internalCheckers/[INTERNAL_CHECKER_ID] [PROJECT_ID_OR_NUMBER] is the Cloud Monitoring Metrics Scope project for the Uptime check config associated with the internal checker.
      "network": "A String", # The GCP VPC network (https://cloud.google.com/vpc/docs/vpc) where the internal resource lives (ex: "default").
      "peerProjectId": "A String", # The GCP project ID where the internal checker lives. Not necessary the same as the Metrics Scope project.
      "state": "A String", # The current operational state of the internal checker.
    },
  ],
  "isInternal": True or False, # If this is true, then checks are made only from the 'internal_checkers'. If it is false, then checks are made only from the 'selected_regions'. It is an error to provide 'selected_regions' when is_internal is true, or to provide 'internal_checkers' when is_internal is false.
  "monitoredResource": { # An object representing a resource that can be used for monitoring, logging, billing, or other purposes. Examples include virtual machine instances, databases, and storage devices such as disks. The type field identifies a MonitoredResourceDescriptor object that describes the resource's schema. Information in the labels field identifies the actual resource and its attributes according to the schema. For example, a particular Compute Engine VM instance could be represented by the following object, because the MonitoredResourceDescriptor for "gce_instance" has labels "project_id", "instance_id" and "zone": { "type": "gce_instance", "labels": { "project_id": "my-project", "instance_id": "12345678901234", "zone": "us-central1-a" }} # The monitored resource (https://cloud.google.com/monitoring/api/resources) associated with the configuration. The following monitored resource types are valid for this field: uptime_url, gce_instance, gae_app, aws_ec2_instance, aws_elb_load_balancer k8s_service servicedirectory_service cloud_run_revision
    "labels": { # Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels "project_id", "instance_id", and "zone".
      "a_key": "A String",
    },
    "type": "A String", # Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance. For a list of types, see Monitoring resource types (https://cloud.google.com/monitoring/api/resources) and Logging resource types (https://cloud.google.com/logging/docs/api/v2/resource-list).
  },
  "name": "A String", # Identifier. A unique resource name for this Uptime check configuration. The format is: projects/[PROJECT_ID_OR_NUMBER]/uptimeCheckConfigs/[UPTIME_CHECK_ID] [PROJECT_ID_OR_NUMBER] is the Workspace host project associated with the Uptime check.This field should be omitted when creating the Uptime check configuration; on create, the resource name is assigned by the server and included in the response.
  "period": "A String", # How often, in seconds, the Uptime check is performed. Currently, the only supported values are 60s (1 minute), 300s (5 minutes), 600s (10 minutes), and 900s (15 minutes). Optional, defaults to 60s.
  "resourceGroup": { # The resource submessage for group checks. It can be used instead of a monitored resource, when multiple resources are being monitored. # The group resource associated with the configuration.
    "groupId": "A String", # The group of resources being monitored. Should be only the [GROUP_ID], and not the full-path projects/[PROJECT_ID_OR_NUMBER]/groups/[GROUP_ID].
    "resourceType": "A String", # The resource type of the group members.
  },
  "selectedRegions": [ # The list of regions from which the check will be run. Some regions contain one location, and others contain more than one. If this field is specified, enough regions must be provided to include a minimum of 3 locations. Not specifying this field will result in Uptime checks running from all available regions.
    "A String",
  ],
  "syntheticMonitor": { # Describes a Synthetic Monitor to be invoked by Uptime. # Specifies a Synthetic Monitor to invoke.
    "cloudFunctionV2": { # A Synthetic Monitor deployed to a Cloud Functions V2 instance. # Target a Synthetic Monitor GCFv2 instance.
      "cloudRunRevision": { # An object representing a resource that can be used for monitoring, logging, billing, or other purposes. Examples include virtual machine instances, databases, and storage devices such as disks. The type field identifies a MonitoredResourceDescriptor object that describes the resource's schema. Information in the labels field identifies the actual resource and its attributes according to the schema. For example, a particular Compute Engine VM instance could be represented by the following object, because the MonitoredResourceDescriptor for "gce_instance" has labels "project_id", "instance_id" and "zone": { "type": "gce_instance", "labels": { "project_id": "my-project", "instance_id": "12345678901234", "zone": "us-central1-a" }} # Output only. The cloud_run_revision Monitored Resource associated with the GCFv2. The Synthetic Monitor execution results (metrics, logs, and spans) are reported against this Monitored Resource. This field is output only.
        "labels": { # Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels "project_id", "instance_id", and "zone".
          "a_key": "A String",
        },
        "type": "A String", # Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance. For a list of types, see Monitoring resource types (https://cloud.google.com/monitoring/api/resources) and Logging resource types (https://cloud.google.com/logging/docs/api/v2/resource-list).
      },
      "name": "A String", # Required. Fully qualified GCFv2 resource name i.e. projects/{project}/locations/{location}/functions/{function} Required.
    },
  },
  "tcpCheck": { # Information required for a TCP Uptime check request. # Contains information needed to make a TCP check.
    "pingConfig": { # Information involved in sending ICMP pings alongside public HTTP/TCP checks. For HTTP, the pings are performed for each part of the redirect chain. # Contains information needed to add pings to a TCP check.
      "pingsCount": 42, # Number of ICMP pings. A maximum of 3 ICMP pings is currently supported.
    },
    "port": 42, # The TCP port on the server against which to run the check. Will be combined with host (specified within the monitored_resource) to construct the full URL. Required.
  },
  "timeout": "A String", # The maximum amount of time to wait for the request to complete (must be between 1 and 60 seconds). Required.
  "userLabels": { # User-supplied key/value data to be used for organizing and identifying the UptimeCheckConfig objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
    "a_key": "A String",
  },
}

  updateMask: string, Optional. If present, only the listed fields in the current Uptime check configuration are updated with values from the new configuration. If this field is empty, then the current configuration is completely replaced with the new configuration.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This message configures which resources and services to monitor for availability.
  "checkerType": "A String", # The type of checkers to use to execute the Uptime check.
  "contentMatchers": [ # The content that is expected to appear in the data returned by the target server against which the check is run. Currently, only the first entry in the content_matchers list is supported, and additional entries will be ignored. This field is optional and should only be specified if a content match is required as part of the/ Uptime check.
    { # Optional. Used to perform content matching. This allows matching based on substrings and regular expressions, together with their negations. Only the first 4 MB of an HTTP or HTTPS check's response (and the first 1 MB of a TCP check's response) are examined for purposes of content matching.
      "content": "A String", # String, regex or JSON content to match. Maximum 1024 bytes. An empty content string indicates no content matching is to be performed.
      "jsonPathMatcher": { # Information needed to perform a JSONPath content match. Used for ContentMatcherOption::MATCHES_JSON_PATH and ContentMatcherOption::NOT_MATCHES_JSON_PATH. # Matcher information for MATCHES_JSON_PATH and NOT_MATCHES_JSON_PATH
        "jsonMatcher": "A String", # The type of JSONPath match that will be applied to the JSON output (ContentMatcher.content)
        "jsonPath": "A String", # JSONPath within the response output pointing to the expected ContentMatcher::content to match against.
      },
      "matcher": "A String", # The type of content matcher that will be applied to the server output, compared to the content string when the check is run.
    },
  ],
  "displayName": "A String", # A human-friendly name for the Uptime check configuration. The display name should be unique within a Cloud Monitoring Workspace in order to make it easier to identify; however, uniqueness is not enforced. Required.
  "httpCheck": { # Information involved in an HTTP/HTTPS Uptime check request. # Contains information needed to make an HTTP or HTTPS check.
    "acceptedResponseStatusCodes": [ # If present, the check will only pass if the HTTP response status code is in this set of status codes. If empty, the HTTP status code will only pass if the HTTP status code is 200-299.
      { # A status to accept. Either a status code class like "2xx", or an integer status code like "200".
        "statusClass": "A String", # A class of status codes to accept.
        "statusValue": 42, # A status code to accept.
      },
    ],
    "authInfo": { # The authentication parameters to provide to the specified resource or URL that requires a username and password. Currently, only Basic HTTP authentication (https://tools.ietf.org/html/rfc7617) is supported in Uptime checks. # The authentication information. Optional when creating an HTTP check; defaults to empty. Do not set both auth_method and auth_info.
      "password": "A String", # The password to use when authenticating with the HTTP server.
      "username": "A String", # The username to use when authenticating with the HTTP server.
    },
    "body": "A String", # The request body associated with the HTTP POST request. If content_type is URL_ENCODED, the body passed in must be URL-encoded. Users can provide a Content-Length header via the headers field or the API will do so. If the request_method is GET and body is not empty, the API will return an error. The maximum byte size is 1 megabyte.Note: If client libraries aren't used (which performs the conversion automatically) base64 encode your body data since the field is of bytes type.
    "contentType": "A String", # The content type header to use for the check. The following configurations result in errors: 1. Content type is specified in both the headers field and the content_type field. 2. Request method is GET and content_type is not TYPE_UNSPECIFIED 3. Request method is POST and content_type is TYPE_UNSPECIFIED. 4. Request method is POST and a "Content-Type" header is provided via headers field. The content_type field should be used instead.
    "customContentType": "A String", # A user provided content type header to use for the check. The invalid configurations outlined in the content_type field apply to custom_content_type, as well as the following: 1. content_type is URL_ENCODED and custom_content_type is set. 2. content_type is USER_PROVIDED and custom_content_type is not set.
    "headers": { # The list of headers to send as part of the Uptime check request. If two headers have the same key and different values, they should be entered as a single header, with the value being a comma-separated list of all the desired values as described at https://www.w3.org/Protocols/rfc2616/rfc2616.txt (page 31). Entering two separate headers with the same key in a Create call will cause the first to be overwritten by the second. The maximum number of headers allowed is 100.
      "a_key": "A String",
    },
    "maskHeaders": True or False, # Boolean specifying whether to encrypt the header information. Encryption should be specified for any headers related to authentication that you do not wish to be seen when retrieving the configuration. The server will be responsible for encrypting the headers. On Get/List calls, if mask_headers is set to true then the headers will be obscured with ******.
    "path": "A String", # Optional (defaults to "/"). The path to the page against which to run the check. Will be combined with the host (specified within the monitored_resource) and port to construct the full URL. If the provided path does not begin with "/", a "/" will be prepended automatically.
    "pingConfig": { # Information involved in sending ICMP pings alongside public HTTP/TCP checks. For HTTP, the pings are performed for each part of the redirect chain. # Contains information needed to add pings to an HTTP check.
      "pingsCount": 42, # Number of ICMP pings. A maximum of 3 ICMP pings is currently supported.
    },
    "port": 42, # Optional (defaults to 80 when use_ssl is false, and 443 when use_ssl is true). The TCP port on the HTTP server against which to run the check. Will be combined with host (specified within the monitored_resource) and path to construct the full URL.
    "requestMethod": "A String", # The HTTP request method to use for the check. If set to METHOD_UNSPECIFIED then request_method defaults to GET.
    "serviceAgentAuthentication": { # Contains information needed for generating either an OpenID Connect token (https://developers.google.com/identity/protocols/OpenIDConnect) or OAuth token (https://developers.google.com/identity/protocols/oauth2). The token will be generated for the Monitoring service agent service account. # If specified, Uptime will generate and attach an OIDC JWT token for the Monitoring service agent service account as an Authorization header in the HTTP request when probing.
      "type": "A String", # Type of authentication.
    },
    "useSsl": True or False, # If true, use HTTPS instead of HTTP to run the check.
    "validateSsl": True or False, # Boolean specifying whether to include SSL certificate validation as a part of the Uptime check. Only applies to checks where monitored_resource is set to uptime_url. If use_ssl is false, setting validate_ssl to true has no effect.
  },
  "internalCheckers": [ # The internal checkers that this check will egress from. If is_internal is true and this list is empty, the check will egress from all the InternalCheckers configured for the project that owns this UptimeCheckConfig.
    { # An internal checker allows Uptime checks to run on private/internal GCP resources.
      "displayName": "A String", # The checker's human-readable name. The display name should be unique within a Cloud Monitoring Metrics Scope in order to make it easier to identify; however, uniqueness is not enforced.
      "gcpZone": "A String", # The GCP zone the Uptime check should egress from. Only respected for internal Uptime checks, where internal_network is specified.
      "name": "A String", # A unique resource name for this InternalChecker. The format is: projects/[PROJECT_ID_OR_NUMBER]/internalCheckers/[INTERNAL_CHECKER_ID] [PROJECT_ID_OR_NUMBER] is the Cloud Monitoring Metrics Scope project for the Uptime check config associated with the internal checker.
      "network": "A String", # The GCP VPC network (https://cloud.google.com/vpc/docs/vpc) where the internal resource lives (ex: "default").
      "peerProjectId": "A String", # The GCP project ID where the internal checker lives. Not necessary the same as the Metrics Scope project.
      "state": "A String", # The current operational state of the internal checker.
    },
  ],
  "isInternal": True or False, # If this is true, then checks are made only from the 'internal_checkers'. If it is false, then checks are made only from the 'selected_regions'. It is an error to provide 'selected_regions' when is_internal is true, or to provide 'internal_checkers' when is_internal is false.
  "monitoredResource": { # An object representing a resource that can be used for monitoring, logging, billing, or other purposes. Examples include virtual machine instances, databases, and storage devices such as disks. The type field identifies a MonitoredResourceDescriptor object that describes the resource's schema. Information in the labels field identifies the actual resource and its attributes according to the schema. For example, a particular Compute Engine VM instance could be represented by the following object, because the MonitoredResourceDescriptor for "gce_instance" has labels "project_id", "instance_id" and "zone": { "type": "gce_instance", "labels": { "project_id": "my-project", "instance_id": "12345678901234", "zone": "us-central1-a" }} # The monitored resource (https://cloud.google.com/monitoring/api/resources) associated with the configuration. The following monitored resource types are valid for this field: uptime_url, gce_instance, gae_app, aws_ec2_instance, aws_elb_load_balancer k8s_service servicedirectory_service cloud_run_revision
    "labels": { # Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels "project_id", "instance_id", and "zone".
      "a_key": "A String",
    },
    "type": "A String", # Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance. For a list of types, see Monitoring resource types (https://cloud.google.com/monitoring/api/resources) and Logging resource types (https://cloud.google.com/logging/docs/api/v2/resource-list).
  },
  "name": "A String", # Identifier. A unique resource name for this Uptime check configuration. The format is: projects/[PROJECT_ID_OR_NUMBER]/uptimeCheckConfigs/[UPTIME_CHECK_ID] [PROJECT_ID_OR_NUMBER] is the Workspace host project associated with the Uptime check.This field should be omitted when creating the Uptime check configuration; on create, the resource name is assigned by the server and included in the response.
  "period": "A String", # How often, in seconds, the Uptime check is performed. Currently, the only supported values are 60s (1 minute), 300s (5 minutes), 600s (10 minutes), and 900s (15 minutes). Optional, defaults to 60s.
  "resourceGroup": { # The resource submessage for group checks. It can be used instead of a monitored resource, when multiple resources are being monitored. # The group resource associated with the configuration.
    "groupId": "A String", # The group of resources being monitored. Should be only the [GROUP_ID], and not the full-path projects/[PROJECT_ID_OR_NUMBER]/groups/[GROUP_ID].
    "resourceType": "A String", # The resource type of the group members.
  },
  "selectedRegions": [ # The list of regions from which the check will be run. Some regions contain one location, and others contain more than one. If this field is specified, enough regions must be provided to include a minimum of 3 locations. Not specifying this field will result in Uptime checks running from all available regions.
    "A String",
  ],
  "syntheticMonitor": { # Describes a Synthetic Monitor to be invoked by Uptime. # Specifies a Synthetic Monitor to invoke.
    "cloudFunctionV2": { # A Synthetic Monitor deployed to a Cloud Functions V2 instance. # Target a Synthetic Monitor GCFv2 instance.
      "cloudRunRevision": { # An object representing a resource that can be used for monitoring, logging, billing, or other purposes. Examples include virtual machine instances, databases, and storage devices such as disks. The type field identifies a MonitoredResourceDescriptor object that describes the resource's schema. Information in the labels field identifies the actual resource and its attributes according to the schema. For example, a particular Compute Engine VM instance could be represented by the following object, because the MonitoredResourceDescriptor for "gce_instance" has labels "project_id", "instance_id" and "zone": { "type": "gce_instance", "labels": { "project_id": "my-project", "instance_id": "12345678901234", "zone": "us-central1-a" }} # Output only. The cloud_run_revision Monitored Resource associated with the GCFv2. The Synthetic Monitor execution results (metrics, logs, and spans) are reported against this Monitored Resource. This field is output only.
        "labels": { # Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels "project_id", "instance_id", and "zone".
          "a_key": "A String",
        },
        "type": "A String", # Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance. For a list of types, see Monitoring resource types (https://cloud.google.com/monitoring/api/resources) and Logging resource types (https://cloud.google.com/logging/docs/api/v2/resource-list).
      },
      "name": "A String", # Required. Fully qualified GCFv2 resource name i.e. projects/{project}/locations/{location}/functions/{function} Required.
    },
  },
  "tcpCheck": { # Information required for a TCP Uptime check request. # Contains information needed to make a TCP check.
    "pingConfig": { # Information involved in sending ICMP pings alongside public HTTP/TCP checks. For HTTP, the pings are performed for each part of the redirect chain. # Contains information needed to add pings to a TCP check.
      "pingsCount": 42, # Number of ICMP pings. A maximum of 3 ICMP pings is currently supported.
    },
    "port": 42, # The TCP port on the server against which to run the check. Will be combined with host (specified within the monitored_resource) to construct the full URL. Required.
  },
  "timeout": "A String", # The maximum amount of time to wait for the request to complete (must be between 1 and 60 seconds). Required.
  "userLabels": { # User-supplied key/value data to be used for organizing and identifying the UptimeCheckConfig objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter.
    "a_key": "A String",
  },
}