googleapis
Version:
Google APIs Client Library for Node.js
1,195 lines (1,194 loc) • 257 kB
TypeScript
import { OAuth2Client, JWT, Compute, UserRefreshClient, BaseExternalAccountClient, GaxiosResponseWithHTTP2, GoogleConfigurable, MethodOptions, StreamMethodOptions, GlobalOptions, GoogleAuth, BodyResponseCallback, APIRequestContext } from 'googleapis-common';
import { Readable } from 'stream';
export declare namespace networkmanagement_v1 {
export interface Options extends GlobalOptions {
version: 'v1';
}
interface StandardParameters {
/**
* Auth client or API Key for the request
*/
auth?: string | OAuth2Client | JWT | Compute | UserRefreshClient | BaseExternalAccountClient | GoogleAuth;
/**
* V1 error format.
*/
'$.xgafv'?: string;
/**
* OAuth access token.
*/
access_token?: string;
/**
* Data format for response.
*/
alt?: string;
/**
* JSONP
*/
callback?: string;
/**
* Selector specifying which fields to include in a partial response.
*/
fields?: string;
/**
* API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
*/
key?: string;
/**
* OAuth 2.0 token for the current user.
*/
oauth_token?: string;
/**
* Returns response with indentations and line breaks.
*/
prettyPrint?: boolean;
/**
* Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
*/
quotaUser?: string;
/**
* Legacy upload protocol for media (e.g. "media", "multipart").
*/
uploadType?: string;
/**
* Upload protocol for media (e.g. "raw", "multipart").
*/
upload_protocol?: string;
}
/**
* Network Management API
*
* The Network Management API provides a collection of network performance monitoring and diagnostic capabilities.
*
* @example
* ```js
* const {google} = require('googleapis');
* const networkmanagement = google.networkmanagement('v1');
* ```
*/
export class Networkmanagement {
context: APIRequestContext;
organizations: Resource$Organizations;
projects: Resource$Projects;
constructor(options: GlobalOptions, google?: GoogleConfigurable);
}
/**
* Details of the final state "abort" and associated resource.
*/
export interface Schema$AbortInfo {
/**
* Causes that the analysis is aborted.
*/
cause?: string | null;
/**
* IP address that caused the abort.
*/
ipAddress?: string | null;
/**
* List of project IDs the user specified in the request but lacks access to. In this case, analysis is aborted with the PERMISSION_DENIED cause.
*/
projectsMissingPermission?: string[] | null;
/**
* URI of the resource that caused the abort.
*/
resourceUri?: string | null;
}
/**
* Wrapper for the App Engine service version attributes.
*/
export interface Schema$AppEngineVersionEndpoint {
/**
* An [App Engine](https://cloud.google.com/appengine) [service version](https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions) name.
*/
uri?: string | null;
}
/**
* For display only. Metadata associated with an App Engine version.
*/
export interface Schema$AppEngineVersionInfo {
/**
* Name of an App Engine version.
*/
displayName?: string | null;
/**
* App Engine execution environment for a version.
*/
environment?: string | null;
/**
* Runtime of the App Engine version.
*/
runtime?: string | null;
/**
* URI of an App Engine version.
*/
uri?: string | null;
}
/**
* Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { "audit_configs": [ { "service": "allServices", "audit_log_configs": [ { "log_type": "DATA_READ", "exempted_members": [ "user:jose@example.com" ] \}, { "log_type": "DATA_WRITE" \}, { "log_type": "ADMIN_READ" \} ] \}, { "service": "sampleservice.googleapis.com", "audit_log_configs": [ { "log_type": "DATA_READ" \}, { "log_type": "DATA_WRITE", "exempted_members": [ "user:aliya@example.com" ] \} ] \} ] \} For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com` from DATA_WRITE logging.
*/
export interface Schema$AuditConfig {
/**
* The configuration for logging of each type of permission.
*/
auditLogConfigs?: Schema$AuditLogConfig[];
/**
* Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special value that covers all services.
*/
service?: string | null;
}
/**
* Provides the configuration for logging a type of permissions. Example: { "audit_log_configs": [ { "log_type": "DATA_READ", "exempted_members": [ "user:jose@example.com" ] \}, { "log_type": "DATA_WRITE" \} ] \} This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from DATA_READ logging.
*/
export interface Schema$AuditLogConfig {
/**
* Specifies the identities that do not cause logging for this type of permission. Follows the same format of Binding.members.
*/
exemptedMembers?: string[] | null;
/**
* The log type that this config enables.
*/
logType?: string | null;
}
/**
* Associates `members`, or principals, with a `role`.
*/
export interface Schema$Binding {
/**
* The condition that is associated with this binding. If the condition evaluates to `true`, then this binding applies to the current request. If the condition evaluates to `false`, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the principals in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
*/
condition?: Schema$Expr;
/**
* Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid\}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid\}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid\}.svc.id.goog[{namespace\}/{kubernetes-sa\}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid\}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain\}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. * `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id\}/subject/{subject_attribute_value\}`: A single identity in a workforce identity pool. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id\}/group/{group_id\}`: All workforce identities in a group. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id\}/attribute.{attribute_name\}/{attribute_value\}`: All workforce identities with a specific attribute value. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id\}/x`: All identities in a workforce identity pool. * `principal://iam.googleapis.com/projects/{project_number\}/locations/global/workloadIdentityPools/{pool_id\}/subject/{subject_attribute_value\}`: A single identity in a workload identity pool. * `principalSet://iam.googleapis.com/projects/{project_number\}/locations/global/workloadIdentityPools/{pool_id\}/group/{group_id\}`: A workload identity pool group. * `principalSet://iam.googleapis.com/projects/{project_number\}/locations/global/workloadIdentityPools/{pool_id\}/attribute.{attribute_name\}/{attribute_value\}`: All identities in a workload identity pool with a certain attribute. * `principalSet://iam.googleapis.com/projects/{project_number\}/locations/global/workloadIdentityPools/{pool_id\}/x`: All identities in a workload identity pool. * `deleted:user:{emailid\}?uid={uniqueid\}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid\}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid\}?uid={uniqueid\}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid\}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid\}?uid={uniqueid\}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid\}` and the recovered group retains the role in the binding. * `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id\}/subject/{subject_attribute_value\}`: Deleted single identity in a workforce identity pool. For example, `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`.
*/
members?: string[] | null;
/**
* Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview of the IAM roles and permissions, see the [IAM documentation](https://cloud.google.com/iam/docs/roles-overview). For a list of the available pre-defined roles, see [here](https://cloud.google.com/iam/docs/understanding-roles).
*/
role?: string | null;
}
/**
* The request message for Operations.CancelOperation.
*/
export interface Schema$CancelOperationRequest {
}
/**
* Wrapper for Cloud Function attributes.
*/
export interface Schema$CloudFunctionEndpoint {
/**
* A [Cloud Function](https://cloud.google.com/functions) name.
*/
uri?: string | null;
}
/**
* For display only. Metadata associated with a Cloud Function.
*/
export interface Schema$CloudFunctionInfo {
/**
* Name of a Cloud Function.
*/
displayName?: string | null;
/**
* Location in which the Cloud Function is deployed.
*/
location?: string | null;
/**
* URI of a Cloud Function.
*/
uri?: string | null;
/**
* Latest successfully deployed version id of the Cloud Function.
*/
versionId?: string | null;
}
/**
* Wrapper for Cloud Run revision attributes.
*/
export interface Schema$CloudRunRevisionEndpoint {
/**
* Output only. The URI of the Cloud Run service that the revision belongs to. The format is: projects/{project\}/locations/{location\}/services/{service\}
*/
serviceUri?: string | null;
/**
* A [Cloud Run](https://cloud.google.com/run) [revision](https://cloud.google.com/run/docs/reference/rest/v1/namespaces.revisions/get) URI. The format is: projects/{project\}/locations/{location\}/revisions/{revision\}
*/
uri?: string | null;
}
/**
* For display only. Metadata associated with a Cloud Run revision.
*/
export interface Schema$CloudRunRevisionInfo {
/**
* Name of a Cloud Run revision.
*/
displayName?: string | null;
/**
* Location in which this revision is deployed.
*/
location?: string | null;
/**
* URI of Cloud Run service this revision belongs to.
*/
serviceUri?: string | null;
/**
* URI of a Cloud Run revision.
*/
uri?: string | null;
}
/**
* For display only. Metadata associated with a Cloud SQL instance.
*/
export interface Schema$CloudSQLInstanceInfo {
/**
* Name of a Cloud SQL instance.
*/
displayName?: string | null;
/**
* External IP address of a Cloud SQL instance.
*/
externalIp?: string | null;
/**
* Internal IP address of a Cloud SQL instance.
*/
internalIp?: string | null;
/**
* URI of a Cloud SQL instance network or empty string if the instance does not have one.
*/
networkUri?: string | null;
/**
* Region in which the Cloud SQL instance is running.
*/
region?: string | null;
/**
* URI of a Cloud SQL instance.
*/
uri?: string | null;
}
/**
* A Connectivity Test for a network reachability analysis.
*/
export interface Schema$ConnectivityTest {
/**
* Whether the analysis should skip firewall checking. Default value is false.
*/
bypassFirewallChecks?: boolean | null;
/**
* Output only. The time the test was created.
*/
createTime?: string | null;
/**
* The user-supplied description of the Connectivity Test. Maximum of 512 characters.
*/
description?: string | null;
/**
* Required. Destination specification of the Connectivity Test. You can use a combination of destination IP address, URI of a supported endpoint, project ID, or VPC network to identify the destination location. Reachability analysis proceeds even if the destination location is ambiguous. However, the test result might include endpoints or use a destination that you don't intend to test.
*/
destination?: Schema$Endpoint;
/**
* Output only. The display name of a Connectivity Test.
*/
displayName?: string | null;
/**
* Resource labels to represent user-provided metadata.
*/
labels?: {
[key: string]: string;
} | null;
/**
* Identifier. Unique name of the resource using the form: `projects/{project_id\}/locations/global/connectivityTests/{test_id\}`
*/
name?: string | null;
/**
* Output only. The probing details of this test from the latest run, present for applicable tests only. The details are updated when creating a new test, updating an existing test, or triggering a one-time rerun of an existing test.
*/
probingDetails?: Schema$ProbingDetails;
/**
* IP Protocol of the test. When not provided, "TCP" is assumed.
*/
protocol?: string | null;
/**
* Output only. The reachability details of this test from the latest run. The details are updated when creating a new test, updating an existing test, or triggering a one-time rerun of an existing test.
*/
reachabilityDetails?: Schema$ReachabilityDetails;
/**
* Other projects that may be relevant for reachability analysis. This is applicable to scenarios where a test can cross project boundaries.
*/
relatedProjects?: string[] | null;
/**
* Output only. The reachability details of this test from the latest run for the return path. The details are updated when creating a new test, updating an existing test, or triggering a one-time rerun of an existing test.
*/
returnReachabilityDetails?: Schema$ReachabilityDetails;
/**
* Whether run analysis for the return path from destination to source. Default value is false.
*/
roundTrip?: boolean | null;
/**
* Required. Source specification of the Connectivity Test. You can use a combination of source IP address, URI of a supported endpoint, project ID, or VPC network to identify the source location. Reachability analysis might proceed even if the source location is ambiguous. However, the test result might include endpoints or use a source that you don't intend to test.
*/
source?: Schema$Endpoint;
/**
* Output only. The time the test's configuration was updated.
*/
updateTime?: string | null;
}
/**
* Details of the final state "deliver" and associated resource.
*/
export interface Schema$DeliverInfo {
/**
* Recognized type of a Google Service the packet is delivered to (if applicable).
*/
googleServiceType?: string | null;
/**
* IP address of the target (if applicable).
*/
ipAddress?: string | null;
/**
* PSC Google API target the packet is delivered to (if applicable).
*/
pscGoogleApiTarget?: string | null;
/**
* URI of the resource that the packet is delivered to.
*/
resourceUri?: string | null;
/**
* Name of the Cloud Storage Bucket the packet is delivered to (if applicable).
*/
storageBucket?: string | null;
/**
* Target type where the packet is delivered to.
*/
target?: string | null;
}
/**
* For display only. Metadata associated with a serverless direct VPC egress connection.
*/
export interface Schema$DirectVpcEgressConnectionInfo {
/**
* URI of direct access network.
*/
networkUri?: string | null;
/**
* Region in which the Direct VPC egress is deployed.
*/
region?: string | null;
/**
* Selected starting IP address, from the selected IP range.
*/
selectedIpAddress?: string | null;
/**
* Selected IP range.
*/
selectedIpRange?: string | null;
/**
* URI of direct access subnetwork.
*/
subnetworkUri?: string | null;
}
/**
* Details of the final state "drop" and associated resource.
*/
export interface Schema$DropInfo {
/**
* Cause that the packet is dropped.
*/
cause?: string | null;
/**
* Destination IP address of the dropped packet (if relevant).
*/
destinationIp?: string | null;
/**
* Region of the dropped packet (if relevant).
*/
region?: string | null;
/**
* URI of the resource that caused the drop.
*/
resourceUri?: string | null;
/**
* Source IP address of the dropped packet (if relevant).
*/
sourceIp?: string | null;
}
/**
* Representation of a network edge location as per https://cloud.google.com/vpc/docs/edge-locations.
*/
export interface Schema$EdgeLocation {
/**
* Name of the metropolitan area.
*/
metropolitanArea?: string | null;
}
/**
* 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); \}
*/
export interface Schema$Empty {
}
/**
* Source or destination of the Connectivity Test.
*/
export interface Schema$Endpoint {
/**
* An [App Engine](https://cloud.google.com/appengine) [service version](https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions). Applicable only to source endpoint.
*/
appEngineVersion?: Schema$AppEngineVersionEndpoint;
/**
* A [Cloud Function](https://cloud.google.com/functions). Applicable only to source endpoint.
*/
cloudFunction?: Schema$CloudFunctionEndpoint;
/**
* A [Cloud Run](https://cloud.google.com/run) [revision](https://cloud.google.com/run/docs/reference/rest/v1/namespaces.revisions/get) Applicable only to source endpoint.
*/
cloudRunRevision?: Schema$CloudRunRevisionEndpoint;
/**
* A [Cloud SQL](https://cloud.google.com/sql) instance URI.
*/
cloudSqlInstance?: string | null;
/**
* A forwarding rule and its corresponding IP address represent the frontend configuration of a Google Cloud load balancer. Forwarding rules are also used for protocol forwarding, Private Service Connect and other network services to provide forwarding information in the control plane. Applicable only to destination endpoint. Format: projects/{project\}/global/forwardingRules/{id\} or projects/{project\}/regions/{region\}/forwardingRules/{id\}
*/
forwardingRule?: string | null;
/**
* Output only. Specifies the type of the target of the forwarding rule.
*/
forwardingRuleTarget?: string | null;
/**
* DNS endpoint of [Google Kubernetes Engine cluster control plane](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture). Requires gke_master_cluster to be set, can't be used simultaneoulsly with ip_address or network. Applicable only to destination endpoint.
*/
fqdn?: string | null;
/**
* A cluster URI for [Google Kubernetes Engine cluster control plane](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture).
*/
gkeMasterCluster?: string | null;
/**
* A Compute Engine instance URI.
*/
instance?: string | null;
/**
* The IP address of the endpoint, which can be an external or internal IP.
*/
ipAddress?: string | null;
/**
* Output only. ID of the load balancer the forwarding rule points to. Empty for forwarding rules not related to load balancers.
*/
loadBalancerId?: string | null;
/**
* Output only. Type of the load balancer the forwarding rule points to.
*/
loadBalancerType?: string | null;
/**
* A VPC network URI.
*/
network?: string | null;
/**
* Type of the network where the endpoint is located. Applicable only to source endpoint, as destination network type can be inferred from the source.
*/
networkType?: string | null;
/**
* The IP protocol port of the endpoint. Only applicable when protocol is TCP or UDP.
*/
port?: number | null;
/**
* Project ID where the endpoint is located. The project ID can be derived from the URI if you provide a endpoint or network URI. The following are two cases where you may need to provide the project ID: 1. Only the IP address is specified, and the IP address is within a Google Cloud project. 2. When you are using Shared VPC and the IP address that you provide is from the service project. In this case, the network that the IP address resides in is defined in the host project.
*/
projectId?: string | null;
/**
* A [Redis Cluster](https://cloud.google.com/memorystore/docs/cluster) URI. Applicable only to destination endpoint.
*/
redisCluster?: string | null;
/**
* A [Redis Instance](https://cloud.google.com/memorystore/docs/redis) URI. Applicable only to destination endpoint.
*/
redisInstance?: string | null;
}
/**
* For display only. The specification of the endpoints for the test. EndpointInfo is derived from source and destination Endpoint and validated by the backend data plane model.
*/
export interface Schema$EndpointInfo {
/**
* Destination IP address.
*/
destinationIp?: string | null;
/**
* URI of the network where this packet is sent to.
*/
destinationNetworkUri?: string | null;
/**
* Destination port. Only valid when protocol is TCP or UDP.
*/
destinationPort?: number | null;
/**
* IP protocol in string format, for example: "TCP", "UDP", "ICMP".
*/
protocol?: string | null;
/**
* URI of the source telemetry agent this packet originates from.
*/
sourceAgentUri?: string | null;
/**
* Source IP address.
*/
sourceIp?: string | null;
/**
* URI of the network where this packet originates from.
*/
sourceNetworkUri?: string | null;
/**
* Source port. Only valid when protocol is TCP or UDP.
*/
sourcePort?: number | null;
}
/**
* Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: "Summary size limit" description: "Determines if a summary is less than 100 chars" expression: "document.summary.size() < 100" Example (Equality): title: "Requestor is owner" description: "Determines if requestor is the document owner" expression: "document.owner == request.auth.claims.email" Example (Logic): title: "Public documents" description: "Determine whether the document should be publicly visible" expression: "document.type != 'private' && document.type != 'internal'" Example (Data Manipulation): title: "Notification string" description: "Create a notification string with a timestamp." expression: "'New message received at ' + string(document.create_time)" The exact variables and functions that may be referenced within an expression are determined by the service that evaluates it. See the service documentation for additional information.
*/
export interface Schema$Expr {
/**
* Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
*/
description?: string | null;
/**
* Textual representation of an expression in Common Expression Language syntax.
*/
expression?: string | null;
/**
* Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.
*/
location?: string | null;
/**
* Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.
*/
title?: string | null;
}
/**
* For display only. Metadata associated with a VPC firewall rule, an implied VPC firewall rule, or a firewall policy rule.
*/
export interface Schema$FirewallInfo {
/**
* Possible values: ALLOW, DENY, APPLY_SECURITY_PROFILE_GROUP
*/
action?: string | null;
/**
* Possible values: INGRESS, EGRESS
*/
direction?: string | null;
/**
* The display name of the firewall rule. This field might be empty for firewall policy rules.
*/
displayName?: string | null;
/**
* The firewall rule's type.
*/
firewallRuleType?: string | null;
/**
* The URI of the VPC network that the firewall rule is associated with. This field is not applicable to hierarchical firewall policy rules.
*/
networkUri?: string | null;
/**
* The name of the firewall policy that this rule is associated with. This field is not applicable to VPC firewall rules and implied VPC firewall rules.
*/
policy?: string | null;
/**
* The priority of the firewall policy that this rule is associated with. This field is not applicable to VPC firewall rules and implied VPC firewall rules.
*/
policyPriority?: number | null;
/**
* The URI of the firewall policy that this rule is associated with. This field is not applicable to VPC firewall rules and implied VPC firewall rules.
*/
policyUri?: string | null;
/**
* The priority of the firewall rule.
*/
priority?: number | null;
/**
* The target service accounts specified by the firewall rule.
*/
targetServiceAccounts?: string[] | null;
/**
* The target tags defined by the VPC firewall rule. This field is not applicable to firewall policy rules.
*/
targetTags?: string[] | null;
/**
* The URI of the firewall rule. This field is not applicable to implied VPC firewall rules.
*/
uri?: string | null;
}
/**
* Details of the final state "forward" and associated resource.
*/
export interface Schema$ForwardInfo {
/**
* IP address of the target (if applicable).
*/
ipAddress?: string | null;
/**
* URI of the resource that the packet is forwarded to.
*/
resourceUri?: string | null;
/**
* Target type where this packet is forwarded to.
*/
target?: string | null;
}
/**
* For display only. Metadata associated with a Compute Engine forwarding rule.
*/
export interface Schema$ForwardingRuleInfo {
/**
* Name of the forwarding rule.
*/
displayName?: string | null;
/**
* Name of the load balancer the forwarding rule belongs to. Empty for forwarding rules not related to load balancers (like PSC forwarding rules).
*/
loadBalancerName?: string | null;
/**
* Port range defined in the forwarding rule that matches the packet.
*/
matchedPortRange?: string | null;
/**
* Protocol defined in the forwarding rule that matches the packet.
*/
matchedProtocol?: string | null;
/**
* Network URI.
*/
networkUri?: string | null;
/**
* PSC Google API target this forwarding rule targets (if applicable).
*/
pscGoogleApiTarget?: string | null;
/**
* URI of the PSC service attachment this forwarding rule targets (if applicable).
*/
pscServiceAttachmentUri?: string | null;
/**
* Region of the forwarding rule. Set only for regional forwarding rules.
*/
region?: string | null;
/**
* Target type of the forwarding rule.
*/
target?: string | null;
/**
* URI of the forwarding rule.
*/
uri?: string | null;
/**
* VIP of the forwarding rule.
*/
vip?: string | null;
}
/**
* For display only. Metadata associated with a Google Kubernetes Engine (GKE) cluster master.
*/
export interface Schema$GKEMasterInfo {
/**
* URI of a GKE cluster network.
*/
clusterNetworkUri?: string | null;
/**
* URI of a GKE cluster.
*/
clusterUri?: string | null;
/**
* DNS endpoint of a GKE cluster control plane.
*/
dnsEndpoint?: string | null;
/**
* External IP address of a GKE cluster control plane.
*/
externalIp?: string | null;
/**
* Internal IP address of a GKE cluster control plane.
*/
internalIp?: string | null;
}
/**
* For display only. Details of a Google Service sending packets to a VPC network. Although the source IP might be a publicly routable address, some Google Services use special routes within Google production infrastructure to reach Compute Engine Instances. https://cloud.google.com/vpc/docs/routes#special_return_paths
*/
export interface Schema$GoogleServiceInfo {
/**
* Recognized type of a Google Service.
*/
googleServiceType?: string | null;
/**
* Source IP address.
*/
sourceIp?: string | null;
}
/**
* Message describing information about the host.
*/
export interface Schema$Host {
/**
* Output only. The cloud instance id of the host.
*/
cloudInstanceId?: string | null;
/**
* Output only. The cloud project id of the host.
*/
cloudProjectId?: string | null;
/**
* Output only. The cloud provider of the host.
*/
cloudProvider?: string | null;
/**
* Output only. The cloud region of the host.
*/
cloudRegion?: string | null;
/**
* Output only. The id of Virtual Private Cloud (VPC) of the host.
*/
cloudVpcId?: string | null;
/**
* Output only. The cloud zone of the host.
*/
cloudZone?: string | null;
/**
* Output only. The operating system of the host.
*/
os?: string | null;
}
/**
* For display only. Metadata associated with a Compute Engine instance.
*/
export interface Schema$InstanceInfo {
/**
* Name of a Compute Engine instance.
*/
displayName?: string | null;
/**
* External IP address of the network interface.
*/
externalIp?: string | null;
/**
* Name of the network interface of a Compute Engine instance.
*/
interface?: string | null;
/**
* Internal IP address of the network interface.
*/
internalIp?: string | null;
/**
* Network tags configured on the instance.
*/
networkTags?: string[] | null;
/**
* URI of a Compute Engine network.
*/
networkUri?: string | null;
/**
* URI of the PSC network attachment the NIC is attached to (if relevant).
*/
pscNetworkAttachmentUri?: string | null;
/**
* Indicates whether the Compute Engine instance is running. Deprecated: use the `status` field instead.
*/
running?: boolean | null;
/**
* Service account authorized for the instance.
*/
serviceAccount?: string | null;
/**
* The status of the instance.
*/
status?: string | null;
/**
* URI of a Compute Engine instance.
*/
uri?: string | null;
}
/**
* Describes measured latency distribution.
*/
export interface Schema$LatencyDistribution {
/**
* Representative latency percentiles.
*/
latencyPercentiles?: Schema$LatencyPercentile[];
}
/**
* Latency percentile rank and value.
*/
export interface Schema$LatencyPercentile {
/**
* percent-th percentile of latency observed, in microseconds. Fraction of percent/100 of samples have latency lower or equal to the value of this field.
*/
latencyMicros?: string | null;
/**
* Percentage of samples this data point applies to.
*/
percent?: number | null;
}
/**
* Response for the `ListConnectivityTests` method.
*/
export interface Schema$ListConnectivityTestsResponse {
/**
* Page token to fetch the next set of Connectivity Tests.
*/
nextPageToken?: string | null;
/**
* List of Connectivity Tests.
*/
resources?: Schema$ConnectivityTest[];
/**
* Locations that could not be reached (when querying all locations with `-`).
*/
unreachable?: string[] | null;
}
/**
* The response message for Locations.ListLocations.
*/
export interface Schema$ListLocationsResponse {
/**
* A list of locations that matches the specified filter in the request.
*/
locations?: Schema$Location[];
/**
* The standard List next-page token.
*/
nextPageToken?: string | null;
}
/**
* Message for response to listing MonitoringPoints
*/
export interface Schema$ListMonitoringPointsResponse {
/**
* The list of MonitoringPoints.
*/
monitoringPoints?: Schema$MonitoringPoint[];
/**
* A token identifying a page of results the server should return.
*/
nextPageToken?: string | null;
}
/**
* Message for response to listing NetworkMonitoringProviders
*/
export interface Schema$ListNetworkMonitoringProvidersResponse {
/**
* The list of NetworkMonitoringProvider
*/
networkMonitoringProviders?: Schema$NetworkMonitoringProvider[];
/**
* A token identifying a page of results the server should return.
*/
nextPageToken?: string | null;
}
/**
* Message for response to listing NetworkPaths
*/
export interface Schema$ListNetworkPathsResponse {
/**
* The list of NetworkPath
*/
networkPaths?: Schema$NetworkPath[];
/**
* A token identifying a page of results the server should return.
*/
nextPageToken?: string | null;
}
/**
* The response message for Operations.ListOperations.
*/
export interface Schema$ListOperationsResponse {
/**
* The standard List next-page token.
*/
nextPageToken?: string | null;
/**
* A list of operations that matches the specified filter in the request.
*/
operations?: Schema$Operation[];
}
/**
* Response for the `ListVpcFlowLogsConfigs` method.
*/
export interface Schema$ListVpcFlowLogsConfigsResponse {
/**
* Page token to fetch the next set of configurations.
*/
nextPageToken?: string | null;
/**
* Locations that could not be reached (when querying all locations with `-`).
*/
unreachable?: string[] | null;
/**
* List of VPC Flow Log configurations.
*/
vpcFlowLogsConfigs?: Schema$VpcFlowLogsConfig[];
}
/**
* Message for response to listing WebPaths
*/
export interface Schema$ListWebPathsResponse {
/**
* A token identifying a page of results the server should return.
*/
nextPageToken?: string | null;
/**
* The list of WebPath.
*/
webPaths?: Schema$WebPath[];
}
/**
* For display only. Metadata associated with a specific load balancer backend.
*/
export interface Schema$LoadBalancerBackend {
/**
* Name of a Compute Engine instance or network endpoint.
*/
displayName?: string | null;
/**
* A list of firewall rule URIs allowing probes from health check IP ranges.
*/
healthCheckAllowingFirewallRules?: string[] | null;
/**
* A list of firewall rule URIs blocking probes from health check IP ranges.
*/
healthCheckBlockingFirewallRules?: string[] | null;
/**
* State of the health check firewall configuration.
*/
healthCheckFirewallState?: string | null;
/**
* URI of a Compute Engine instance or network endpoint.
*/
uri?: string | null;
}
/**
* For display only. Metadata associated with the load balancer backend.
*/
export interface Schema$LoadBalancerBackendInfo {
/**
* URI of the backend bucket this backend targets (if applicable).
*/
backendBucketUri?: string | null;
/**
* URI of the backend service this backend belongs to (if applicable).
*/
backendServiceUri?: string | null;
/**
* Output only. Health check firewalls configuration state for the backend. This is a result of the static firewall analysis (verifying that health check traffic from required IP ranges to the backend is allowed or not). The backend might still be unhealthy even if these firewalls are configured. Please refer to the documentation for more information: https://cloud.google.com/load-balancing/docs/firewall-rules
*/
healthCheckFirewallsConfigState?: string | null;
/**
* URI of the health check attached to this backend (if applicable).
*/
healthCheckUri?: string | null;
/**
* URI of the instance group this backend belongs to (if applicable).
*/
instanceGroupUri?: string | null;
/**
* URI of the backend instance (if applicable). Populated for instance group backends, and zonal NEG backends.
*/
instanceUri?: string | null;
/**
* Display name of the backend. For example, it might be an instance name for the instance group backends, or an IP address and port for zonal network endpoint group backends.
*/
name?: string | null;
/**
* URI of the network endpoint group this backend belongs to (if applicable).
*/
networkEndpointGroupUri?: string | null;
/**
* PSC Google API target this PSC NEG backend targets (if applicable).
*/
pscGoogleApiTarget?: string | null;
/**
* URI of the PSC service attachment this PSC NEG backend targets (if applicable).
*/
pscServiceAttachmentUri?: string | null;
}
/**
* For display only. Metadata associated with a load balancer.
*/
export interface Schema$LoadBalancerInfo {
/**
* Information for the loadbalancer backends.
*/
backends?: Schema$LoadBalancerBackend[];
/**
* Type of load balancer's backend configuration.
*/
backendType?: string | null;
/**
* Backend configuration URI.
*/
backendUri?: string | null;
/**
* URI of the health check for the load balancer. Deprecated and no longer populated as different load balancer backends might have different health checks.
*/
healthCheckUri?: string | null;
/**
* Type of the load balancer.
*/
loadBalancerType?: string | null;
}
/**
* A resource that represents a Google Cloud location.
*/
export interface Schema$Location {
/**
* The friendly name for this location, typically a nearby city name. For example, "Tokyo".
*/
displayName?: string | null;
/**
* Cross-service attributes for the location. For example {"cloud.googleapis.com/region": "us-east1"\}
*/
labels?: {
[key: string]: string;
} | null;
/**
* The canonical id for this location. For example: `"us-east1"`.
*/
locationId?: string | null;
/**
* Service-specific metadata. For example the available capacity at the given location.
*/
metadata?: {
[key: string]: any;
} | null;
/**
* Resource name for the location, which may vary between implementations. For example: `"projects/example-project/locations/us-east1"`
*/
name?: string | null;
}
/**
* Message describing MonitoringPoint resource.
*/
export interface Schema$MonitoringPoint {
/**
* Output only. Indicates if automaitic geographic location is enabled for the MonitoringPoint.
*/
autoGeoLocationEnabled?: boolean | null;
/**
* Output only. Connection status of the MonitoringPoint.
*/
connectionStatus?: string | null;
/**
* Output only. The time the MonitoringPoint was created.
*/
createTime?: string | null;
/**
* Output only. Display name of the MonitoringPoint.
*/
displayName?: string | null;
/**
* Output only. The codes of errors detected in the MonitoringPoint.
*/
errors?: string[] | null;
/**
* Output only. The geographical location of the MonitoringPoint. Examples: - "New York, NY, USA" - "Berlin, Germany"
*/
geoLocation?: string | null;
/**
* Output only. The host information of the MonitoringPoint.
*/
host?: Schema$Host;
/**
* Output only. The hostname of the MonitoringPoint.
*/
hostname?: string | null;
/**
* Identifier. Name of the resource. Format: `projects/{project\}/locations/{location\}/networkMonitoringProviders/{network_monitoring_provider\}/monitoringPoints/{monitoring_point\}`
*/
name?: string | null;
/**
* Output only. The network interfaces of the MonitoringPoint.
*/
networkInterfaces?: Schema$NetworkInterface[];
/**
* Output only. IP address visible when MonitoringPoint connects to the provider.
*/
originatingIp?: string | null;
/**
* Output only. The provider tags of the MonitoringPoint.
*/
providerTags?: Schema$ProviderTag[];
/**
* Output only. Deployment type of the MonitoringPoint.
*/
type?: string | null;
/**
* Output only. The time the MonitoringPoint was updated.
*/
updateTime?: string | null;
/**
* Output only. The type of upgrade available for the MonitoringPoint.
*/
upgradeType?: string | null;
/**
* Output only. Version of the software running on the MonitoringPoint.
*/
version?: string | null;
}
/**
* For display only. Metadata associated with NAT.
*/
export interface Schema$NatInfo {
/**
* The name of Cloud NAT Gateway. Only valid when type is CLOUD_NAT.
*/
natGatewayName?: string | null;
/**
* URI of the network where NAT translation takes place.
*/
networkUri?: string | null;
/**
* Destination IP address after NAT translation.
*/
newDestinationIp?: string | null;
/**
* Destination port after NAT translation. Only valid when protocol is TCP or UDP.
*/
newDestinationPort?: number | null;
/**
* Source IP address after NAT translation.
*/
newSourceIp?: string | null;
/**
* Source port after NAT translation. Only valid when protocol is TCP or UDP.
*/
newSourcePort?: number | null;
/**
* Destination IP address before NAT translation.
*/
oldDestinationIp?: string | null;
/**
* Destination port before NAT translation. Only valid when protocol is TCP or UDP.
*/
oldDestinationPort?: number | null;
/**
* Source IP address before NAT translation.
*/
oldSourceIp?: string | null;
/**
* Source port before NAT translation. Only valid when protocol is TCP or UDP.
*/
oldSourcePort?: number | null;
/**
* IP protocol in string format, for example: "TCP", "UDP", "ICMP".
*/
protocol?: string | null;
/**
* Uri of the Cloud Router. Only valid when type is CLOUD_NAT.
*/
routerUri?: string | null;
/**
* Type of NAT.
*/
type?: string | null;
}
/**
* For display only. Metadata associated with a Compute Engine network.
*/
export interface Schema$NetworkInfo {
/**
* Name of a Compute Engine network.
*/
displayName?: string | null;
/**
* The IP range of the subnet matching the source IP address of the test.
*/