| <html><body> |
| <style> |
| |
| body, h1, h2, h3, div, span, p, pre, a { |
| margin: 0; |
| padding: 0; |
| border: 0; |
| font-weight: inherit; |
| font-style: inherit; |
| font-size: 100%; |
| font-family: inherit; |
| vertical-align: baseline; |
| } |
| |
| body { |
| font-size: 13px; |
| padding: 1em; |
| } |
| |
| h1 { |
| font-size: 26px; |
| margin-bottom: 1em; |
| } |
| |
| h2 { |
| font-size: 24px; |
| margin-bottom: 1em; |
| } |
| |
| h3 { |
| font-size: 20px; |
| margin-bottom: 1em; |
| margin-top: 1em; |
| } |
| |
| pre, code { |
| line-height: 1.5; |
| font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace; |
| } |
| |
| pre { |
| margin-top: 0.5em; |
| } |
| |
| h1, h2, h3, p { |
| font-family: Arial, sans serif; |
| } |
| |
| h1, h2, h3 { |
| border-bottom: solid #CCC 1px; |
| } |
| |
| .toc_element { |
| margin-top: 0.5em; |
| } |
| |
| .firstline { |
| margin-left: 2 em; |
| } |
| |
| .method { |
| margin-top: 1em; |
| border: solid 1px #CCC; |
| padding: 1em; |
| background: #EEE; |
| } |
| |
| .details { |
| font-weight: bold; |
| font-size: 14px; |
| } |
| |
| </style> |
| |
| <h1><a href="compute_alpha.html">Compute Engine API</a> . <a href="compute_alpha.interconnectAttachments.html">interconnectAttachments</a></h1> |
| <h2>Instance Methods</h2> |
| <p class="toc_element"> |
| <code><a href="#aggregatedList">aggregatedList(project, filter=None, includeAllScopes=None, maxResults=None, orderBy=None, pageToken=None, returnPartialSuccess=None, serviceProjectNumber=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Retrieves an aggregated list of interconnect attachments.</p> |
| <p class="toc_element"> |
| <code><a href="#aggregatedList_next">aggregatedList_next()</a></code></p> |
| <p class="firstline">Retrieves the next page of results.</p> |
| <p class="toc_element"> |
| <code><a href="#close">close()</a></code></p> |
| <p class="firstline">Close httplib2 connections.</p> |
| <p class="toc_element"> |
| <code><a href="#delete">delete(project, region, interconnectAttachment, requestId=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Deletes the specified interconnect attachment.</p> |
| <p class="toc_element"> |
| <code><a href="#get">get(project, region, interconnectAttachment, x__xgafv=None)</a></code></p> |
| <p class="firstline">Returns the specified interconnect attachment.</p> |
| <p class="toc_element"> |
| <code><a href="#getIamPolicy">getIamPolicy(project, region, resource, optionsRequestedPolicyVersion=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Gets the access control policy for a resource. May be empty if no such</p> |
| <p class="toc_element"> |
| <code><a href="#insert">insert(project, region, body=None, requestId=None, validateOnly=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Creates an InterconnectAttachment in the specified project using the data</p> |
| <p class="toc_element"> |
| <code><a href="#list">list(project, region, filter=None, maxResults=None, orderBy=None, pageToken=None, returnPartialSuccess=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Retrieves the list of interconnect attachments contained within</p> |
| <p class="toc_element"> |
| <code><a href="#list_next">list_next()</a></code></p> |
| <p class="firstline">Retrieves the next page of results.</p> |
| <p class="toc_element"> |
| <code><a href="#patch">patch(project, region, interconnectAttachment, body=None, requestId=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Updates the specified interconnect attachment with the data included in the</p> |
| <p class="toc_element"> |
| <code><a href="#setIamPolicy">setIamPolicy(project, region, resource, body=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Sets the access control policy on the specified resource.</p> |
| <p class="toc_element"> |
| <code><a href="#setLabels">setLabels(project, region, resource, body=None, requestId=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Sets the labels on an InterconnectAttachment. To learn more about labels,</p> |
| <p class="toc_element"> |
| <code><a href="#testIamPermissions">testIamPermissions(project, region, resource, body=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Returns permissions that a caller has on the specified resource.</p> |
| <h3>Method Details</h3> |
| <div class="method"> |
| <code class="details" id="aggregatedList">aggregatedList(project, filter=None, includeAllScopes=None, maxResults=None, orderBy=None, pageToken=None, returnPartialSuccess=None, serviceProjectNumber=None, x__xgafv=None)</code> |
| <pre>Retrieves an aggregated list of interconnect attachments. |
| |
| To prevent failure, Google recommends that you set the |
| `returnPartialSuccess` parameter to `true`. |
| |
| Args: |
| project: string, Project ID for this request. (required) |
| filter: string, A filter expression that filters resources listed in the response. Most |
| Compute resources support two types of filter expressions: |
| expressions that support regular expressions and expressions that follow |
| API improvement proposal AIP-160. |
| These two types of filter expressions cannot be mixed in one request. |
| |
| If you want to use AIP-160, your expression must specify the field name, an |
| operator, and the value that you want to use for filtering. The value |
| must be a string, a number, or a boolean. The operator |
| must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. |
| |
| For example, if you are filtering Compute Engine instances, you can |
| exclude instances named `example-instance` by specifying |
| `name != example-instance`. |
| |
| The `:*` comparison can be used to test whether a key has been defined. |
| For example, to find all objects with `owner` label use: |
| ``` |
| labels.owner:* |
| ``` |
| |
| You can also filter nested fields. For example, you could specify |
| `scheduling.automaticRestart = false` to include instances only |
| if they are not scheduled for automatic restarts. You can use filtering |
| on nested fields to filter based onresource labels. |
| |
| To filter on multiple expressions, provide each separate expression within |
| parentheses. For example: |
| ``` |
| (scheduling.automaticRestart = true) |
| (cpuPlatform = "Intel Skylake") |
| ``` |
| By default, each expression is an `AND` expression. However, you |
| can include `AND` and `OR` expressions explicitly. |
| For example: |
| ``` |
| (cpuPlatform = "Intel Skylake") OR |
| (cpuPlatform = "Intel Broadwell") AND |
| (scheduling.automaticRestart = true) |
| ``` |
| |
| If you want to use a regular expression, use the `eq` (equal) or `ne` |
| (not equal) operator against a single un-parenthesized expression with or |
| without quotes or against multiple parenthesized expressions. Examples: |
| |
| `fieldname eq unquoted literal` |
| `fieldname eq 'single quoted literal'` |
| `fieldname eq "double quoted literal"` |
| `(fieldname1 eq literal) (fieldname2 ne "literal")` |
| |
| The literal value is interpreted as a regular expression using GoogleRE2 library syntax. |
| The literal value must match the entire field. |
| |
| For example, to filter for instances that do not end with name "instance", |
| you would use `name ne .*instance`. |
| |
| You cannot combine constraints on multiple fields using regular |
| expressions. |
| includeAllScopes: boolean, Indicates whether every visible scope for each scope type (zone, region, |
| global) should be included in the response. For new resource types added |
| after this field, the flag has no effect as new resource types will always |
| include every visible scope for each scope type in response. For resource |
| types which predate this field, if this flag is omitted or false, only |
| scopes of the scope types where the resource type is expected to be found |
| will be included. |
| maxResults: integer, The maximum number of results per page that should be returned. |
| If the number of available results is larger than `maxResults`, |
| Compute Engine returns a `nextPageToken` that can be used to get |
| the next page of results in subsequent list requests. Acceptable values are |
| `0` to `500`, inclusive. (Default: `500`) |
| orderBy: string, Sorts list results by a certain order. By default, results |
| are returned in alphanumerical order based on the resource name. |
| |
| You can also sort results in descending order based on the creation |
| timestamp using `orderBy="creationTimestamp desc"`. This sorts |
| results based on the `creationTimestamp` field in |
| reverse chronological order (newest result first). Use this to sort |
| resources like operations so that the newest operation is returned first. |
| |
| Currently, only sorting by `name` or |
| `creationTimestamp desc` is supported. |
| pageToken: string, Specifies a page token to use. Set `pageToken` to the |
| `nextPageToken` returned by a previous list request to get |
| the next page of results. |
| returnPartialSuccess: boolean, Opt-in for partial success behavior which provides partial results in case |
| of failure. The default value is false. |
| |
| For example, when partial success behavior is enabled, aggregatedList for a |
| single zone scope either returns all resources in the zone or no resources, |
| with an error code. |
| serviceProjectNumber: string, The Shared VPC service project id or service project number for which |
| aggregated list request is invoked for subnetworks list-usable api. |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { |
| "id": "A String", # [Output Only] Unique identifier for the resource; defined by the server. |
| "items": { # A list of InterconnectAttachmentsScopedList resources. |
| "a_key": { # Name of the scope containing this set of interconnect attachments. |
| "interconnectAttachments": [ # A list of interconnect attachments contained in this scope. |
| { # Represents an Interconnect Attachment (VLAN) resource. |
| # |
| # You can use Interconnect attachments (VLANS) to connect your Virtual Private |
| # Cloud networks to your on-premises networks through an Interconnect. |
| # For more information, read |
| # Creating VLAN Attachments. |
| "adminEnabled": True or False, # Determines whether this Attachment will carry packets. |
| # Not present for PARTNER_PROVIDER. |
| "attachmentGroup": "A String", # [Output Only] URL of the AttachmentGroup that includes this Attachment. |
| "bandwidth": "A String", # Provisioned bandwidth capacity for the interconnect attachment. For |
| # attachments of type DEDICATED, the user can set the bandwidth. |
| # For attachments of type PARTNER, the Google Partner that is operating |
| # the interconnect must set the bandwidth. |
| # Output only for PARTNER type, mutable for PARTNER_PROVIDER and DEDICATED, |
| # and can take one of the following values: |
| # |
| # - BPS_50M: 50 Mbit/s |
| # - BPS_100M: 100 Mbit/s |
| # - BPS_200M: 200 Mbit/s |
| # - BPS_300M: 300 Mbit/s |
| # - BPS_400M: 400 Mbit/s |
| # - BPS_500M: 500 Mbit/s |
| # - BPS_1G: 1 Gbit/s |
| # - BPS_2G: 2 Gbit/s |
| # - BPS_5G: 5 Gbit/s |
| # - BPS_10G: 10 Gbit/s |
| # - BPS_20G: 20 Gbit/s |
| # - BPS_50G: 50 Gbit/s |
| # - BPS_100G: 100 Gbit/s |
| "candidateCloudRouterIpAddress": "A String", # Single IPv4 address + prefix length to be configured on the cloud router |
| # interface for this interconnect attachment. |
| # |
| # - Both candidate_cloud_router_ip_address and |
| # candidate_customer_router_ip_address fields must be set or both must be |
| # unset. |
| # - Prefix length of both candidate_cloud_router_ip_address and |
| # candidate_customer_router_ip_address must be the same. |
| # - Max prefix length is 31. |
| "candidateCloudRouterIpv6Address": "A String", # Single IPv6 address + prefix length to be configured on the cloud router |
| # interface for this interconnect attachment. |
| # |
| # - Both candidate_cloud_router_ipv6_address and |
| # candidate_customer_router_ipv6_address fields must be set or both must be |
| # unset. |
| # - Prefix length of both candidate_cloud_router_ipv6_address and |
| # candidate_customer_router_ipv6_address must be the same. |
| # - Max prefix length is 126. |
| "candidateCustomerRouterIpAddress": "A String", # Single IPv4 address + prefix length to be configured on the customer router |
| # interface for this interconnect attachment. |
| "candidateCustomerRouterIpv6Address": "A String", # Single IPv6 address + prefix length to be configured on the customer router |
| # interface for this interconnect attachment. |
| "candidateIpv6Subnets": [ # This field is not available. |
| "A String", |
| ], |
| "candidateSubnets": [ # Input only. Up to 16 candidate prefixes that can be used to restrict the allocation |
| # of cloudRouterIpAddress and customerRouterIpAddress for this attachment. |
| # All prefixes must be within link-local address space (169.254.0.0/16) and |
| # must be /29 or shorter (/28, /27, etc). Google will attempt to select an |
| # unused /29 from the supplied candidate prefix(es). The request will fail if |
| # all possible /29s are in use on Google's edge. If not supplied, Google will |
| # randomly select an unused /29 from all of link-local space. |
| "A String", |
| ], |
| "cloudRouterIpAddress": "A String", # [Output Only] IPv4 address + prefix length to be configured on Cloud Router |
| # Interface for this interconnect attachment. |
| "cloudRouterIpv6Address": "A String", # [Output Only] IPv6 address + prefix length to be configured on Cloud |
| # Router Interface for this interconnect attachment. |
| "cloudRouterIpv6InterfaceId": "A String", # This field is not available. |
| "configurationConstraints": { # [Output Only] Constraints for this attachment, if any. The attachment does |
| # not work if these constraints are not met. |
| "bgpMd5": "A String", # [Output Only] Whether the attachment's BGP session |
| # requires/allows/disallows BGP MD5 authentication. This can take one of |
| # the following values: MD5_OPTIONAL, MD5_REQUIRED, MD5_UNSUPPORTED. |
| # |
| # For example, a Cross-Cloud Interconnect connection to a remote cloud |
| # provider that requires BGP MD5 authentication has the |
| # interconnectRemoteLocation attachment_configuration_constraints.bgp_md5 |
| # field set to MD5_REQUIRED, and that property is propagated to the |
| # attachment. Similarly, if BGP MD5 is MD5_UNSUPPORTED, an error is |
| # returned if MD5 is requested. |
| "bgpPeerAsnRanges": [ # [Output Only] List of ASN ranges that the remote location is known to |
| # support. Formatted as an array of inclusive ranges {min: min-value, max: |
| # max-value}. For example, [{min: 123, max: 123}, {min: 64512, max: 65534}] |
| # allows the peer ASN to be 123 or anything in the range 64512-65534. |
| # |
| # This field is only advisory. Although the API accepts other ranges, these |
| # are the ranges that we recommend. |
| { |
| "max": 42, |
| "min": 42, |
| }, |
| ], |
| }, |
| "creationTimestamp": "A String", # [Output Only] Creation timestamp inRFC3339 |
| # text format. |
| "customerRouterIpAddress": "A String", # [Output Only] IPv4 address + prefix length to be configured on the customer |
| # router subinterface for this interconnect attachment. |
| "customerRouterIpv6Address": "A String", # [Output Only] IPv6 address + prefix length to be configured on the |
| # customer router subinterface for this interconnect attachment. |
| "customerRouterIpv6InterfaceId": "A String", # This field is not available. |
| "dataplaneVersion": 42, # [Output Only] Dataplane version for this InterconnectAttachment. This |
| # field is only present for Dataplane version 2 and higher. Absence of this |
| # field in the API output indicates that the Dataplane is version 1. |
| "description": "A String", # An optional description of this resource. |
| "edgeAvailabilityDomain": "A String", # Input only. Desired availability domain for the attachment. Only available for type |
| # PARTNER, at creation time, and can take one of the following values: |
| # |
| # - AVAILABILITY_DOMAIN_ANY |
| # - AVAILABILITY_DOMAIN_1 |
| # - AVAILABILITY_DOMAIN_2 |
| # |
| # |
| # For improved reliability, customers should configure a pair of attachments, |
| # one per availability domain. The selected availability domain will be |
| # provided to the Partner via the pairing key, so that the provisioned |
| # circuit will lie in the specified domain. If not specified, the value will |
| # default to AVAILABILITY_DOMAIN_ANY. |
| "encryption": "A String", # Indicates the user-supplied encryption option of this VLAN attachment |
| # (interconnectAttachment). Can only be specified at attachment creation |
| # for PARTNER or DEDICATED attachments. |
| # Possible values are: |
| # |
| # - NONE - This is the default value, which means that the |
| # VLAN attachment carries unencrypted traffic. VMs are able to send |
| # traffic to, or receive traffic from, such a VLAN attachment. |
| # - IPSEC - The VLAN attachment carries only encrypted |
| # traffic that is encrypted by an IPsec device, such as an HA VPN gateway or |
| # third-party IPsec VPN. VMs cannot directly send traffic to, or receive |
| # traffic from, such a VLAN attachment. To use *HA VPN over Cloud |
| # Interconnect*, the VLAN attachment must be created with this |
| # option. |
| "googleReferenceId": "A String", # [Output Only] Google reference ID, to be used when raising support tickets |
| # with Google or otherwise to debug backend connectivity issues. |
| # [Deprecated] This field is not used. |
| "id": "A String", # [Output Only] The unique identifier for the resource. This identifier is |
| # defined by the server. |
| "interconnect": "A String", # URL of the underlying Interconnect object that this attachment's traffic |
| # will traverse through. |
| "ipsecInternalAddresses": [ # A list of URLs of addresses that have been reserved for the VLAN |
| # attachment. Used only for the VLAN attachment that has the encryption |
| # option as IPSEC. The addresses must be regional internal IP address ranges. |
| # When creating an HA VPN gateway over the VLAN attachment, if the attachment |
| # is configured to use a regional internal IP address, then the VPN gateway's |
| # IP address is allocated from the IP address range specified here. For |
| # example, if the HA VPN gateway's interface 0 is paired to this VLAN |
| # attachment, then a regional internal IP address for the VPN gateway |
| # interface 0 will be allocated from the IP address specified for this |
| # VLAN attachment. |
| # If this field is not specified when creating the VLAN attachment, then |
| # later on when creating an HA VPN gateway on this VLAN attachment, the HA |
| # VPN gateway's IP address is allocated from the regional external IP address |
| # pool. |
| "A String", |
| ], |
| "kind": "compute#interconnectAttachment", # [Output Only] Type of the resource. Alwayscompute#interconnectAttachment for interconnect attachments. |
| "l2Forwarding": { # L2 Interconnect Attachment related configuration. # L2 Interconnect Attachment related config. This field is required if the |
| # type is L2_DEDICATED. |
| # |
| # The configuration specifies how VLAN tags (like dot1q, qinq, or dot1ad) |
| # within L2 packets are mapped to the destination appliances IP addresses. |
| # The packet is then encapsulated with the appliance IP address and sent to |
| # the edge appliance. |
| "applianceMappings": { # Optional. A map of VLAN tags to appliances and optional inner mapping |
| # rules. If VLANs are not explicitly mapped to any appliance, the |
| # defaultApplianceIpAddress is used. |
| # |
| # Each VLAN tag can be a single number or a range of numbers in the range |
| # of 1 to 4094, e.g., "1" or "4001-4094". Non-empty and non-overlapping |
| # VLAN tag ranges are enforced, and violating operations will be rejected. |
| # |
| # The VLAN tags in the Ethernet header must use an ethertype value of |
| # 0x88A8 or 0x8100. |
| "a_key": { # Two-level VLAN-to-Appliance mapping rule. |
| "applianceIpAddress": "A String", # Optional. A single IPv4 or IPv6 address used as the destination IP |
| # address for ingress packets that match on a VLAN tag, but do not match |
| # a more specific inner VLAN tag. |
| # |
| # Unset field (null-value) indicates both VLAN tags are required to be |
| # mapped. Otherwise, defaultApplianceIpAddress is used. |
| "innerVlanToApplianceMappings": [ # Optional. Used to match against the inner VLAN when the packet |
| # contains two VLAN tags. |
| # |
| # A list of mapping rules from inner VLAN tags to IP addresses. If the |
| # inner VLAN is not explicitly mapped to an IP address range, the |
| # applianceIpAddress is used. |
| { # The inner VLAN-to-Appliance mapping. |
| "innerApplianceIpAddress": "A String", # Required in this object. A single IPv4 or IPv6 address used as the |
| # destination IP address for ingress packets that match on both VLAN |
| # tags. |
| "innerVlanTags": [ # Required in this object. Used to match the inner VLAN tag on the |
| # packet. Each entry can be a single number or a range of numbers in |
| # the range of 1 to 4094, e.g., ["1", "4001-4094"] is valid. Non-empty |
| # and Non-overlapping VLAN tag ranges are enforced, and violating |
| # operations will be rejected. |
| # |
| # The inner VLAN tags must have an ethertype value of 0x8100. |
| "A String", |
| ], |
| }, |
| ], |
| "name": "A String", # Optional. The name of this appliance mapping rule. |
| }, |
| }, |
| "defaultApplianceIpAddress": "A String", # Optional. A single IPv4 or IPv6 address used as the default destination |
| # IP when there is no VLAN mapping result found. |
| # |
| # Unset field (null-value) indicates the unmatched packet should be |
| # dropped. |
| "geneveHeader": { # GeneveHeader related configurations. # Optional. It represents the structure of a Geneve (Generic Network |
| # Virtualization Encapsulation) header, as defined in RFC8926. It encapsulates packets from various |
| # protocols (e.g., Ethernet, IPv4, IPv6) for use in network virtualization |
| # environments. |
| "vni": 42, # Optional. VNI is a 24-bit unique virtual network identifier, from 0 to |
| # 16,777,215. |
| }, |
| "network": "A String", # Required. Resource URL of the network to which this attachment belongs. |
| "tunnelEndpointIpAddress": "A String", # Required. A single IPv4 or IPv6 address. This address will be used as the |
| # source IP address for packets sent to the appliances, and must be used as |
| # the destination IP address for packets that should be sent out through |
| # this attachment. |
| }, |
| "labelFingerprint": "A String", # A fingerprint for the labels being applied to this InterconnectAttachment, |
| # which is essentially a hash of the labels set used for optimistic locking. |
| # The fingerprint is initially generated by Compute Engine and changes after |
| # every request to modify or update labels. You must always provide an |
| # up-to-date fingerprint hash in order to update or change labels, |
| # otherwise the request will fail with error412 conditionNotMet. |
| # |
| # To see the latest fingerprint, make a get() request to |
| # retrieve an InterconnectAttachment. |
| "labels": { # Labels for this resource. These can only be added or modified by thesetLabels method. Each label key/value pair must comply withRFC1035. |
| # Label values may be empty. |
| "a_key": "A String", |
| }, |
| "mtu": 42, # Maximum Transmission Unit (MTU), in bytes, of packets passing through this |
| # interconnect attachment. |
| # Valid values are 1440, 1460, 1500, and 8896. If not specified, |
| # the value will default to 1440. |
| "multicastEnabled": True or False, # Whether or not to permit multicast traffic for this attachment. Multicast |
| # packets will be dropped if this is not enabled. |
| "name": "A String", # Name of the resource. Provided by the client when the resource is created. |
| # The name must be 1-63 characters long, and comply withRFC1035. |
| # Specifically, the name must be 1-63 characters long and match the regular |
| # expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first |
| # character must be a lowercase letter, and all following characters must |
| # be a dash, lowercase letter, or digit, except the last character, which |
| # cannot be a dash. |
| "operationalStatus": "A String", # [Output Only] The current status of whether or not this interconnect |
| # attachment is functional, which can take one of the following values: |
| # |
| # - OS_ACTIVE: The attachment has been turned up and is ready to |
| # use. |
| # - OS_UNPROVISIONED: The attachment is not ready to use yet, |
| # because turnup is not complete. |
| "pairingKey": "A String", # [Output only for type PARTNER. Input only for PARTNER_PROVIDER. Not |
| # present for DEDICATED]. |
| # The opaque identifier of a PARTNER attachment used to initiate |
| # provisioning with a selected partner. |
| # Of the form "XXXXX/region/domain" |
| "params": { # Additional interconnect attachment parameters. # Input only. [Input Only] Additional params passed with the request, but not persisted |
| # as part of resource payload. |
| "resourceManagerTags": { # Tag keys/values directly bound to this resource. |
| # Tag keys and values have the same definition as resource |
| # manager tags. The field is allowed for INSERT |
| # only. The keys/values to set on the resource should be specified in |
| # either ID { : } or Namespaced format |
| # { : }. |
| # For example the following are valid inputs: |
| # * {"tagKeys/333" : "tagValues/444", "tagKeys/123" : "tagValues/456"} |
| # * {"123/environment" : "production", "345/abc" : "xyz"} |
| # Note: |
| # * Invalid combinations of ID & namespaced format is not supported. For |
| # instance: {"123/environment" : "tagValues/444"} is invalid. |
| # * Inconsistent format is not supported. For instance: |
| # {"tagKeys/333" : "tagValues/444", "123/env" : "prod"} is invalid. |
| "a_key": "A String", |
| }, |
| }, |
| "partnerAsn": "A String", # Optional BGP ASN for the router supplied by a Layer 3 Partner if they |
| # configured BGP on behalf of the customer. |
| # Output only for PARTNER type, input only for PARTNER_PROVIDER, not |
| # available for DEDICATED. |
| "partnerMetadata": { # Informational metadata about Partner attachments from Partners to display # Informational metadata about Partner attachments from Partners to display |
| # to customers. |
| # Output only for PARTNER type, mutable for PARTNER_PROVIDER, not |
| # available for DEDICATED. |
| # to customers. These fields are propagated from PARTNER_PROVIDER |
| # attachments to their corresponding PARTNER attachments. |
| "interconnectName": "A String", # Plain text name of the Interconnect this attachment is connected to, as |
| # displayed in the Partner's portal. For instance "Chicago 1". |
| # This value may be validated to match approved Partner values. |
| "partnerName": "A String", # Plain text name of the Partner providing this attachment. |
| # This value may be validated to match approved Partner values. |
| "portalUrl": "A String", # URL of the Partner's portal for this Attachment. Partners may customise |
| # this to be a deep link to the specific resource on the Partner portal. |
| # This value may be validated to match approved Partner values. |
| }, |
| "privateInterconnectInfo": { # Information for an interconnect attachment when this belongs to an # [Output Only] Information specific to an InterconnectAttachment. |
| # This property is populated if the interconnect that |
| # this is attached to is of type DEDICATED. |
| # interconnect of type DEDICATED. |
| "tag8021q": 42, # [Output Only] 802.1q encapsulation tag to be used for traffic between |
| # Google and the customer, going to and from this network and region. |
| }, |
| "region": "A String", # [Output Only] URL of the region where the regional interconnect attachment |
| # resides. |
| # You must specify this field as part of the HTTP request URL. It is |
| # not settable as a field in the request body. |
| "remoteService": "A String", # [Output Only] |
| # If the attachment is on a Cross-Cloud Interconnect connection, this field |
| # contains the interconnect's remote location service provider. Example |
| # values: "Amazon Web Services" "Microsoft Azure". |
| # |
| # The field is set only for attachments on Cross-Cloud Interconnect |
| # connections. Its value is copied from the InterconnectRemoteLocation |
| # remoteService field. |
| "router": "A String", # URL of the Cloud Router to be used for dynamic routing. This router must be |
| # in the same region as this InterconnectAttachment. The |
| # InterconnectAttachment will automatically connect the Interconnect to the |
| # network & region within which the Cloud Router is configured. |
| "satisfiesPzs": True or False, # [Output Only] Reserved for future use. |
| "selfLink": "A String", # [Output Only] Server-defined URL for the resource. |
| "selfLinkWithId": "A String", # [Output Only] Server-defined URL for this resource with the resource id. |
| "stackType": "A String", # The stack type for this interconnect attachment to identify whether the |
| # IPv6 feature is enabled or not. If not specified, IPV4_ONLY |
| # will be used. |
| # |
| # This field can be both set at interconnect attachments creation and |
| # update interconnect attachment operations. |
| "state": "A String", # [Output Only] The current state of this attachment's functionality. |
| # Enum values ACTIVE and UNPROVISIONED are shared by DEDICATED/PRIVATE, |
| # PARTNER, and PARTNER_PROVIDER interconnect attachments, while enum values |
| # PENDING_PARTNER, PARTNER_REQUEST_RECEIVED, and PENDING_CUSTOMER are used |
| # for only PARTNER and PARTNER_PROVIDER interconnect attachments. |
| # This state can take one of the following values: |
| # |
| # - ACTIVE: The attachment has been turned up and is ready to use. |
| # - UNPROVISIONED: The attachment is not ready to use yet, because turnup |
| # is not complete. |
| # - PENDING_PARTNER: A newly-created PARTNER attachment that has not yet |
| # been configured on the Partner side. |
| # - PARTNER_REQUEST_RECEIVED: A PARTNER attachment is in the process of |
| # provisioning after a PARTNER_PROVIDER attachment was created that |
| # references it. |
| # - PENDING_CUSTOMER: A PARTNER or PARTNER_PROVIDER |
| # attachment that is waiting for a customer to activate it. |
| # - DEFUNCT: |
| # The attachment was deleted externally and is no longer functional. This |
| # could be because the associated Interconnect was removed, or because the |
| # other side of a Partner attachment was deleted. |
| "subnetLength": 42, # Input only. Length of the IPv4 subnet mask. |
| # Allowed values: |
| # |
| # |
| # - 29 (default) |
| # - 30 |
| # |
| # The default value is 29, except for Cross-Cloud Interconnect |
| # connections that use an InterconnectRemoteLocation with a |
| # constraints.subnetLengthRange.min equal to 30. For example, |
| # connections that use an Azure remote location fall into this |
| # category. In these cases, the default value is 30, and requesting |
| # 29 returns an error. |
| # |
| # Where both 29 and 30 are allowed, 29 is preferred, because it gives |
| # Google Cloud Support more debugging visibility. |
| "type": "A String", # The type of interconnect attachment this is, which can take one of the |
| # following values: |
| # |
| # - DEDICATED: an attachment to a Dedicated Interconnect. |
| # - PARTNER: an attachment to a Partner Interconnect, created by the |
| # customer. |
| # - PARTNER_PROVIDER: an attachment to a Partner Interconnect, created by |
| # the partner. |
| # |
| # - L2_DEDICATED: a L2 attachment to a Dedicated Interconnect. |
| "vlanTag8021q": 42, # The IEEE 802.1Q VLAN tag for this attachment, in the range 2-4093. |
| # Only specified at creation time. |
| }, |
| ], |
| "warning": { # Informational warning which replaces the list of addresses when |
| # the list is empty. |
| "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute |
| # Engine returns NO_RESULTS_ON_PAGE if there |
| # are no results in the response. |
| "data": [ # [Output Only] Metadata about this warning in key: |
| # value format. For example: |
| # |
| # "data": [ |
| # { |
| # "key": "scope", |
| # "value": "zones/us-east1-d" |
| # } |
| { |
| "key": "A String", # [Output Only] A key that provides more detail on the warning being |
| # returned. For example, for warnings where there are no results in a list |
| # request for a particular zone, this key might be scope and |
| # the key value might be the zone name. Other examples might be a key |
| # indicating a deprecated resource and a suggested replacement, or a |
| # warning about invalid network settings (for example, if an instance |
| # attempts to perform IP forwarding but is not enabled for IP forwarding). |
| "value": "A String", # [Output Only] A warning data value corresponding to the key. |
| }, |
| ], |
| "message": "A String", # [Output Only] A human-readable description of the warning code. |
| }, |
| }, |
| }, |
| "kind": "compute#interconnectAttachmentAggregatedList", # [Output Only] Type of resource. Alwayscompute#interconnectAttachmentAggregatedList for aggregated |
| # lists of interconnect attachments. |
| "nextPageToken": "A String", # [Output Only] This token allows you to get the next page of results for |
| # list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for |
| # the query parameter pageToken in the next list request. |
| # Subsequent list requests will have their own nextPageToken to |
| # continue paging through the results. |
| "selfLink": "A String", # [Output Only] Server-defined URL for this resource. |
| "unreachables": [ # [Output Only] Unreachable resources. |
| "A String", |
| ], |
| "warning": { # [Output Only] Informational warning message. |
| "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute |
| # Engine returns NO_RESULTS_ON_PAGE if there |
| # are no results in the response. |
| "data": [ # [Output Only] Metadata about this warning in key: |
| # value format. For example: |
| # |
| # "data": [ |
| # { |
| # "key": "scope", |
| # "value": "zones/us-east1-d" |
| # } |
| { |
| "key": "A String", # [Output Only] A key that provides more detail on the warning being |
| # returned. For example, for warnings where there are no results in a list |
| # request for a particular zone, this key might be scope and |
| # the key value might be the zone name. Other examples might be a key |
| # indicating a deprecated resource and a suggested replacement, or a |
| # warning about invalid network settings (for example, if an instance |
| # attempts to perform IP forwarding but is not enabled for IP forwarding). |
| "value": "A String", # [Output Only] A warning data value corresponding to the key. |
| }, |
| ], |
| "message": "A String", # [Output Only] A human-readable description of the warning code. |
| }, |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="aggregatedList_next">aggregatedList_next()</code> |
| <pre>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. |
| </pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="close">close()</code> |
| <pre>Close httplib2 connections.</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="delete">delete(project, region, interconnectAttachment, requestId=None, x__xgafv=None)</code> |
| <pre>Deletes the specified interconnect attachment. |
| |
| Args: |
| project: string, Project ID for this request. (required) |
| region: string, Name of the region for this request. (required) |
| interconnectAttachment: string, Name of the interconnect attachment to delete. (required) |
| requestId: string, An optional request ID to identify requests. Specify a unique request ID so |
| that if you must retry your request, the server will know to ignore the |
| request if it has already been completed. |
| |
| For example, consider a situation where you make an initial request and |
| the request times out. If you make the request again with the same |
| request ID, the server can check if original operation with the same |
| request ID was received, and if so, will ignore the second request. This |
| prevents clients from accidentally creating duplicate commitments. |
| |
| The request ID must be |
| a valid UUID with the exception that zero UUID is not supported |
| (00000000-0000-0000-0000-000000000000). |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # Represents an Operation resource. |
| # |
| # Google Compute Engine has three Operation resources: |
| # |
| # * [Global](/compute/docs/reference/rest/alpha/globalOperations) |
| # * [Regional](/compute/docs/reference/rest/alpha/regionOperations) |
| # * [Zonal](/compute/docs/reference/rest/alpha/zoneOperations) |
| # |
| # You can use an operation resource to manage asynchronous API requests. |
| # For more information, readHandling |
| # API responses. |
| # |
| # Operations can be global, regional or zonal. |
| # |
| # - For global operations, use the `globalOperations` |
| # resource. |
| # - For regional operations, use the |
| # `regionOperations` resource. |
| # - For zonal operations, use |
| # the `zoneOperations` resource. |
| # |
| # |
| # |
| # For more information, read |
| # Global, Regional, and Zonal Resources. |
| # |
| # Note that completed Operation resources have a limited |
| # retention period. |
| "clientOperationId": "A String", # [Output Only] The value of `requestId` if you provided it in the request. |
| # Not present otherwise. |
| "creationTimestamp": "A String", # [Deprecated] This field is deprecated. |
| "description": "A String", # [Output Only] A textual description of the operation, which is |
| # set when the operation is created. |
| "endTime": "A String", # [Output Only] The time that this operation was completed. This value is inRFC3339 |
| # text format. |
| "error": { # [Output Only] If errors are generated during processing of the operation, |
| # this field will be populated. |
| "errors": [ # [Output Only] The array of errors encountered while processing this |
| # operation. |
| { |
| "code": "A String", # [Output Only] The error type identifier for this error. |
| "errorDetails": [ # [Output Only] An optional list of messages that contain the error |
| # details. There is a set of defined message types to use for providing |
| # details.The syntax depends on the error code. For example, |
| # QuotaExceededInfo will have details when the error code is |
| # QUOTA_EXCEEDED. |
| { |
| "errorInfo": { # Describes the cause of the error with structured details. |
| # |
| # Example of an error when contacting the "pubsub.googleapis.com" API when it |
| # is not enabled: |
| # |
| # { "reason": "API_DISABLED" |
| # "domain": "googleapis.com" |
| # "metadata": { |
| # "resource": "projects/123", |
| # "service": "pubsub.googleapis.com" |
| # } |
| # } |
| # |
| # This response indicates that the pubsub.googleapis.com API is not enabled. |
| # |
| # Example of an error that is returned when attempting to create a Spanner |
| # instance in a region that is out of stock: |
| # |
| # { "reason": "STOCKOUT" |
| # "domain": "spanner.googleapis.com", |
| # "metadata": { |
| # "availableRegions": "us-central1,us-east2" |
| # } |
| # } |
| "domain": "A String", # The logical grouping to which the "reason" belongs. The error domain |
| # is typically the registered service name of the tool or product that |
| # generates the error. Example: "pubsub.googleapis.com". If the error is |
| # generated by some common infrastructure, the error domain must be a |
| # globally unique value that identifies the infrastructure. For Google API |
| # infrastructure, the error domain is "googleapis.com". |
| "metadatas": { # Additional structured details about this error. |
| # |
| # Keys must match a regular expression of `a-z+` but should |
| # ideally be lowerCamelCase. Also, they must be limited to 64 characters in |
| # length. When identifying the current value of an exceeded limit, the units |
| # should be contained in the key, not the value. For example, rather than |
| # `{"instanceLimit": "100/request"}`, should be returned as, |
| # `{"instanceLimitPerRequest": "100"}`, if the client exceeds the number of |
| # instances that can be created in a single (batch) request. |
| "a_key": "A String", |
| }, |
| "reason": "A String", # The reason of the error. This is a constant value that identifies the |
| # proximate cause of the error. Error reasons are unique within a particular |
| # domain of errors. This should be at most 63 characters and match a |
| # regular expression of `A-Z+[A-Z0-9]`, which represents |
| # UPPER_SNAKE_CASE. |
| }, |
| "help": { # Provides links to documentation or for performing an out of band action. |
| # |
| # For example, if a quota check failed with an error indicating the calling |
| # project hasn't enabled the accessed service, this can contain a URL pointing |
| # directly to the right place in the developer console to flip the bit. |
| "links": [ # URL(s) pointing to additional information on handling the current error. |
| { # Describes a URL link. |
| "description": "A String", # Describes what the link offers. |
| "url": "A String", # The URL of the link. |
| }, |
| ], |
| }, |
| "localizedMessage": { # Provides a localized error message that is safe to return to the user |
| # which can be attached to an RPC error. |
| "locale": "A String", # The locale used following the specification defined at |
| # https://www.rfc-editor.org/rfc/bcp/bcp47.txt. |
| # Examples are: "en-US", "fr-CH", "es-MX" |
| "message": "A String", # The localized error message in the above locale. |
| }, |
| "quotaInfo": { # Additional details for quota exceeded error for resource quota. |
| "dimensions": { # The map holding related quota dimensions. |
| "a_key": "A String", |
| }, |
| "futureLimit": 3.14, # Future quota limit being rolled out. The limit's unit depends on the quota |
| # type or metric. |
| "limit": 3.14, # Current effective quota limit. The limit's unit depends on the quota type |
| # or metric. |
| "limitName": "A String", # The name of the quota limit. |
| "metricName": "A String", # The Compute Engine quota metric name. |
| "rolloutStatus": "A String", # Rollout status of the future quota limit. |
| }, |
| }, |
| ], |
| "location": "A String", # [Output Only] Indicates the field in the request that caused the error. |
| # This property is optional. |
| "message": "A String", # [Output Only] An optional, human-readable error message. |
| }, |
| ], |
| }, |
| "httpErrorMessage": "A String", # [Output Only] If the operation fails, this field contains the HTTP error |
| # message that was returned, such as `NOT FOUND`. |
| "httpErrorStatusCode": 42, # [Output Only] If the operation fails, this field contains the HTTP error |
| # status code that was returned. For example, a `404` means the |
| # resource was not found. |
| "id": "A String", # [Output Only] The unique identifier for the operation. This identifier is |
| # defined by the server. |
| "insertTime": "A String", # [Output Only] The time that this operation was requested. |
| # This value is inRFC3339 |
| # text format. |
| "instancesBulkInsertOperationMetadata": { |
| "perLocationStatus": { # Status information per location (location name is key). |
| # Example key: zones/us-central1-a |
| "a_key": { |
| "createdVmCount": 42, # [Output Only] Count of VMs successfully created so far. |
| "deletedVmCount": 42, # [Output Only] Count of VMs that got deleted during rollback. |
| "failedToCreateVmCount": 42, # [Output Only] Count of VMs that started creating but encountered an |
| # error. |
| "status": "A String", # [Output Only] Creation status of BulkInsert operation - information |
| # if the flow is rolling forward or rolling back. |
| "targetVmCount": 42, # [Output Only] Count of VMs originally planned to be created. |
| }, |
| }, |
| }, |
| "kind": "compute#operation", # [Output Only] Type of the resource. Always `compute#operation` for |
| # Operation resources. |
| "name": "A String", # [Output Only] Name of the operation. |
| "operationGroupId": "A String", # [Output Only] An ID that represents a group of operations, such as when a |
| # group of operations results from a `bulkInsert` API request. |
| "operationType": "A String", # [Output Only] The type of operation, such as `insert`, |
| # `update`, or `delete`, and so on. |
| "progress": 42, # [Output Only] An optional progress indicator that ranges from 0 to 100. |
| # There is no requirement that this be linear or support any granularity of |
| # operations. This should not be used to guess when the operation will be |
| # complete. This number should monotonically increase as the operation |
| # progresses. |
| "region": "A String", # [Output Only] The URL of the region where the operation resides. Only |
| # applicable when performing regional operations. |
| "selfLink": "A String", # [Output Only] Server-defined URL for the resource. |
| "selfLinkWithId": "A String", # [Output Only] Server-defined URL for this resource with the resource id. |
| "setCommonInstanceMetadataOperationMetadata": { # [Output Only] If the operation is for projects.setCommonInstanceMetadata, |
| # this field will contain information on all underlying zonal actions and |
| # their state. |
| "clientOperationId": "A String", # [Output Only] The client operation id. |
| "perLocationOperations": { # [Output Only] Status information per location (location name is key). |
| # Example key: zones/us-central1-a |
| "a_key": { |
| "error": { # The `Status` type defines a logical error model that is suitable for # [Output Only] If state is `ABANDONED` or `FAILED`, this field is |
| # populated. |
| # different programming environments, including REST APIs and RPC APIs. It is |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains |
| # three pieces of data: error code, error message, and error details. |
| # |
| # You can find out more about this error model and how to work with it in the |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. |
| "details": [ # A list of messages that carry the error details. There is a common set of |
| # message types for APIs to use. |
| { |
| "a_key": "", # Properties of the object. Contains field @type with type URL. |
| }, |
| ], |
| "message": "A String", # A developer-facing error message, which should be in English. Any |
| # user-facing error message should be localized and sent in the |
| # google.rpc.Status.details field, or localized by the client. |
| }, |
| "state": "A String", # [Output Only] Status of the action, which can be one of the following: |
| # `PROPAGATING`, `PROPAGATED`, `ABANDONED`, `FAILED`, or `DONE`. |
| }, |
| }, |
| }, |
| "startTime": "A String", # [Output Only] The time that this operation was started by the server. |
| # This value is inRFC3339 |
| # text format. |
| "status": "A String", # [Output Only] The status of the operation, which can be one of the |
| # following: |
| # `PENDING`, `RUNNING`, or `DONE`. |
| "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the |
| # operation. |
| "targetId": "A String", # [Output Only] The unique target ID, which identifies a specific incarnation |
| # of the target resource. |
| "targetLink": "A String", # [Output Only] The URL of the resource that the operation modifies. For |
| # operations related to creating a snapshot, this points to the disk |
| # that the snapshot was created from. |
| "user": "A String", # [Output Only] User who requested the operation, for example: |
| # `[email protected]` or |
| # `alice_smith_identifier (global/workforcePools/example-com-us-employees)`. |
| "warnings": [ # [Output Only] If warning messages are generated during processing of the |
| # operation, this field will be populated. |
| { |
| "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute |
| # Engine returns NO_RESULTS_ON_PAGE if there |
| # are no results in the response. |
| "data": [ # [Output Only] Metadata about this warning in key: |
| # value format. For example: |
| # |
| # "data": [ |
| # { |
| # "key": "scope", |
| # "value": "zones/us-east1-d" |
| # } |
| { |
| "key": "A String", # [Output Only] A key that provides more detail on the warning being |
| # returned. For example, for warnings where there are no results in a list |
| # request for a particular zone, this key might be scope and |
| # the key value might be the zone name. Other examples might be a key |
| # indicating a deprecated resource and a suggested replacement, or a |
| # warning about invalid network settings (for example, if an instance |
| # attempts to perform IP forwarding but is not enabled for IP forwarding). |
| "value": "A String", # [Output Only] A warning data value corresponding to the key. |
| }, |
| ], |
| "message": "A String", # [Output Only] A human-readable description of the warning code. |
| }, |
| ], |
| "zone": "A String", # [Output Only] The URL of the zone where the operation resides. Only |
| # applicable when performing per-zone operations. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="get">get(project, region, interconnectAttachment, x__xgafv=None)</code> |
| <pre>Returns the specified interconnect attachment. |
| |
| Args: |
| project: string, Project ID for this request. (required) |
| region: string, Name of the region for this request. (required) |
| interconnectAttachment: string, Name of the interconnect attachment to return. (required) |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # Represents an Interconnect Attachment (VLAN) resource. |
| # |
| # You can use Interconnect attachments (VLANS) to connect your Virtual Private |
| # Cloud networks to your on-premises networks through an Interconnect. |
| # For more information, read |
| # Creating VLAN Attachments. |
| "adminEnabled": True or False, # Determines whether this Attachment will carry packets. |
| # Not present for PARTNER_PROVIDER. |
| "attachmentGroup": "A String", # [Output Only] URL of the AttachmentGroup that includes this Attachment. |
| "bandwidth": "A String", # Provisioned bandwidth capacity for the interconnect attachment. For |
| # attachments of type DEDICATED, the user can set the bandwidth. |
| # For attachments of type PARTNER, the Google Partner that is operating |
| # the interconnect must set the bandwidth. |
| # Output only for PARTNER type, mutable for PARTNER_PROVIDER and DEDICATED, |
| # and can take one of the following values: |
| # |
| # - BPS_50M: 50 Mbit/s |
| # - BPS_100M: 100 Mbit/s |
| # - BPS_200M: 200 Mbit/s |
| # - BPS_300M: 300 Mbit/s |
| # - BPS_400M: 400 Mbit/s |
| # - BPS_500M: 500 Mbit/s |
| # - BPS_1G: 1 Gbit/s |
| # - BPS_2G: 2 Gbit/s |
| # - BPS_5G: 5 Gbit/s |
| # - BPS_10G: 10 Gbit/s |
| # - BPS_20G: 20 Gbit/s |
| # - BPS_50G: 50 Gbit/s |
| # - BPS_100G: 100 Gbit/s |
| "candidateCloudRouterIpAddress": "A String", # Single IPv4 address + prefix length to be configured on the cloud router |
| # interface for this interconnect attachment. |
| # |
| # - Both candidate_cloud_router_ip_address and |
| # candidate_customer_router_ip_address fields must be set or both must be |
| # unset. |
| # - Prefix length of both candidate_cloud_router_ip_address and |
| # candidate_customer_router_ip_address must be the same. |
| # - Max prefix length is 31. |
| "candidateCloudRouterIpv6Address": "A String", # Single IPv6 address + prefix length to be configured on the cloud router |
| # interface for this interconnect attachment. |
| # |
| # - Both candidate_cloud_router_ipv6_address and |
| # candidate_customer_router_ipv6_address fields must be set or both must be |
| # unset. |
| # - Prefix length of both candidate_cloud_router_ipv6_address and |
| # candidate_customer_router_ipv6_address must be the same. |
| # - Max prefix length is 126. |
| "candidateCustomerRouterIpAddress": "A String", # Single IPv4 address + prefix length to be configured on the customer router |
| # interface for this interconnect attachment. |
| "candidateCustomerRouterIpv6Address": "A String", # Single IPv6 address + prefix length to be configured on the customer router |
| # interface for this interconnect attachment. |
| "candidateIpv6Subnets": [ # This field is not available. |
| "A String", |
| ], |
| "candidateSubnets": [ # Input only. Up to 16 candidate prefixes that can be used to restrict the allocation |
| # of cloudRouterIpAddress and customerRouterIpAddress for this attachment. |
| # All prefixes must be within link-local address space (169.254.0.0/16) and |
| # must be /29 or shorter (/28, /27, etc). Google will attempt to select an |
| # unused /29 from the supplied candidate prefix(es). The request will fail if |
| # all possible /29s are in use on Google's edge. If not supplied, Google will |
| # randomly select an unused /29 from all of link-local space. |
| "A String", |
| ], |
| "cloudRouterIpAddress": "A String", # [Output Only] IPv4 address + prefix length to be configured on Cloud Router |
| # Interface for this interconnect attachment. |
| "cloudRouterIpv6Address": "A String", # [Output Only] IPv6 address + prefix length to be configured on Cloud |
| # Router Interface for this interconnect attachment. |
| "cloudRouterIpv6InterfaceId": "A String", # This field is not available. |
| "configurationConstraints": { # [Output Only] Constraints for this attachment, if any. The attachment does |
| # not work if these constraints are not met. |
| "bgpMd5": "A String", # [Output Only] Whether the attachment's BGP session |
| # requires/allows/disallows BGP MD5 authentication. This can take one of |
| # the following values: MD5_OPTIONAL, MD5_REQUIRED, MD5_UNSUPPORTED. |
| # |
| # For example, a Cross-Cloud Interconnect connection to a remote cloud |
| # provider that requires BGP MD5 authentication has the |
| # interconnectRemoteLocation attachment_configuration_constraints.bgp_md5 |
| # field set to MD5_REQUIRED, and that property is propagated to the |
| # attachment. Similarly, if BGP MD5 is MD5_UNSUPPORTED, an error is |
| # returned if MD5 is requested. |
| "bgpPeerAsnRanges": [ # [Output Only] List of ASN ranges that the remote location is known to |
| # support. Formatted as an array of inclusive ranges {min: min-value, max: |
| # max-value}. For example, [{min: 123, max: 123}, {min: 64512, max: 65534}] |
| # allows the peer ASN to be 123 or anything in the range 64512-65534. |
| # |
| # This field is only advisory. Although the API accepts other ranges, these |
| # are the ranges that we recommend. |
| { |
| "max": 42, |
| "min": 42, |
| }, |
| ], |
| }, |
| "creationTimestamp": "A String", # [Output Only] Creation timestamp inRFC3339 |
| # text format. |
| "customerRouterIpAddress": "A String", # [Output Only] IPv4 address + prefix length to be configured on the customer |
| # router subinterface for this interconnect attachment. |
| "customerRouterIpv6Address": "A String", # [Output Only] IPv6 address + prefix length to be configured on the |
| # customer router subinterface for this interconnect attachment. |
| "customerRouterIpv6InterfaceId": "A String", # This field is not available. |
| "dataplaneVersion": 42, # [Output Only] Dataplane version for this InterconnectAttachment. This |
| # field is only present for Dataplane version 2 and higher. Absence of this |
| # field in the API output indicates that the Dataplane is version 1. |
| "description": "A String", # An optional description of this resource. |
| "edgeAvailabilityDomain": "A String", # Input only. Desired availability domain for the attachment. Only available for type |
| # PARTNER, at creation time, and can take one of the following values: |
| # |
| # - AVAILABILITY_DOMAIN_ANY |
| # - AVAILABILITY_DOMAIN_1 |
| # - AVAILABILITY_DOMAIN_2 |
| # |
| # |
| # For improved reliability, customers should configure a pair of attachments, |
| # one per availability domain. The selected availability domain will be |
| # provided to the Partner via the pairing key, so that the provisioned |
| # circuit will lie in the specified domain. If not specified, the value will |
| # default to AVAILABILITY_DOMAIN_ANY. |
| "encryption": "A String", # Indicates the user-supplied encryption option of this VLAN attachment |
| # (interconnectAttachment). Can only be specified at attachment creation |
| # for PARTNER or DEDICATED attachments. |
| # Possible values are: |
| # |
| # - NONE - This is the default value, which means that the |
| # VLAN attachment carries unencrypted traffic. VMs are able to send |
| # traffic to, or receive traffic from, such a VLAN attachment. |
| # - IPSEC - The VLAN attachment carries only encrypted |
| # traffic that is encrypted by an IPsec device, such as an HA VPN gateway or |
| # third-party IPsec VPN. VMs cannot directly send traffic to, or receive |
| # traffic from, such a VLAN attachment. To use *HA VPN over Cloud |
| # Interconnect*, the VLAN attachment must be created with this |
| # option. |
| "googleReferenceId": "A String", # [Output Only] Google reference ID, to be used when raising support tickets |
| # with Google or otherwise to debug backend connectivity issues. |
| # [Deprecated] This field is not used. |
| "id": "A String", # [Output Only] The unique identifier for the resource. This identifier is |
| # defined by the server. |
| "interconnect": "A String", # URL of the underlying Interconnect object that this attachment's traffic |
| # will traverse through. |
| "ipsecInternalAddresses": [ # A list of URLs of addresses that have been reserved for the VLAN |
| # attachment. Used only for the VLAN attachment that has the encryption |
| # option as IPSEC. The addresses must be regional internal IP address ranges. |
| # When creating an HA VPN gateway over the VLAN attachment, if the attachment |
| # is configured to use a regional internal IP address, then the VPN gateway's |
| # IP address is allocated from the IP address range specified here. For |
| # example, if the HA VPN gateway's interface 0 is paired to this VLAN |
| # attachment, then a regional internal IP address for the VPN gateway |
| # interface 0 will be allocated from the IP address specified for this |
| # VLAN attachment. |
| # If this field is not specified when creating the VLAN attachment, then |
| # later on when creating an HA VPN gateway on this VLAN attachment, the HA |
| # VPN gateway's IP address is allocated from the regional external IP address |
| # pool. |
| "A String", |
| ], |
| "kind": "compute#interconnectAttachment", # [Output Only] Type of the resource. Alwayscompute#interconnectAttachment for interconnect attachments. |
| "l2Forwarding": { # L2 Interconnect Attachment related configuration. # L2 Interconnect Attachment related config. This field is required if the |
| # type is L2_DEDICATED. |
| # |
| # The configuration specifies how VLAN tags (like dot1q, qinq, or dot1ad) |
| # within L2 packets are mapped to the destination appliances IP addresses. |
| # The packet is then encapsulated with the appliance IP address and sent to |
| # the edge appliance. |
| "applianceMappings": { # Optional. A map of VLAN tags to appliances and optional inner mapping |
| # rules. If VLANs are not explicitly mapped to any appliance, the |
| # defaultApplianceIpAddress is used. |
| # |
| # Each VLAN tag can be a single number or a range of numbers in the range |
| # of 1 to 4094, e.g., "1" or "4001-4094". Non-empty and non-overlapping |
| # VLAN tag ranges are enforced, and violating operations will be rejected. |
| # |
| # The VLAN tags in the Ethernet header must use an ethertype value of |
| # 0x88A8 or 0x8100. |
| "a_key": { # Two-level VLAN-to-Appliance mapping rule. |
| "applianceIpAddress": "A String", # Optional. A single IPv4 or IPv6 address used as the destination IP |
| # address for ingress packets that match on a VLAN tag, but do not match |
| # a more specific inner VLAN tag. |
| # |
| # Unset field (null-value) indicates both VLAN tags are required to be |
| # mapped. Otherwise, defaultApplianceIpAddress is used. |
| "innerVlanToApplianceMappings": [ # Optional. Used to match against the inner VLAN when the packet |
| # contains two VLAN tags. |
| # |
| # A list of mapping rules from inner VLAN tags to IP addresses. If the |
| # inner VLAN is not explicitly mapped to an IP address range, the |
| # applianceIpAddress is used. |
| { # The inner VLAN-to-Appliance mapping. |
| "innerApplianceIpAddress": "A String", # Required in this object. A single IPv4 or IPv6 address used as the |
| # destination IP address for ingress packets that match on both VLAN |
| # tags. |
| "innerVlanTags": [ # Required in this object. Used to match the inner VLAN tag on the |
| # packet. Each entry can be a single number or a range of numbers in |
| # the range of 1 to 4094, e.g., ["1", "4001-4094"] is valid. Non-empty |
| # and Non-overlapping VLAN tag ranges are enforced, and violating |
| # operations will be rejected. |
| # |
| # The inner VLAN tags must have an ethertype value of 0x8100. |
| "A String", |
| ], |
| }, |
| ], |
| "name": "A String", # Optional. The name of this appliance mapping rule. |
| }, |
| }, |
| "defaultApplianceIpAddress": "A String", # Optional. A single IPv4 or IPv6 address used as the default destination |
| # IP when there is no VLAN mapping result found. |
| # |
| # Unset field (null-value) indicates the unmatched packet should be |
| # dropped. |
| "geneveHeader": { # GeneveHeader related configurations. # Optional. It represents the structure of a Geneve (Generic Network |
| # Virtualization Encapsulation) header, as defined in RFC8926. It encapsulates packets from various |
| # protocols (e.g., Ethernet, IPv4, IPv6) for use in network virtualization |
| # environments. |
| "vni": 42, # Optional. VNI is a 24-bit unique virtual network identifier, from 0 to |
| # 16,777,215. |
| }, |
| "network": "A String", # Required. Resource URL of the network to which this attachment belongs. |
| "tunnelEndpointIpAddress": "A String", # Required. A single IPv4 or IPv6 address. This address will be used as the |
| # source IP address for packets sent to the appliances, and must be used as |
| # the destination IP address for packets that should be sent out through |
| # this attachment. |
| }, |
| "labelFingerprint": "A String", # A fingerprint for the labels being applied to this InterconnectAttachment, |
| # which is essentially a hash of the labels set used for optimistic locking. |
| # The fingerprint is initially generated by Compute Engine and changes after |
| # every request to modify or update labels. You must always provide an |
| # up-to-date fingerprint hash in order to update or change labels, |
| # otherwise the request will fail with error412 conditionNotMet. |
| # |
| # To see the latest fingerprint, make a get() request to |
| # retrieve an InterconnectAttachment. |
| "labels": { # Labels for this resource. These can only be added or modified by thesetLabels method. Each label key/value pair must comply withRFC1035. |
| # Label values may be empty. |
| "a_key": "A String", |
| }, |
| "mtu": 42, # Maximum Transmission Unit (MTU), in bytes, of packets passing through this |
| # interconnect attachment. |
| # Valid values are 1440, 1460, 1500, and 8896. If not specified, |
| # the value will default to 1440. |
| "multicastEnabled": True or False, # Whether or not to permit multicast traffic for this attachment. Multicast |
| # packets will be dropped if this is not enabled. |
| "name": "A String", # Name of the resource. Provided by the client when the resource is created. |
| # The name must be 1-63 characters long, and comply withRFC1035. |
| # Specifically, the name must be 1-63 characters long and match the regular |
| # expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first |
| # character must be a lowercase letter, and all following characters must |
| # be a dash, lowercase letter, or digit, except the last character, which |
| # cannot be a dash. |
| "operationalStatus": "A String", # [Output Only] The current status of whether or not this interconnect |
| # attachment is functional, which can take one of the following values: |
| # |
| # - OS_ACTIVE: The attachment has been turned up and is ready to |
| # use. |
| # - OS_UNPROVISIONED: The attachment is not ready to use yet, |
| # because turnup is not complete. |
| "pairingKey": "A String", # [Output only for type PARTNER. Input only for PARTNER_PROVIDER. Not |
| # present for DEDICATED]. |
| # The opaque identifier of a PARTNER attachment used to initiate |
| # provisioning with a selected partner. |
| # Of the form "XXXXX/region/domain" |
| "params": { # Additional interconnect attachment parameters. # Input only. [Input Only] Additional params passed with the request, but not persisted |
| # as part of resource payload. |
| "resourceManagerTags": { # Tag keys/values directly bound to this resource. |
| # Tag keys and values have the same definition as resource |
| # manager tags. The field is allowed for INSERT |
| # only. The keys/values to set on the resource should be specified in |
| # either ID { : } or Namespaced format |
| # { : }. |
| # For example the following are valid inputs: |
| # * {"tagKeys/333" : "tagValues/444", "tagKeys/123" : "tagValues/456"} |
| # * {"123/environment" : "production", "345/abc" : "xyz"} |
| # Note: |
| # * Invalid combinations of ID & namespaced format is not supported. For |
| # instance: {"123/environment" : "tagValues/444"} is invalid. |
| # * Inconsistent format is not supported. For instance: |
| # {"tagKeys/333" : "tagValues/444", "123/env" : "prod"} is invalid. |
| "a_key": "A String", |
| }, |
| }, |
| "partnerAsn": "A String", # Optional BGP ASN for the router supplied by a Layer 3 Partner if they |
| # configured BGP on behalf of the customer. |
| # Output only for PARTNER type, input only for PARTNER_PROVIDER, not |
| # available for DEDICATED. |
| "partnerMetadata": { # Informational metadata about Partner attachments from Partners to display # Informational metadata about Partner attachments from Partners to display |
| # to customers. |
| # Output only for PARTNER type, mutable for PARTNER_PROVIDER, not |
| # available for DEDICATED. |
| # to customers. These fields are propagated from PARTNER_PROVIDER |
| # attachments to their corresponding PARTNER attachments. |
| "interconnectName": "A String", # Plain text name of the Interconnect this attachment is connected to, as |
| # displayed in the Partner's portal. For instance "Chicago 1". |
| # This value may be validated to match approved Partner values. |
| "partnerName": "A String", # Plain text name of the Partner providing this attachment. |
| # This value may be validated to match approved Partner values. |
| "portalUrl": "A String", # URL of the Partner's portal for this Attachment. Partners may customise |
| # this to be a deep link to the specific resource on the Partner portal. |
| # This value may be validated to match approved Partner values. |
| }, |
| "privateInterconnectInfo": { # Information for an interconnect attachment when this belongs to an # [Output Only] Information specific to an InterconnectAttachment. |
| # This property is populated if the interconnect that |
| # this is attached to is of type DEDICATED. |
| # interconnect of type DEDICATED. |
| "tag8021q": 42, # [Output Only] 802.1q encapsulation tag to be used for traffic between |
| # Google and the customer, going to and from this network and region. |
| }, |
| "region": "A String", # [Output Only] URL of the region where the regional interconnect attachment |
| # resides. |
| # You must specify this field as part of the HTTP request URL. It is |
| # not settable as a field in the request body. |
| "remoteService": "A String", # [Output Only] |
| # If the attachment is on a Cross-Cloud Interconnect connection, this field |
| # contains the interconnect's remote location service provider. Example |
| # values: "Amazon Web Services" "Microsoft Azure". |
| # |
| # The field is set only for attachments on Cross-Cloud Interconnect |
| # connections. Its value is copied from the InterconnectRemoteLocation |
| # remoteService field. |
| "router": "A String", # URL of the Cloud Router to be used for dynamic routing. This router must be |
| # in the same region as this InterconnectAttachment. The |
| # InterconnectAttachment will automatically connect the Interconnect to the |
| # network & region within which the Cloud Router is configured. |
| "satisfiesPzs": True or False, # [Output Only] Reserved for future use. |
| "selfLink": "A String", # [Output Only] Server-defined URL for the resource. |
| "selfLinkWithId": "A String", # [Output Only] Server-defined URL for this resource with the resource id. |
| "stackType": "A String", # The stack type for this interconnect attachment to identify whether the |
| # IPv6 feature is enabled or not. If not specified, IPV4_ONLY |
| # will be used. |
| # |
| # This field can be both set at interconnect attachments creation and |
| # update interconnect attachment operations. |
| "state": "A String", # [Output Only] The current state of this attachment's functionality. |
| # Enum values ACTIVE and UNPROVISIONED are shared by DEDICATED/PRIVATE, |
| # PARTNER, and PARTNER_PROVIDER interconnect attachments, while enum values |
| # PENDING_PARTNER, PARTNER_REQUEST_RECEIVED, and PENDING_CUSTOMER are used |
| # for only PARTNER and PARTNER_PROVIDER interconnect attachments. |
| # This state can take one of the following values: |
| # |
| # - ACTIVE: The attachment has been turned up and is ready to use. |
| # - UNPROVISIONED: The attachment is not ready to use yet, because turnup |
| # is not complete. |
| # - PENDING_PARTNER: A newly-created PARTNER attachment that has not yet |
| # been configured on the Partner side. |
| # - PARTNER_REQUEST_RECEIVED: A PARTNER attachment is in the process of |
| # provisioning after a PARTNER_PROVIDER attachment was created that |
| # references it. |
| # - PENDING_CUSTOMER: A PARTNER or PARTNER_PROVIDER |
| # attachment that is waiting for a customer to activate it. |
| # - DEFUNCT: |
| # The attachment was deleted externally and is no longer functional. This |
| # could be because the associated Interconnect was removed, or because the |
| # other side of a Partner attachment was deleted. |
| "subnetLength": 42, # Input only. Length of the IPv4 subnet mask. |
| # Allowed values: |
| # |
| # |
| # - 29 (default) |
| # - 30 |
| # |
| # The default value is 29, except for Cross-Cloud Interconnect |
| # connections that use an InterconnectRemoteLocation with a |
| # constraints.subnetLengthRange.min equal to 30. For example, |
| # connections that use an Azure remote location fall into this |
| # category. In these cases, the default value is 30, and requesting |
| # 29 returns an error. |
| # |
| # Where both 29 and 30 are allowed, 29 is preferred, because it gives |
| # Google Cloud Support more debugging visibility. |
| "type": "A String", # The type of interconnect attachment this is, which can take one of the |
| # following values: |
| # |
| # - DEDICATED: an attachment to a Dedicated Interconnect. |
| # - PARTNER: an attachment to a Partner Interconnect, created by the |
| # customer. |
| # - PARTNER_PROVIDER: an attachment to a Partner Interconnect, created by |
| # the partner. |
| # |
| # - L2_DEDICATED: a L2 attachment to a Dedicated Interconnect. |
| "vlanTag8021q": 42, # The IEEE 802.1Q VLAN tag for this attachment, in the range 2-4093. |
| # Only specified at creation time. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="getIamPolicy">getIamPolicy(project, region, resource, optionsRequestedPolicyVersion=None, x__xgafv=None)</code> |
| <pre>Gets the access control policy for a resource. May be empty if no such |
| policy or resource exists. |
| |
| Args: |
| project: string, Project ID for this request. (required) |
| region: string, The name of the region for this request. (required) |
| resource: string, Name or id of the resource for this request. (required) |
| optionsRequestedPolicyVersion: integer, Requested IAM Policy version. |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # An Identity and Access Management (IAM) policy, which specifies access |
| # controls for Google Cloud resources. |
| # |
| # |
| # A `Policy` is a collection of `bindings`. A `binding` binds one or more |
| # `members`, or principals, to a single `role`. Principals can be user |
| # accounts, service accounts, Google groups, and domains (such as G Suite). A |
| # `role` is a named list of permissions; each `role` can be an IAM predefined |
| # role or a user-created custom role. |
| # |
| # For some types of Google Cloud resources, a `binding` can also specify a |
| # `condition`, which is a logical expression that allows access to a resource |
| # only if the expression evaluates to `true`. A condition can add constraints |
| # based on attributes of the request, the resource, or both. To learn which |
| # resources support conditions in their IAM policies, see the |
| # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). |
| # |
| # **JSON example:** |
| # |
| # ``` |
| # { |
| # "bindings": [ |
| # { |
| # "role": "roles/resourcemanager.organizationAdmin", |
| # "members": [ |
| # "user:[email protected]", |
| # "group:[email protected]", |
| # "domain:google.com", |
| # "serviceAccount:[email protected]" |
| # ] |
| # }, |
| # { |
| # "role": "roles/resourcemanager.organizationViewer", |
| # "members": [ |
| # "user:[email protected]" |
| # ], |
| # "condition": { |
| # "title": "expirable access", |
| # "description": "Does not grant access after Sep 2020", |
| # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", |
| # } |
| # } |
| # ], |
| # "etag": "BwWWja0YfJA=", |
| # "version": 3 |
| # } |
| # ``` |
| # |
| # **YAML example:** |
| # |
| # ``` |
| # bindings: |
| # - members: |
| # - user:[email protected] |
| # - group:[email protected] |
| # - domain:google.com |
| # - serviceAccount:[email protected] |
| # role: roles/resourcemanager.organizationAdmin |
| # - members: |
| # - user:[email protected] |
| # role: roles/resourcemanager.organizationViewer |
| # condition: |
| # title: expirable access |
| # description: Does not grant access after Sep 2020 |
| # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') |
| # etag: BwWWja0YfJA= |
| # version: 3 |
| # ``` |
| # |
| # For a description of IAM and its features, see the |
| # [IAM documentation](https://cloud.google.com/iam/docs/). |
| "auditConfigs": [ # Specifies cloud audit logging configuration for this policy. |
| { # 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:[email protected]" |
| # ] |
| # }, |
| # { |
| # "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:[email protected]" |
| # ] |
| # } |
| # ] |
| # } |
| # ] |
| # } |
| # |
| # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ |
| # logging. It also exempts `[email protected]` from DATA_READ logging, and |
| # `[email protected]` from DATA_WRITE logging. |
| "auditLogConfigs": [ # The configuration for logging of each type of permission. |
| { # Provides the configuration for logging a type of permissions. |
| # Example: |
| # |
| # { |
| # "audit_log_configs": [ |
| # { |
| # "log_type": "DATA_READ", |
| # "exempted_members": [ |
| # "user:[email protected]" |
| # ] |
| # }, |
| # { |
| # "log_type": "DATA_WRITE" |
| # } |
| # ] |
| # } |
| # |
| # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting |
| # [email protected] from DATA_READ logging. |
| "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of |
| # permission. |
| # Follows the same format of Binding.members. |
| "A String", |
| ], |
| "logType": "A String", # The log type that this config enables. |
| }, |
| ], |
| "service": "A String", # 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. |
| }, |
| ], |
| "bindings": [ # Associates a list of `members`, or principals, with a `role`. Optionally, |
| # may specify a `condition` that determines how and when the `bindings` are |
| # applied. Each of the `bindings` must contain at least one principal. |
| # |
| # The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250 |
| # of these principals can be Google groups. Each occurrence of a principal |
| # counts towards these limits. For example, if the `bindings` grant 50 |
| # different roles to `user:[email protected]`, and not to any other |
| # principal, then you can add another 1,450 principals to the `bindings` in |
| # the `Policy`. |
| { # Associates `members`, or principals, with a `role`. |
| "condition": { # Represents a textual expression in the Common Expression Language (CEL) # 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). |
| # 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. |
| "description": "A String", # Optional. Description of the expression. This is a longer text which |
| # describes the expression, e.g. when hovered over it in a UI. |
| "expression": "A String", # Textual representation of an expression in Common Expression Language |
| # syntax. |
| "location": "A String", # Optional. String indicating the location of the expression for error |
| # reporting, e.g. a file name and a position in the file. |
| "title": "A String", # 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. |
| }, |
| "members": [ # 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, `[email protected]` . |
| # |
| # |
| # * `serviceAccount:{emailid}`: An email address that represents a Google |
| # service account. For example, |
| # `[email protected]`. |
| # |
| # * `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, `[email protected]`. |
| # |
| # |
| # * `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}/*`: |
| # 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}/*`: |
| # 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, `[email protected]?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, |
| # `[email protected]?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, `[email protected]?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`. |
| "A String", |
| ], |
| "role": "A String", # 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). |
| }, |
| ], |
| "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help |
| # prevent simultaneous updates of a policy from overwriting each other. |
| # It is strongly suggested that systems make use of the `etag` in the |
| # read-modify-write cycle to perform policy updates in order to avoid race |
| # conditions: An `etag` is returned in the response to `getIamPolicy`, and |
| # systems are expected to put that etag in the request to `setIamPolicy` to |
| # ensure that their change will be applied to the same version of the policy. |
| # |
| # **Important:** If you use IAM Conditions, you must include the `etag` field |
| # whenever you call `setIamPolicy`. If you omit this field, then IAM allows |
| # you to overwrite a version `3` policy with a version `1` policy, and all of |
| # the conditions in the version `3` policy are lost. |
| "version": 42, # Specifies the format of the policy. |
| # |
| # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value |
| # are rejected. |
| # |
| # Any operation that affects conditional role bindings must specify version |
| # `3`. This requirement applies to the following operations: |
| # |
| # * Getting a policy that includes a conditional role binding |
| # * Adding a conditional role binding to a policy |
| # * Changing a conditional role binding in a policy |
| # * Removing any role binding, with or without a condition, from a policy |
| # that includes conditions |
| # |
| # **Important:** If you use IAM Conditions, you must include the `etag` field |
| # whenever you call `setIamPolicy`. If you omit this field, then IAM allows |
| # you to overwrite a version `3` policy with a version `1` policy, and all of |
| # the conditions in the version `3` policy are lost. |
| # |
| # If a policy does not include any conditions, operations on that policy may |
| # specify any valid version or leave the field unset. |
| # |
| # To learn which resources support conditions in their IAM policies, see the |
| # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="insert">insert(project, region, body=None, requestId=None, validateOnly=None, x__xgafv=None)</code> |
| <pre>Creates an InterconnectAttachment in the specified project using the data |
| included in the request. |
| |
| Args: |
| project: string, Project ID for this request. (required) |
| region: string, Name of the region for this request. (required) |
| body: object, The request body. |
| The object takes the form of: |
| |
| { # Represents an Interconnect Attachment (VLAN) resource. |
| # |
| # You can use Interconnect attachments (VLANS) to connect your Virtual Private |
| # Cloud networks to your on-premises networks through an Interconnect. |
| # For more information, read |
| # Creating VLAN Attachments. |
| "adminEnabled": True or False, # Determines whether this Attachment will carry packets. |
| # Not present for PARTNER_PROVIDER. |
| "attachmentGroup": "A String", # [Output Only] URL of the AttachmentGroup that includes this Attachment. |
| "bandwidth": "A String", # Provisioned bandwidth capacity for the interconnect attachment. For |
| # attachments of type DEDICATED, the user can set the bandwidth. |
| # For attachments of type PARTNER, the Google Partner that is operating |
| # the interconnect must set the bandwidth. |
| # Output only for PARTNER type, mutable for PARTNER_PROVIDER and DEDICATED, |
| # and can take one of the following values: |
| # |
| # - BPS_50M: 50 Mbit/s |
| # - BPS_100M: 100 Mbit/s |
| # - BPS_200M: 200 Mbit/s |
| # - BPS_300M: 300 Mbit/s |
| # - BPS_400M: 400 Mbit/s |
| # - BPS_500M: 500 Mbit/s |
| # - BPS_1G: 1 Gbit/s |
| # - BPS_2G: 2 Gbit/s |
| # - BPS_5G: 5 Gbit/s |
| # - BPS_10G: 10 Gbit/s |
| # - BPS_20G: 20 Gbit/s |
| # - BPS_50G: 50 Gbit/s |
| # - BPS_100G: 100 Gbit/s |
| "candidateCloudRouterIpAddress": "A String", # Single IPv4 address + prefix length to be configured on the cloud router |
| # interface for this interconnect attachment. |
| # |
| # - Both candidate_cloud_router_ip_address and |
| # candidate_customer_router_ip_address fields must be set or both must be |
| # unset. |
| # - Prefix length of both candidate_cloud_router_ip_address and |
| # candidate_customer_router_ip_address must be the same. |
| # - Max prefix length is 31. |
| "candidateCloudRouterIpv6Address": "A String", # Single IPv6 address + prefix length to be configured on the cloud router |
| # interface for this interconnect attachment. |
| # |
| # - Both candidate_cloud_router_ipv6_address and |
| # candidate_customer_router_ipv6_address fields must be set or both must be |
| # unset. |
| # - Prefix length of both candidate_cloud_router_ipv6_address and |
| # candidate_customer_router_ipv6_address must be the same. |
| # - Max prefix length is 126. |
| "candidateCustomerRouterIpAddress": "A String", # Single IPv4 address + prefix length to be configured on the customer router |
| # interface for this interconnect attachment. |
| "candidateCustomerRouterIpv6Address": "A String", # Single IPv6 address + prefix length to be configured on the customer router |
| # interface for this interconnect attachment. |
| "candidateIpv6Subnets": [ # This field is not available. |
| "A String", |
| ], |
| "candidateSubnets": [ # Input only. Up to 16 candidate prefixes that can be used to restrict the allocation |
| # of cloudRouterIpAddress and customerRouterIpAddress for this attachment. |
| # All prefixes must be within link-local address space (169.254.0.0/16) and |
| # must be /29 or shorter (/28, /27, etc). Google will attempt to select an |
| # unused /29 from the supplied candidate prefix(es). The request will fail if |
| # all possible /29s are in use on Google's edge. If not supplied, Google will |
| # randomly select an unused /29 from all of link-local space. |
| "A String", |
| ], |
| "cloudRouterIpAddress": "A String", # [Output Only] IPv4 address + prefix length to be configured on Cloud Router |
| # Interface for this interconnect attachment. |
| "cloudRouterIpv6Address": "A String", # [Output Only] IPv6 address + prefix length to be configured on Cloud |
| # Router Interface for this interconnect attachment. |
| "cloudRouterIpv6InterfaceId": "A String", # This field is not available. |
| "configurationConstraints": { # [Output Only] Constraints for this attachment, if any. The attachment does |
| # not work if these constraints are not met. |
| "bgpMd5": "A String", # [Output Only] Whether the attachment's BGP session |
| # requires/allows/disallows BGP MD5 authentication. This can take one of |
| # the following values: MD5_OPTIONAL, MD5_REQUIRED, MD5_UNSUPPORTED. |
| # |
| # For example, a Cross-Cloud Interconnect connection to a remote cloud |
| # provider that requires BGP MD5 authentication has the |
| # interconnectRemoteLocation attachment_configuration_constraints.bgp_md5 |
| # field set to MD5_REQUIRED, and that property is propagated to the |
| # attachment. Similarly, if BGP MD5 is MD5_UNSUPPORTED, an error is |
| # returned if MD5 is requested. |
| "bgpPeerAsnRanges": [ # [Output Only] List of ASN ranges that the remote location is known to |
| # support. Formatted as an array of inclusive ranges {min: min-value, max: |
| # max-value}. For example, [{min: 123, max: 123}, {min: 64512, max: 65534}] |
| # allows the peer ASN to be 123 or anything in the range 64512-65534. |
| # |
| # This field is only advisory. Although the API accepts other ranges, these |
| # are the ranges that we recommend. |
| { |
| "max": 42, |
| "min": 42, |
| }, |
| ], |
| }, |
| "creationTimestamp": "A String", # [Output Only] Creation timestamp inRFC3339 |
| # text format. |
| "customerRouterIpAddress": "A String", # [Output Only] IPv4 address + prefix length to be configured on the customer |
| # router subinterface for this interconnect attachment. |
| "customerRouterIpv6Address": "A String", # [Output Only] IPv6 address + prefix length to be configured on the |
| # customer router subinterface for this interconnect attachment. |
| "customerRouterIpv6InterfaceId": "A String", # This field is not available. |
| "dataplaneVersion": 42, # [Output Only] Dataplane version for this InterconnectAttachment. This |
| # field is only present for Dataplane version 2 and higher. Absence of this |
| # field in the API output indicates that the Dataplane is version 1. |
| "description": "A String", # An optional description of this resource. |
| "edgeAvailabilityDomain": "A String", # Input only. Desired availability domain for the attachment. Only available for type |
| # PARTNER, at creation time, and can take one of the following values: |
| # |
| # - AVAILABILITY_DOMAIN_ANY |
| # - AVAILABILITY_DOMAIN_1 |
| # - AVAILABILITY_DOMAIN_2 |
| # |
| # |
| # For improved reliability, customers should configure a pair of attachments, |
| # one per availability domain. The selected availability domain will be |
| # provided to the Partner via the pairing key, so that the provisioned |
| # circuit will lie in the specified domain. If not specified, the value will |
| # default to AVAILABILITY_DOMAIN_ANY. |
| "encryption": "A String", # Indicates the user-supplied encryption option of this VLAN attachment |
| # (interconnectAttachment). Can only be specified at attachment creation |
| # for PARTNER or DEDICATED attachments. |
| # Possible values are: |
| # |
| # - NONE - This is the default value, which means that the |
| # VLAN attachment carries unencrypted traffic. VMs are able to send |
| # traffic to, or receive traffic from, such a VLAN attachment. |
| # - IPSEC - The VLAN attachment carries only encrypted |
| # traffic that is encrypted by an IPsec device, such as an HA VPN gateway or |
| # third-party IPsec VPN. VMs cannot directly send traffic to, or receive |
| # traffic from, such a VLAN attachment. To use *HA VPN over Cloud |
| # Interconnect*, the VLAN attachment must be created with this |
| # option. |
| "googleReferenceId": "A String", # [Output Only] Google reference ID, to be used when raising support tickets |
| # with Google or otherwise to debug backend connectivity issues. |
| # [Deprecated] This field is not used. |
| "id": "A String", # [Output Only] The unique identifier for the resource. This identifier is |
| # defined by the server. |
| "interconnect": "A String", # URL of the underlying Interconnect object that this attachment's traffic |
| # will traverse through. |
| "ipsecInternalAddresses": [ # A list of URLs of addresses that have been reserved for the VLAN |
| # attachment. Used only for the VLAN attachment that has the encryption |
| # option as IPSEC. The addresses must be regional internal IP address ranges. |
| # When creating an HA VPN gateway over the VLAN attachment, if the attachment |
| # is configured to use a regional internal IP address, then the VPN gateway's |
| # IP address is allocated from the IP address range specified here. For |
| # example, if the HA VPN gateway's interface 0 is paired to this VLAN |
| # attachment, then a regional internal IP address for the VPN gateway |
| # interface 0 will be allocated from the IP address specified for this |
| # VLAN attachment. |
| # If this field is not specified when creating the VLAN attachment, then |
| # later on when creating an HA VPN gateway on this VLAN attachment, the HA |
| # VPN gateway's IP address is allocated from the regional external IP address |
| # pool. |
| "A String", |
| ], |
| "kind": "compute#interconnectAttachment", # [Output Only] Type of the resource. Alwayscompute#interconnectAttachment for interconnect attachments. |
| "l2Forwarding": { # L2 Interconnect Attachment related configuration. # L2 Interconnect Attachment related config. This field is required if the |
| # type is L2_DEDICATED. |
| # |
| # The configuration specifies how VLAN tags (like dot1q, qinq, or dot1ad) |
| # within L2 packets are mapped to the destination appliances IP addresses. |
| # The packet is then encapsulated with the appliance IP address and sent to |
| # the edge appliance. |
| "applianceMappings": { # Optional. A map of VLAN tags to appliances and optional inner mapping |
| # rules. If VLANs are not explicitly mapped to any appliance, the |
| # defaultApplianceIpAddress is used. |
| # |
| # Each VLAN tag can be a single number or a range of numbers in the range |
| # of 1 to 4094, e.g., "1" or "4001-4094". Non-empty and non-overlapping |
| # VLAN tag ranges are enforced, and violating operations will be rejected. |
| # |
| # The VLAN tags in the Ethernet header must use an ethertype value of |
| # 0x88A8 or 0x8100. |
| "a_key": { # Two-level VLAN-to-Appliance mapping rule. |
| "applianceIpAddress": "A String", # Optional. A single IPv4 or IPv6 address used as the destination IP |
| # address for ingress packets that match on a VLAN tag, but do not match |
| # a more specific inner VLAN tag. |
| # |
| # Unset field (null-value) indicates both VLAN tags are required to be |
| # mapped. Otherwise, defaultApplianceIpAddress is used. |
| "innerVlanToApplianceMappings": [ # Optional. Used to match against the inner VLAN when the packet |
| # contains two VLAN tags. |
| # |
| # A list of mapping rules from inner VLAN tags to IP addresses. If the |
| # inner VLAN is not explicitly mapped to an IP address range, the |
| # applianceIpAddress is used. |
| { # The inner VLAN-to-Appliance mapping. |
| "innerApplianceIpAddress": "A String", # Required in this object. A single IPv4 or IPv6 address used as the |
| # destination IP address for ingress packets that match on both VLAN |
| # tags. |
| "innerVlanTags": [ # Required in this object. Used to match the inner VLAN tag on the |
| # packet. Each entry can be a single number or a range of numbers in |
| # the range of 1 to 4094, e.g., ["1", "4001-4094"] is valid. Non-empty |
| # and Non-overlapping VLAN tag ranges are enforced, and violating |
| # operations will be rejected. |
| # |
| # The inner VLAN tags must have an ethertype value of 0x8100. |
| "A String", |
| ], |
| }, |
| ], |
| "name": "A String", # Optional. The name of this appliance mapping rule. |
| }, |
| }, |
| "defaultApplianceIpAddress": "A String", # Optional. A single IPv4 or IPv6 address used as the default destination |
| # IP when there is no VLAN mapping result found. |
| # |
| # Unset field (null-value) indicates the unmatched packet should be |
| # dropped. |
| "geneveHeader": { # GeneveHeader related configurations. # Optional. It represents the structure of a Geneve (Generic Network |
| # Virtualization Encapsulation) header, as defined in RFC8926. It encapsulates packets from various |
| # protocols (e.g., Ethernet, IPv4, IPv6) for use in network virtualization |
| # environments. |
| "vni": 42, # Optional. VNI is a 24-bit unique virtual network identifier, from 0 to |
| # 16,777,215. |
| }, |
| "network": "A String", # Required. Resource URL of the network to which this attachment belongs. |
| "tunnelEndpointIpAddress": "A String", # Required. A single IPv4 or IPv6 address. This address will be used as the |
| # source IP address for packets sent to the appliances, and must be used as |
| # the destination IP address for packets that should be sent out through |
| # this attachment. |
| }, |
| "labelFingerprint": "A String", # A fingerprint for the labels being applied to this InterconnectAttachment, |
| # which is essentially a hash of the labels set used for optimistic locking. |
| # The fingerprint is initially generated by Compute Engine and changes after |
| # every request to modify or update labels. You must always provide an |
| # up-to-date fingerprint hash in order to update or change labels, |
| # otherwise the request will fail with error412 conditionNotMet. |
| # |
| # To see the latest fingerprint, make a get() request to |
| # retrieve an InterconnectAttachment. |
| "labels": { # Labels for this resource. These can only be added or modified by thesetLabels method. Each label key/value pair must comply withRFC1035. |
| # Label values may be empty. |
| "a_key": "A String", |
| }, |
| "mtu": 42, # Maximum Transmission Unit (MTU), in bytes, of packets passing through this |
| # interconnect attachment. |
| # Valid values are 1440, 1460, 1500, and 8896. If not specified, |
| # the value will default to 1440. |
| "multicastEnabled": True or False, # Whether or not to permit multicast traffic for this attachment. Multicast |
| # packets will be dropped if this is not enabled. |
| "name": "A String", # Name of the resource. Provided by the client when the resource is created. |
| # The name must be 1-63 characters long, and comply withRFC1035. |
| # Specifically, the name must be 1-63 characters long and match the regular |
| # expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first |
| # character must be a lowercase letter, and all following characters must |
| # be a dash, lowercase letter, or digit, except the last character, which |
| # cannot be a dash. |
| "operationalStatus": "A String", # [Output Only] The current status of whether or not this interconnect |
| # attachment is functional, which can take one of the following values: |
| # |
| # - OS_ACTIVE: The attachment has been turned up and is ready to |
| # use. |
| # - OS_UNPROVISIONED: The attachment is not ready to use yet, |
| # because turnup is not complete. |
| "pairingKey": "A String", # [Output only for type PARTNER. Input only for PARTNER_PROVIDER. Not |
| # present for DEDICATED]. |
| # The opaque identifier of a PARTNER attachment used to initiate |
| # provisioning with a selected partner. |
| # Of the form "XXXXX/region/domain" |
| "params": { # Additional interconnect attachment parameters. # Input only. [Input Only] Additional params passed with the request, but not persisted |
| # as part of resource payload. |
| "resourceManagerTags": { # Tag keys/values directly bound to this resource. |
| # Tag keys and values have the same definition as resource |
| # manager tags. The field is allowed for INSERT |
| # only. The keys/values to set on the resource should be specified in |
| # either ID { : } or Namespaced format |
| # { : }. |
| # For example the following are valid inputs: |
| # * {"tagKeys/333" : "tagValues/444", "tagKeys/123" : "tagValues/456"} |
| # * {"123/environment" : "production", "345/abc" : "xyz"} |
| # Note: |
| # * Invalid combinations of ID & namespaced format is not supported. For |
| # instance: {"123/environment" : "tagValues/444"} is invalid. |
| # * Inconsistent format is not supported. For instance: |
| # {"tagKeys/333" : "tagValues/444", "123/env" : "prod"} is invalid. |
| "a_key": "A String", |
| }, |
| }, |
| "partnerAsn": "A String", # Optional BGP ASN for the router supplied by a Layer 3 Partner if they |
| # configured BGP on behalf of the customer. |
| # Output only for PARTNER type, input only for PARTNER_PROVIDER, not |
| # available for DEDICATED. |
| "partnerMetadata": { # Informational metadata about Partner attachments from Partners to display # Informational metadata about Partner attachments from Partners to display |
| # to customers. |
| # Output only for PARTNER type, mutable for PARTNER_PROVIDER, not |
| # available for DEDICATED. |
| # to customers. These fields are propagated from PARTNER_PROVIDER |
| # attachments to their corresponding PARTNER attachments. |
| "interconnectName": "A String", # Plain text name of the Interconnect this attachment is connected to, as |
| # displayed in the Partner's portal. For instance "Chicago 1". |
| # This value may be validated to match approved Partner values. |
| "partnerName": "A String", # Plain text name of the Partner providing this attachment. |
| # This value may be validated to match approved Partner values. |
| "portalUrl": "A String", # URL of the Partner's portal for this Attachment. Partners may customise |
| # this to be a deep link to the specific resource on the Partner portal. |
| # This value may be validated to match approved Partner values. |
| }, |
| "privateInterconnectInfo": { # Information for an interconnect attachment when this belongs to an # [Output Only] Information specific to an InterconnectAttachment. |
| # This property is populated if the interconnect that |
| # this is attached to is of type DEDICATED. |
| # interconnect of type DEDICATED. |
| "tag8021q": 42, # [Output Only] 802.1q encapsulation tag to be used for traffic between |
| # Google and the customer, going to and from this network and region. |
| }, |
| "region": "A String", # [Output Only] URL of the region where the regional interconnect attachment |
| # resides. |
| # You must specify this field as part of the HTTP request URL. It is |
| # not settable as a field in the request body. |
| "remoteService": "A String", # [Output Only] |
| # If the attachment is on a Cross-Cloud Interconnect connection, this field |
| # contains the interconnect's remote location service provider. Example |
| # values: "Amazon Web Services" "Microsoft Azure". |
| # |
| # The field is set only for attachments on Cross-Cloud Interconnect |
| # connections. Its value is copied from the InterconnectRemoteLocation |
| # remoteService field. |
| "router": "A String", # URL of the Cloud Router to be used for dynamic routing. This router must be |
| # in the same region as this InterconnectAttachment. The |
| # InterconnectAttachment will automatically connect the Interconnect to the |
| # network & region within which the Cloud Router is configured. |
| "satisfiesPzs": True or False, # [Output Only] Reserved for future use. |
| "selfLink": "A String", # [Output Only] Server-defined URL for the resource. |
| "selfLinkWithId": "A String", # [Output Only] Server-defined URL for this resource with the resource id. |
| "stackType": "A String", # The stack type for this interconnect attachment to identify whether the |
| # IPv6 feature is enabled or not. If not specified, IPV4_ONLY |
| # will be used. |
| # |
| # This field can be both set at interconnect attachments creation and |
| # update interconnect attachment operations. |
| "state": "A String", # [Output Only] The current state of this attachment's functionality. |
| # Enum values ACTIVE and UNPROVISIONED are shared by DEDICATED/PRIVATE, |
| # PARTNER, and PARTNER_PROVIDER interconnect attachments, while enum values |
| # PENDING_PARTNER, PARTNER_REQUEST_RECEIVED, and PENDING_CUSTOMER are used |
| # for only PARTNER and PARTNER_PROVIDER interconnect attachments. |
| # This state can take one of the following values: |
| # |
| # - ACTIVE: The attachment has been turned up and is ready to use. |
| # - UNPROVISIONED: The attachment is not ready to use yet, because turnup |
| # is not complete. |
| # - PENDING_PARTNER: A newly-created PARTNER attachment that has not yet |
| # been configured on the Partner side. |
| # - PARTNER_REQUEST_RECEIVED: A PARTNER attachment is in the process of |
| # provisioning after a PARTNER_PROVIDER attachment was created that |
| # references it. |
| # - PENDING_CUSTOMER: A PARTNER or PARTNER_PROVIDER |
| # attachment that is waiting for a customer to activate it. |
| # - DEFUNCT: |
| # The attachment was deleted externally and is no longer functional. This |
| # could be because the associated Interconnect was removed, or because the |
| # other side of a Partner attachment was deleted. |
| "subnetLength": 42, # Input only. Length of the IPv4 subnet mask. |
| # Allowed values: |
| # |
| # |
| # - 29 (default) |
| # - 30 |
| # |
| # The default value is 29, except for Cross-Cloud Interconnect |
| # connections that use an InterconnectRemoteLocation with a |
| # constraints.subnetLengthRange.min equal to 30. For example, |
| # connections that use an Azure remote location fall into this |
| # category. In these cases, the default value is 30, and requesting |
| # 29 returns an error. |
| # |
| # Where both 29 and 30 are allowed, 29 is preferred, because it gives |
| # Google Cloud Support more debugging visibility. |
| "type": "A String", # The type of interconnect attachment this is, which can take one of the |
| # following values: |
| # |
| # - DEDICATED: an attachment to a Dedicated Interconnect. |
| # - PARTNER: an attachment to a Partner Interconnect, created by the |
| # customer. |
| # - PARTNER_PROVIDER: an attachment to a Partner Interconnect, created by |
| # the partner. |
| # |
| # - L2_DEDICATED: a L2 attachment to a Dedicated Interconnect. |
| "vlanTag8021q": 42, # The IEEE 802.1Q VLAN tag for this attachment, in the range 2-4093. |
| # Only specified at creation time. |
| } |
| |
| requestId: string, An optional request ID to identify requests. Specify a unique request ID so |
| that if you must retry your request, the server will know to ignore the |
| request if it has already been completed. |
| |
| For example, consider a situation where you make an initial request and |
| the request times out. If you make the request again with the same |
| request ID, the server can check if original operation with the same |
| request ID was received, and if so, will ignore the second request. This |
| prevents clients from accidentally creating duplicate commitments. |
| |
| The request ID must be |
| a valid UUID with the exception that zero UUID is not supported |
| (00000000-0000-0000-0000-000000000000). |
| validateOnly: boolean, If true, the request will not be committed. |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # Represents an Operation resource. |
| # |
| # Google Compute Engine has three Operation resources: |
| # |
| # * [Global](/compute/docs/reference/rest/alpha/globalOperations) |
| # * [Regional](/compute/docs/reference/rest/alpha/regionOperations) |
| # * [Zonal](/compute/docs/reference/rest/alpha/zoneOperations) |
| # |
| # You can use an operation resource to manage asynchronous API requests. |
| # For more information, readHandling |
| # API responses. |
| # |
| # Operations can be global, regional or zonal. |
| # |
| # - For global operations, use the `globalOperations` |
| # resource. |
| # - For regional operations, use the |
| # `regionOperations` resource. |
| # - For zonal operations, use |
| # the `zoneOperations` resource. |
| # |
| # |
| # |
| # For more information, read |
| # Global, Regional, and Zonal Resources. |
| # |
| # Note that completed Operation resources have a limited |
| # retention period. |
| "clientOperationId": "A String", # [Output Only] The value of `requestId` if you provided it in the request. |
| # Not present otherwise. |
| "creationTimestamp": "A String", # [Deprecated] This field is deprecated. |
| "description": "A String", # [Output Only] A textual description of the operation, which is |
| # set when the operation is created. |
| "endTime": "A String", # [Output Only] The time that this operation was completed. This value is inRFC3339 |
| # text format. |
| "error": { # [Output Only] If errors are generated during processing of the operation, |
| # this field will be populated. |
| "errors": [ # [Output Only] The array of errors encountered while processing this |
| # operation. |
| { |
| "code": "A String", # [Output Only] The error type identifier for this error. |
| "errorDetails": [ # [Output Only] An optional list of messages that contain the error |
| # details. There is a set of defined message types to use for providing |
| # details.The syntax depends on the error code. For example, |
| # QuotaExceededInfo will have details when the error code is |
| # QUOTA_EXCEEDED. |
| { |
| "errorInfo": { # Describes the cause of the error with structured details. |
| # |
| # Example of an error when contacting the "pubsub.googleapis.com" API when it |
| # is not enabled: |
| # |
| # { "reason": "API_DISABLED" |
| # "domain": "googleapis.com" |
| # "metadata": { |
| # "resource": "projects/123", |
| # "service": "pubsub.googleapis.com" |
| # } |
| # } |
| # |
| # This response indicates that the pubsub.googleapis.com API is not enabled. |
| # |
| # Example of an error that is returned when attempting to create a Spanner |
| # instance in a region that is out of stock: |
| # |
| # { "reason": "STOCKOUT" |
| # "domain": "spanner.googleapis.com", |
| # "metadata": { |
| # "availableRegions": "us-central1,us-east2" |
| # } |
| # } |
| "domain": "A String", # The logical grouping to which the "reason" belongs. The error domain |
| # is typically the registered service name of the tool or product that |
| # generates the error. Example: "pubsub.googleapis.com". If the error is |
| # generated by some common infrastructure, the error domain must be a |
| # globally unique value that identifies the infrastructure. For Google API |
| # infrastructure, the error domain is "googleapis.com". |
| "metadatas": { # Additional structured details about this error. |
| # |
| # Keys must match a regular expression of `a-z+` but should |
| # ideally be lowerCamelCase. Also, they must be limited to 64 characters in |
| # length. When identifying the current value of an exceeded limit, the units |
| # should be contained in the key, not the value. For example, rather than |
| # `{"instanceLimit": "100/request"}`, should be returned as, |
| # `{"instanceLimitPerRequest": "100"}`, if the client exceeds the number of |
| # instances that can be created in a single (batch) request. |
| "a_key": "A String", |
| }, |
| "reason": "A String", # The reason of the error. This is a constant value that identifies the |
| # proximate cause of the error. Error reasons are unique within a particular |
| # domain of errors. This should be at most 63 characters and match a |
| # regular expression of `A-Z+[A-Z0-9]`, which represents |
| # UPPER_SNAKE_CASE. |
| }, |
| "help": { # Provides links to documentation or for performing an out of band action. |
| # |
| # For example, if a quota check failed with an error indicating the calling |
| # project hasn't enabled the accessed service, this can contain a URL pointing |
| # directly to the right place in the developer console to flip the bit. |
| "links": [ # URL(s) pointing to additional information on handling the current error. |
| { # Describes a URL link. |
| "description": "A String", # Describes what the link offers. |
| "url": "A String", # The URL of the link. |
| }, |
| ], |
| }, |
| "localizedMessage": { # Provides a localized error message that is safe to return to the user |
| # which can be attached to an RPC error. |
| "locale": "A String", # The locale used following the specification defined at |
| # https://www.rfc-editor.org/rfc/bcp/bcp47.txt. |
| # Examples are: "en-US", "fr-CH", "es-MX" |
| "message": "A String", # The localized error message in the above locale. |
| }, |
| "quotaInfo": { # Additional details for quota exceeded error for resource quota. |
| "dimensions": { # The map holding related quota dimensions. |
| "a_key": "A String", |
| }, |
| "futureLimit": 3.14, # Future quota limit being rolled out. The limit's unit depends on the quota |
| # type or metric. |
| "limit": 3.14, # Current effective quota limit. The limit's unit depends on the quota type |
| # or metric. |
| "limitName": "A String", # The name of the quota limit. |
| "metricName": "A String", # The Compute Engine quota metric name. |
| "rolloutStatus": "A String", # Rollout status of the future quota limit. |
| }, |
| }, |
| ], |
| "location": "A String", # [Output Only] Indicates the field in the request that caused the error. |
| # This property is optional. |
| "message": "A String", # [Output Only] An optional, human-readable error message. |
| }, |
| ], |
| }, |
| "httpErrorMessage": "A String", # [Output Only] If the operation fails, this field contains the HTTP error |
| # message that was returned, such as `NOT FOUND`. |
| "httpErrorStatusCode": 42, # [Output Only] If the operation fails, this field contains the HTTP error |
| # status code that was returned. For example, a `404` means the |
| # resource was not found. |
| "id": "A String", # [Output Only] The unique identifier for the operation. This identifier is |
| # defined by the server. |
| "insertTime": "A String", # [Output Only] The time that this operation was requested. |
| # This value is inRFC3339 |
| # text format. |
| "instancesBulkInsertOperationMetadata": { |
| "perLocationStatus": { # Status information per location (location name is key). |
| # Example key: zones/us-central1-a |
| "a_key": { |
| "createdVmCount": 42, # [Output Only] Count of VMs successfully created so far. |
| "deletedVmCount": 42, # [Output Only] Count of VMs that got deleted during rollback. |
| "failedToCreateVmCount": 42, # [Output Only] Count of VMs that started creating but encountered an |
| # error. |
| "status": "A String", # [Output Only] Creation status of BulkInsert operation - information |
| # if the flow is rolling forward or rolling back. |
| "targetVmCount": 42, # [Output Only] Count of VMs originally planned to be created. |
| }, |
| }, |
| }, |
| "kind": "compute#operation", # [Output Only] Type of the resource. Always `compute#operation` for |
| # Operation resources. |
| "name": "A String", # [Output Only] Name of the operation. |
| "operationGroupId": "A String", # [Output Only] An ID that represents a group of operations, such as when a |
| # group of operations results from a `bulkInsert` API request. |
| "operationType": "A String", # [Output Only] The type of operation, such as `insert`, |
| # `update`, or `delete`, and so on. |
| "progress": 42, # [Output Only] An optional progress indicator that ranges from 0 to 100. |
| # There is no requirement that this be linear or support any granularity of |
| # operations. This should not be used to guess when the operation will be |
| # complete. This number should monotonically increase as the operation |
| # progresses. |
| "region": "A String", # [Output Only] The URL of the region where the operation resides. Only |
| # applicable when performing regional operations. |
| "selfLink": "A String", # [Output Only] Server-defined URL for the resource. |
| "selfLinkWithId": "A String", # [Output Only] Server-defined URL for this resource with the resource id. |
| "setCommonInstanceMetadataOperationMetadata": { # [Output Only] If the operation is for projects.setCommonInstanceMetadata, |
| # this field will contain information on all underlying zonal actions and |
| # their state. |
| "clientOperationId": "A String", # [Output Only] The client operation id. |
| "perLocationOperations": { # [Output Only] Status information per location (location name is key). |
| # Example key: zones/us-central1-a |
| "a_key": { |
| "error": { # The `Status` type defines a logical error model that is suitable for # [Output Only] If state is `ABANDONED` or `FAILED`, this field is |
| # populated. |
| # different programming environments, including REST APIs and RPC APIs. It is |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains |
| # three pieces of data: error code, error message, and error details. |
| # |
| # You can find out more about this error model and how to work with it in the |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. |
| "details": [ # A list of messages that carry the error details. There is a common set of |
| # message types for APIs to use. |
| { |
| "a_key": "", # Properties of the object. Contains field @type with type URL. |
| }, |
| ], |
| "message": "A String", # A developer-facing error message, which should be in English. Any |
| # user-facing error message should be localized and sent in the |
| # google.rpc.Status.details field, or localized by the client. |
| }, |
| "state": "A String", # [Output Only] Status of the action, which can be one of the following: |
| # `PROPAGATING`, `PROPAGATED`, `ABANDONED`, `FAILED`, or `DONE`. |
| }, |
| }, |
| }, |
| "startTime": "A String", # [Output Only] The time that this operation was started by the server. |
| # This value is inRFC3339 |
| # text format. |
| "status": "A String", # [Output Only] The status of the operation, which can be one of the |
| # following: |
| # `PENDING`, `RUNNING`, or `DONE`. |
| "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the |
| # operation. |
| "targetId": "A String", # [Output Only] The unique target ID, which identifies a specific incarnation |
| # of the target resource. |
| "targetLink": "A String", # [Output Only] The URL of the resource that the operation modifies. For |
| # operations related to creating a snapshot, this points to the disk |
| # that the snapshot was created from. |
| "user": "A String", # [Output Only] User who requested the operation, for example: |
| # `[email protected]` or |
| # `alice_smith_identifier (global/workforcePools/example-com-us-employees)`. |
| "warnings": [ # [Output Only] If warning messages are generated during processing of the |
| # operation, this field will be populated. |
| { |
| "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute |
| # Engine returns NO_RESULTS_ON_PAGE if there |
| # are no results in the response. |
| "data": [ # [Output Only] Metadata about this warning in key: |
| # value format. For example: |
| # |
| # "data": [ |
| # { |
| # "key": "scope", |
| # "value": "zones/us-east1-d" |
| # } |
| { |
| "key": "A String", # [Output Only] A key that provides more detail on the warning being |
| # returned. For example, for warnings where there are no results in a list |
| # request for a particular zone, this key might be scope and |
| # the key value might be the zone name. Other examples might be a key |
| # indicating a deprecated resource and a suggested replacement, or a |
| # warning about invalid network settings (for example, if an instance |
| # attempts to perform IP forwarding but is not enabled for IP forwarding). |
| "value": "A String", # [Output Only] A warning data value corresponding to the key. |
| }, |
| ], |
| "message": "A String", # [Output Only] A human-readable description of the warning code. |
| }, |
| ], |
| "zone": "A String", # [Output Only] The URL of the zone where the operation resides. Only |
| # applicable when performing per-zone operations. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="list">list(project, region, filter=None, maxResults=None, orderBy=None, pageToken=None, returnPartialSuccess=None, x__xgafv=None)</code> |
| <pre>Retrieves the list of interconnect attachments contained within |
| the specified region. |
| |
| Args: |
| project: string, Project ID for this request. (required) |
| region: string, Name of the region for this request. (required) |
| filter: string, A filter expression that filters resources listed in the response. Most |
| Compute resources support two types of filter expressions: |
| expressions that support regular expressions and expressions that follow |
| API improvement proposal AIP-160. |
| These two types of filter expressions cannot be mixed in one request. |
| |
| If you want to use AIP-160, your expression must specify the field name, an |
| operator, and the value that you want to use for filtering. The value |
| must be a string, a number, or a boolean. The operator |
| must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. |
| |
| For example, if you are filtering Compute Engine instances, you can |
| exclude instances named `example-instance` by specifying |
| `name != example-instance`. |
| |
| The `:*` comparison can be used to test whether a key has been defined. |
| For example, to find all objects with `owner` label use: |
| ``` |
| labels.owner:* |
| ``` |
| |
| You can also filter nested fields. For example, you could specify |
| `scheduling.automaticRestart = false` to include instances only |
| if they are not scheduled for automatic restarts. You can use filtering |
| on nested fields to filter based onresource labels. |
| |
| To filter on multiple expressions, provide each separate expression within |
| parentheses. For example: |
| ``` |
| (scheduling.automaticRestart = true) |
| (cpuPlatform = "Intel Skylake") |
| ``` |
| By default, each expression is an `AND` expression. However, you |
| can include `AND` and `OR` expressions explicitly. |
| For example: |
| ``` |
| (cpuPlatform = "Intel Skylake") OR |
| (cpuPlatform = "Intel Broadwell") AND |
| (scheduling.automaticRestart = true) |
| ``` |
| |
| If you want to use a regular expression, use the `eq` (equal) or `ne` |
| (not equal) operator against a single un-parenthesized expression with or |
| without quotes or against multiple parenthesized expressions. Examples: |
| |
| `fieldname eq unquoted literal` |
| `fieldname eq 'single quoted literal'` |
| `fieldname eq "double quoted literal"` |
| `(fieldname1 eq literal) (fieldname2 ne "literal")` |
| |
| The literal value is interpreted as a regular expression using GoogleRE2 library syntax. |
| The literal value must match the entire field. |
| |
| For example, to filter for instances that do not end with name "instance", |
| you would use `name ne .*instance`. |
| |
| You cannot combine constraints on multiple fields using regular |
| expressions. |
| maxResults: integer, The maximum number of results per page that should be returned. |
| If the number of available results is larger than `maxResults`, |
| Compute Engine returns a `nextPageToken` that can be used to get |
| the next page of results in subsequent list requests. Acceptable values are |
| `0` to `500`, inclusive. (Default: `500`) |
| orderBy: string, Sorts list results by a certain order. By default, results |
| are returned in alphanumerical order based on the resource name. |
| |
| You can also sort results in descending order based on the creation |
| timestamp using `orderBy="creationTimestamp desc"`. This sorts |
| results based on the `creationTimestamp` field in |
| reverse chronological order (newest result first). Use this to sort |
| resources like operations so that the newest operation is returned first. |
| |
| Currently, only sorting by `name` or |
| `creationTimestamp desc` is supported. |
| pageToken: string, Specifies a page token to use. Set `pageToken` to the |
| `nextPageToken` returned by a previous list request to get |
| the next page of results. |
| returnPartialSuccess: boolean, Opt-in for partial success behavior which provides partial results in case |
| of failure. The default value is false. |
| |
| For example, when partial success behavior is enabled, aggregatedList for a |
| single zone scope either returns all resources in the zone or no resources, |
| with an error code. |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # Response to the list request, and contains a list of interconnect |
| # attachments. |
| "id": "A String", # [Output Only] Unique identifier for the resource; defined by the server. |
| "items": [ # A list of InterconnectAttachment resources. |
| { # Represents an Interconnect Attachment (VLAN) resource. |
| # |
| # You can use Interconnect attachments (VLANS) to connect your Virtual Private |
| # Cloud networks to your on-premises networks through an Interconnect. |
| # For more information, read |
| # Creating VLAN Attachments. |
| "adminEnabled": True or False, # Determines whether this Attachment will carry packets. |
| # Not present for PARTNER_PROVIDER. |
| "attachmentGroup": "A String", # [Output Only] URL of the AttachmentGroup that includes this Attachment. |
| "bandwidth": "A String", # Provisioned bandwidth capacity for the interconnect attachment. For |
| # attachments of type DEDICATED, the user can set the bandwidth. |
| # For attachments of type PARTNER, the Google Partner that is operating |
| # the interconnect must set the bandwidth. |
| # Output only for PARTNER type, mutable for PARTNER_PROVIDER and DEDICATED, |
| # and can take one of the following values: |
| # |
| # - BPS_50M: 50 Mbit/s |
| # - BPS_100M: 100 Mbit/s |
| # - BPS_200M: 200 Mbit/s |
| # - BPS_300M: 300 Mbit/s |
| # - BPS_400M: 400 Mbit/s |
| # - BPS_500M: 500 Mbit/s |
| # - BPS_1G: 1 Gbit/s |
| # - BPS_2G: 2 Gbit/s |
| # - BPS_5G: 5 Gbit/s |
| # - BPS_10G: 10 Gbit/s |
| # - BPS_20G: 20 Gbit/s |
| # - BPS_50G: 50 Gbit/s |
| # - BPS_100G: 100 Gbit/s |
| "candidateCloudRouterIpAddress": "A String", # Single IPv4 address + prefix length to be configured on the cloud router |
| # interface for this interconnect attachment. |
| # |
| # - Both candidate_cloud_router_ip_address and |
| # candidate_customer_router_ip_address fields must be set or both must be |
| # unset. |
| # - Prefix length of both candidate_cloud_router_ip_address and |
| # candidate_customer_router_ip_address must be the same. |
| # - Max prefix length is 31. |
| "candidateCloudRouterIpv6Address": "A String", # Single IPv6 address + prefix length to be configured on the cloud router |
| # interface for this interconnect attachment. |
| # |
| # - Both candidate_cloud_router_ipv6_address and |
| # candidate_customer_router_ipv6_address fields must be set or both must be |
| # unset. |
| # - Prefix length of both candidate_cloud_router_ipv6_address and |
| # candidate_customer_router_ipv6_address must be the same. |
| # - Max prefix length is 126. |
| "candidateCustomerRouterIpAddress": "A String", # Single IPv4 address + prefix length to be configured on the customer router |
| # interface for this interconnect attachment. |
| "candidateCustomerRouterIpv6Address": "A String", # Single IPv6 address + prefix length to be configured on the customer router |
| # interface for this interconnect attachment. |
| "candidateIpv6Subnets": [ # This field is not available. |
| "A String", |
| ], |
| "candidateSubnets": [ # Input only. Up to 16 candidate prefixes that can be used to restrict the allocation |
| # of cloudRouterIpAddress and customerRouterIpAddress for this attachment. |
| # All prefixes must be within link-local address space (169.254.0.0/16) and |
| # must be /29 or shorter (/28, /27, etc). Google will attempt to select an |
| # unused /29 from the supplied candidate prefix(es). The request will fail if |
| # all possible /29s are in use on Google's edge. If not supplied, Google will |
| # randomly select an unused /29 from all of link-local space. |
| "A String", |
| ], |
| "cloudRouterIpAddress": "A String", # [Output Only] IPv4 address + prefix length to be configured on Cloud Router |
| # Interface for this interconnect attachment. |
| "cloudRouterIpv6Address": "A String", # [Output Only] IPv6 address + prefix length to be configured on Cloud |
| # Router Interface for this interconnect attachment. |
| "cloudRouterIpv6InterfaceId": "A String", # This field is not available. |
| "configurationConstraints": { # [Output Only] Constraints for this attachment, if any. The attachment does |
| # not work if these constraints are not met. |
| "bgpMd5": "A String", # [Output Only] Whether the attachment's BGP session |
| # requires/allows/disallows BGP MD5 authentication. This can take one of |
| # the following values: MD5_OPTIONAL, MD5_REQUIRED, MD5_UNSUPPORTED. |
| # |
| # For example, a Cross-Cloud Interconnect connection to a remote cloud |
| # provider that requires BGP MD5 authentication has the |
| # interconnectRemoteLocation attachment_configuration_constraints.bgp_md5 |
| # field set to MD5_REQUIRED, and that property is propagated to the |
| # attachment. Similarly, if BGP MD5 is MD5_UNSUPPORTED, an error is |
| # returned if MD5 is requested. |
| "bgpPeerAsnRanges": [ # [Output Only] List of ASN ranges that the remote location is known to |
| # support. Formatted as an array of inclusive ranges {min: min-value, max: |
| # max-value}. For example, [{min: 123, max: 123}, {min: 64512, max: 65534}] |
| # allows the peer ASN to be 123 or anything in the range 64512-65534. |
| # |
| # This field is only advisory. Although the API accepts other ranges, these |
| # are the ranges that we recommend. |
| { |
| "max": 42, |
| "min": 42, |
| }, |
| ], |
| }, |
| "creationTimestamp": "A String", # [Output Only] Creation timestamp inRFC3339 |
| # text format. |
| "customerRouterIpAddress": "A String", # [Output Only] IPv4 address + prefix length to be configured on the customer |
| # router subinterface for this interconnect attachment. |
| "customerRouterIpv6Address": "A String", # [Output Only] IPv6 address + prefix length to be configured on the |
| # customer router subinterface for this interconnect attachment. |
| "customerRouterIpv6InterfaceId": "A String", # This field is not available. |
| "dataplaneVersion": 42, # [Output Only] Dataplane version for this InterconnectAttachment. This |
| # field is only present for Dataplane version 2 and higher. Absence of this |
| # field in the API output indicates that the Dataplane is version 1. |
| "description": "A String", # An optional description of this resource. |
| "edgeAvailabilityDomain": "A String", # Input only. Desired availability domain for the attachment. Only available for type |
| # PARTNER, at creation time, and can take one of the following values: |
| # |
| # - AVAILABILITY_DOMAIN_ANY |
| # - AVAILABILITY_DOMAIN_1 |
| # - AVAILABILITY_DOMAIN_2 |
| # |
| # |
| # For improved reliability, customers should configure a pair of attachments, |
| # one per availability domain. The selected availability domain will be |
| # provided to the Partner via the pairing key, so that the provisioned |
| # circuit will lie in the specified domain. If not specified, the value will |
| # default to AVAILABILITY_DOMAIN_ANY. |
| "encryption": "A String", # Indicates the user-supplied encryption option of this VLAN attachment |
| # (interconnectAttachment). Can only be specified at attachment creation |
| # for PARTNER or DEDICATED attachments. |
| # Possible values are: |
| # |
| # - NONE - This is the default value, which means that the |
| # VLAN attachment carries unencrypted traffic. VMs are able to send |
| # traffic to, or receive traffic from, such a VLAN attachment. |
| # - IPSEC - The VLAN attachment carries only encrypted |
| # traffic that is encrypted by an IPsec device, such as an HA VPN gateway or |
| # third-party IPsec VPN. VMs cannot directly send traffic to, or receive |
| # traffic from, such a VLAN attachment. To use *HA VPN over Cloud |
| # Interconnect*, the VLAN attachment must be created with this |
| # option. |
| "googleReferenceId": "A String", # [Output Only] Google reference ID, to be used when raising support tickets |
| # with Google or otherwise to debug backend connectivity issues. |
| # [Deprecated] This field is not used. |
| "id": "A String", # [Output Only] The unique identifier for the resource. This identifier is |
| # defined by the server. |
| "interconnect": "A String", # URL of the underlying Interconnect object that this attachment's traffic |
| # will traverse through. |
| "ipsecInternalAddresses": [ # A list of URLs of addresses that have been reserved for the VLAN |
| # attachment. Used only for the VLAN attachment that has the encryption |
| # option as IPSEC. The addresses must be regional internal IP address ranges. |
| # When creating an HA VPN gateway over the VLAN attachment, if the attachment |
| # is configured to use a regional internal IP address, then the VPN gateway's |
| # IP address is allocated from the IP address range specified here. For |
| # example, if the HA VPN gateway's interface 0 is paired to this VLAN |
| # attachment, then a regional internal IP address for the VPN gateway |
| # interface 0 will be allocated from the IP address specified for this |
| # VLAN attachment. |
| # If this field is not specified when creating the VLAN attachment, then |
| # later on when creating an HA VPN gateway on this VLAN attachment, the HA |
| # VPN gateway's IP address is allocated from the regional external IP address |
| # pool. |
| "A String", |
| ], |
| "kind": "compute#interconnectAttachment", # [Output Only] Type of the resource. Alwayscompute#interconnectAttachment for interconnect attachments. |
| "l2Forwarding": { # L2 Interconnect Attachment related configuration. # L2 Interconnect Attachment related config. This field is required if the |
| # type is L2_DEDICATED. |
| # |
| # The configuration specifies how VLAN tags (like dot1q, qinq, or dot1ad) |
| # within L2 packets are mapped to the destination appliances IP addresses. |
| # The packet is then encapsulated with the appliance IP address and sent to |
| # the edge appliance. |
| "applianceMappings": { # Optional. A map of VLAN tags to appliances and optional inner mapping |
| # rules. If VLANs are not explicitly mapped to any appliance, the |
| # defaultApplianceIpAddress is used. |
| # |
| # Each VLAN tag can be a single number or a range of numbers in the range |
| # of 1 to 4094, e.g., "1" or "4001-4094". Non-empty and non-overlapping |
| # VLAN tag ranges are enforced, and violating operations will be rejected. |
| # |
| # The VLAN tags in the Ethernet header must use an ethertype value of |
| # 0x88A8 or 0x8100. |
| "a_key": { # Two-level VLAN-to-Appliance mapping rule. |
| "applianceIpAddress": "A String", # Optional. A single IPv4 or IPv6 address used as the destination IP |
| # address for ingress packets that match on a VLAN tag, but do not match |
| # a more specific inner VLAN tag. |
| # |
| # Unset field (null-value) indicates both VLAN tags are required to be |
| # mapped. Otherwise, defaultApplianceIpAddress is used. |
| "innerVlanToApplianceMappings": [ # Optional. Used to match against the inner VLAN when the packet |
| # contains two VLAN tags. |
| # |
| # A list of mapping rules from inner VLAN tags to IP addresses. If the |
| # inner VLAN is not explicitly mapped to an IP address range, the |
| # applianceIpAddress is used. |
| { # The inner VLAN-to-Appliance mapping. |
| "innerApplianceIpAddress": "A String", # Required in this object. A single IPv4 or IPv6 address used as the |
| # destination IP address for ingress packets that match on both VLAN |
| # tags. |
| "innerVlanTags": [ # Required in this object. Used to match the inner VLAN tag on the |
| # packet. Each entry can be a single number or a range of numbers in |
| # the range of 1 to 4094, e.g., ["1", "4001-4094"] is valid. Non-empty |
| # and Non-overlapping VLAN tag ranges are enforced, and violating |
| # operations will be rejected. |
| # |
| # The inner VLAN tags must have an ethertype value of 0x8100. |
| "A String", |
| ], |
| }, |
| ], |
| "name": "A String", # Optional. The name of this appliance mapping rule. |
| }, |
| }, |
| "defaultApplianceIpAddress": "A String", # Optional. A single IPv4 or IPv6 address used as the default destination |
| # IP when there is no VLAN mapping result found. |
| # |
| # Unset field (null-value) indicates the unmatched packet should be |
| # dropped. |
| "geneveHeader": { # GeneveHeader related configurations. # Optional. It represents the structure of a Geneve (Generic Network |
| # Virtualization Encapsulation) header, as defined in RFC8926. It encapsulates packets from various |
| # protocols (e.g., Ethernet, IPv4, IPv6) for use in network virtualization |
| # environments. |
| "vni": 42, # Optional. VNI is a 24-bit unique virtual network identifier, from 0 to |
| # 16,777,215. |
| }, |
| "network": "A String", # Required. Resource URL of the network to which this attachment belongs. |
| "tunnelEndpointIpAddress": "A String", # Required. A single IPv4 or IPv6 address. This address will be used as the |
| # source IP address for packets sent to the appliances, and must be used as |
| # the destination IP address for packets that should be sent out through |
| # this attachment. |
| }, |
| "labelFingerprint": "A String", # A fingerprint for the labels being applied to this InterconnectAttachment, |
| # which is essentially a hash of the labels set used for optimistic locking. |
| # The fingerprint is initially generated by Compute Engine and changes after |
| # every request to modify or update labels. You must always provide an |
| # up-to-date fingerprint hash in order to update or change labels, |
| # otherwise the request will fail with error412 conditionNotMet. |
| # |
| # To see the latest fingerprint, make a get() request to |
| # retrieve an InterconnectAttachment. |
| "labels": { # Labels for this resource. These can only be added or modified by thesetLabels method. Each label key/value pair must comply withRFC1035. |
| # Label values may be empty. |
| "a_key": "A String", |
| }, |
| "mtu": 42, # Maximum Transmission Unit (MTU), in bytes, of packets passing through this |
| # interconnect attachment. |
| # Valid values are 1440, 1460, 1500, and 8896. If not specified, |
| # the value will default to 1440. |
| "multicastEnabled": True or False, # Whether or not to permit multicast traffic for this attachment. Multicast |
| # packets will be dropped if this is not enabled. |
| "name": "A String", # Name of the resource. Provided by the client when the resource is created. |
| # The name must be 1-63 characters long, and comply withRFC1035. |
| # Specifically, the name must be 1-63 characters long and match the regular |
| # expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first |
| # character must be a lowercase letter, and all following characters must |
| # be a dash, lowercase letter, or digit, except the last character, which |
| # cannot be a dash. |
| "operationalStatus": "A String", # [Output Only] The current status of whether or not this interconnect |
| # attachment is functional, which can take one of the following values: |
| # |
| # - OS_ACTIVE: The attachment has been turned up and is ready to |
| # use. |
| # - OS_UNPROVISIONED: The attachment is not ready to use yet, |
| # because turnup is not complete. |
| "pairingKey": "A String", # [Output only for type PARTNER. Input only for PARTNER_PROVIDER. Not |
| # present for DEDICATED]. |
| # The opaque identifier of a PARTNER attachment used to initiate |
| # provisioning with a selected partner. |
| # Of the form "XXXXX/region/domain" |
| "params": { # Additional interconnect attachment parameters. # Input only. [Input Only] Additional params passed with the request, but not persisted |
| # as part of resource payload. |
| "resourceManagerTags": { # Tag keys/values directly bound to this resource. |
| # Tag keys and values have the same definition as resource |
| # manager tags. The field is allowed for INSERT |
| # only. The keys/values to set on the resource should be specified in |
| # either ID { : } or Namespaced format |
| # { : }. |
| # For example the following are valid inputs: |
| # * {"tagKeys/333" : "tagValues/444", "tagKeys/123" : "tagValues/456"} |
| # * {"123/environment" : "production", "345/abc" : "xyz"} |
| # Note: |
| # * Invalid combinations of ID & namespaced format is not supported. For |
| # instance: {"123/environment" : "tagValues/444"} is invalid. |
| # * Inconsistent format is not supported. For instance: |
| # {"tagKeys/333" : "tagValues/444", "123/env" : "prod"} is invalid. |
| "a_key": "A String", |
| }, |
| }, |
| "partnerAsn": "A String", # Optional BGP ASN for the router supplied by a Layer 3 Partner if they |
| # configured BGP on behalf of the customer. |
| # Output only for PARTNER type, input only for PARTNER_PROVIDER, not |
| # available for DEDICATED. |
| "partnerMetadata": { # Informational metadata about Partner attachments from Partners to display # Informational metadata about Partner attachments from Partners to display |
| # to customers. |
| # Output only for PARTNER type, mutable for PARTNER_PROVIDER, not |
| # available for DEDICATED. |
| # to customers. These fields are propagated from PARTNER_PROVIDER |
| # attachments to their corresponding PARTNER attachments. |
| "interconnectName": "A String", # Plain text name of the Interconnect this attachment is connected to, as |
| # displayed in the Partner's portal. For instance "Chicago 1". |
| # This value may be validated to match approved Partner values. |
| "partnerName": "A String", # Plain text name of the Partner providing this attachment. |
| # This value may be validated to match approved Partner values. |
| "portalUrl": "A String", # URL of the Partner's portal for this Attachment. Partners may customise |
| # this to be a deep link to the specific resource on the Partner portal. |
| # This value may be validated to match approved Partner values. |
| }, |
| "privateInterconnectInfo": { # Information for an interconnect attachment when this belongs to an # [Output Only] Information specific to an InterconnectAttachment. |
| # This property is populated if the interconnect that |
| # this is attached to is of type DEDICATED. |
| # interconnect of type DEDICATED. |
| "tag8021q": 42, # [Output Only] 802.1q encapsulation tag to be used for traffic between |
| # Google and the customer, going to and from this network and region. |
| }, |
| "region": "A String", # [Output Only] URL of the region where the regional interconnect attachment |
| # resides. |
| # You must specify this field as part of the HTTP request URL. It is |
| # not settable as a field in the request body. |
| "remoteService": "A String", # [Output Only] |
| # If the attachment is on a Cross-Cloud Interconnect connection, this field |
| # contains the interconnect's remote location service provider. Example |
| # values: "Amazon Web Services" "Microsoft Azure". |
| # |
| # The field is set only for attachments on Cross-Cloud Interconnect |
| # connections. Its value is copied from the InterconnectRemoteLocation |
| # remoteService field. |
| "router": "A String", # URL of the Cloud Router to be used for dynamic routing. This router must be |
| # in the same region as this InterconnectAttachment. The |
| # InterconnectAttachment will automatically connect the Interconnect to the |
| # network & region within which the Cloud Router is configured. |
| "satisfiesPzs": True or False, # [Output Only] Reserved for future use. |
| "selfLink": "A String", # [Output Only] Server-defined URL for the resource. |
| "selfLinkWithId": "A String", # [Output Only] Server-defined URL for this resource with the resource id. |
| "stackType": "A String", # The stack type for this interconnect attachment to identify whether the |
| # IPv6 feature is enabled or not. If not specified, IPV4_ONLY |
| # will be used. |
| # |
| # This field can be both set at interconnect attachments creation and |
| # update interconnect attachment operations. |
| "state": "A String", # [Output Only] The current state of this attachment's functionality. |
| # Enum values ACTIVE and UNPROVISIONED are shared by DEDICATED/PRIVATE, |
| # PARTNER, and PARTNER_PROVIDER interconnect attachments, while enum values |
| # PENDING_PARTNER, PARTNER_REQUEST_RECEIVED, and PENDING_CUSTOMER are used |
| # for only PARTNER and PARTNER_PROVIDER interconnect attachments. |
| # This state can take one of the following values: |
| # |
| # - ACTIVE: The attachment has been turned up and is ready to use. |
| # - UNPROVISIONED: The attachment is not ready to use yet, because turnup |
| # is not complete. |
| # - PENDING_PARTNER: A newly-created PARTNER attachment that has not yet |
| # been configured on the Partner side. |
| # - PARTNER_REQUEST_RECEIVED: A PARTNER attachment is in the process of |
| # provisioning after a PARTNER_PROVIDER attachment was created that |
| # references it. |
| # - PENDING_CUSTOMER: A PARTNER or PARTNER_PROVIDER |
| # attachment that is waiting for a customer to activate it. |
| # - DEFUNCT: |
| # The attachment was deleted externally and is no longer functional. This |
| # could be because the associated Interconnect was removed, or because the |
| # other side of a Partner attachment was deleted. |
| "subnetLength": 42, # Input only. Length of the IPv4 subnet mask. |
| # Allowed values: |
| # |
| # |
| # - 29 (default) |
| # - 30 |
| # |
| # The default value is 29, except for Cross-Cloud Interconnect |
| # connections that use an InterconnectRemoteLocation with a |
| # constraints.subnetLengthRange.min equal to 30. For example, |
| # connections that use an Azure remote location fall into this |
| # category. In these cases, the default value is 30, and requesting |
| # 29 returns an error. |
| # |
| # Where both 29 and 30 are allowed, 29 is preferred, because it gives |
| # Google Cloud Support more debugging visibility. |
| "type": "A String", # The type of interconnect attachment this is, which can take one of the |
| # following values: |
| # |
| # - DEDICATED: an attachment to a Dedicated Interconnect. |
| # - PARTNER: an attachment to a Partner Interconnect, created by the |
| # customer. |
| # - PARTNER_PROVIDER: an attachment to a Partner Interconnect, created by |
| # the partner. |
| # |
| # - L2_DEDICATED: a L2 attachment to a Dedicated Interconnect. |
| "vlanTag8021q": 42, # The IEEE 802.1Q VLAN tag for this attachment, in the range 2-4093. |
| # Only specified at creation time. |
| }, |
| ], |
| "kind": "compute#interconnectAttachmentList", # [Output Only] Type of resource. Alwayscompute#interconnectAttachmentList for lists of interconnect |
| # attachments. |
| "nextPageToken": "A String", # [Output Only] This token allows you to get the next page of results for |
| # list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for |
| # the query parameter pageToken in the next list request. |
| # Subsequent list requests will have their own nextPageToken to |
| # continue paging through the results. |
| "selfLink": "A String", # [Output Only] Server-defined URL for this resource. |
| "warning": { # [Output Only] Informational warning message. |
| "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute |
| # Engine returns NO_RESULTS_ON_PAGE if there |
| # are no results in the response. |
| "data": [ # [Output Only] Metadata about this warning in key: |
| # value format. For example: |
| # |
| # "data": [ |
| # { |
| # "key": "scope", |
| # "value": "zones/us-east1-d" |
| # } |
| { |
| "key": "A String", # [Output Only] A key that provides more detail on the warning being |
| # returned. For example, for warnings where there are no results in a list |
| # request for a particular zone, this key might be scope and |
| # the key value might be the zone name. Other examples might be a key |
| # indicating a deprecated resource and a suggested replacement, or a |
| # warning about invalid network settings (for example, if an instance |
| # attempts to perform IP forwarding but is not enabled for IP forwarding). |
| "value": "A String", # [Output Only] A warning data value corresponding to the key. |
| }, |
| ], |
| "message": "A String", # [Output Only] A human-readable description of the warning code. |
| }, |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="list_next">list_next()</code> |
| <pre>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. |
| </pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="patch">patch(project, region, interconnectAttachment, body=None, requestId=None, x__xgafv=None)</code> |
| <pre>Updates the specified interconnect attachment with the data included in the |
| request. This method supportsPATCH |
| semantics and uses theJSON merge |
| patch format and processing rules. |
| |
| Args: |
| project: string, Project ID for this request. (required) |
| region: string, Name of the region scoping this request. (required) |
| interconnectAttachment: string, Name of the interconnect attachment to patch. (required) |
| body: object, The request body. |
| The object takes the form of: |
| |
| { # Represents an Interconnect Attachment (VLAN) resource. |
| # |
| # You can use Interconnect attachments (VLANS) to connect your Virtual Private |
| # Cloud networks to your on-premises networks through an Interconnect. |
| # For more information, read |
| # Creating VLAN Attachments. |
| "adminEnabled": True or False, # Determines whether this Attachment will carry packets. |
| # Not present for PARTNER_PROVIDER. |
| "attachmentGroup": "A String", # [Output Only] URL of the AttachmentGroup that includes this Attachment. |
| "bandwidth": "A String", # Provisioned bandwidth capacity for the interconnect attachment. For |
| # attachments of type DEDICATED, the user can set the bandwidth. |
| # For attachments of type PARTNER, the Google Partner that is operating |
| # the interconnect must set the bandwidth. |
| # Output only for PARTNER type, mutable for PARTNER_PROVIDER and DEDICATED, |
| # and can take one of the following values: |
| # |
| # - BPS_50M: 50 Mbit/s |
| # - BPS_100M: 100 Mbit/s |
| # - BPS_200M: 200 Mbit/s |
| # - BPS_300M: 300 Mbit/s |
| # - BPS_400M: 400 Mbit/s |
| # - BPS_500M: 500 Mbit/s |
| # - BPS_1G: 1 Gbit/s |
| # - BPS_2G: 2 Gbit/s |
| # - BPS_5G: 5 Gbit/s |
| # - BPS_10G: 10 Gbit/s |
| # - BPS_20G: 20 Gbit/s |
| # - BPS_50G: 50 Gbit/s |
| # - BPS_100G: 100 Gbit/s |
| "candidateCloudRouterIpAddress": "A String", # Single IPv4 address + prefix length to be configured on the cloud router |
| # interface for this interconnect attachment. |
| # |
| # - Both candidate_cloud_router_ip_address and |
| # candidate_customer_router_ip_address fields must be set or both must be |
| # unset. |
| # - Prefix length of both candidate_cloud_router_ip_address and |
| # candidate_customer_router_ip_address must be the same. |
| # - Max prefix length is 31. |
| "candidateCloudRouterIpv6Address": "A String", # Single IPv6 address + prefix length to be configured on the cloud router |
| # interface for this interconnect attachment. |
| # |
| # - Both candidate_cloud_router_ipv6_address and |
| # candidate_customer_router_ipv6_address fields must be set or both must be |
| # unset. |
| # - Prefix length of both candidate_cloud_router_ipv6_address and |
| # candidate_customer_router_ipv6_address must be the same. |
| # - Max prefix length is 126. |
| "candidateCustomerRouterIpAddress": "A String", # Single IPv4 address + prefix length to be configured on the customer router |
| # interface for this interconnect attachment. |
| "candidateCustomerRouterIpv6Address": "A String", # Single IPv6 address + prefix length to be configured on the customer router |
| # interface for this interconnect attachment. |
| "candidateIpv6Subnets": [ # This field is not available. |
| "A String", |
| ], |
| "candidateSubnets": [ # Input only. Up to 16 candidate prefixes that can be used to restrict the allocation |
| # of cloudRouterIpAddress and customerRouterIpAddress for this attachment. |
| # All prefixes must be within link-local address space (169.254.0.0/16) and |
| # must be /29 or shorter (/28, /27, etc). Google will attempt to select an |
| # unused /29 from the supplied candidate prefix(es). The request will fail if |
| # all possible /29s are in use on Google's edge. If not supplied, Google will |
| # randomly select an unused /29 from all of link-local space. |
| "A String", |
| ], |
| "cloudRouterIpAddress": "A String", # [Output Only] IPv4 address + prefix length to be configured on Cloud Router |
| # Interface for this interconnect attachment. |
| "cloudRouterIpv6Address": "A String", # [Output Only] IPv6 address + prefix length to be configured on Cloud |
| # Router Interface for this interconnect attachment. |
| "cloudRouterIpv6InterfaceId": "A String", # This field is not available. |
| "configurationConstraints": { # [Output Only] Constraints for this attachment, if any. The attachment does |
| # not work if these constraints are not met. |
| "bgpMd5": "A String", # [Output Only] Whether the attachment's BGP session |
| # requires/allows/disallows BGP MD5 authentication. This can take one of |
| # the following values: MD5_OPTIONAL, MD5_REQUIRED, MD5_UNSUPPORTED. |
| # |
| # For example, a Cross-Cloud Interconnect connection to a remote cloud |
| # provider that requires BGP MD5 authentication has the |
| # interconnectRemoteLocation attachment_configuration_constraints.bgp_md5 |
| # field set to MD5_REQUIRED, and that property is propagated to the |
| # attachment. Similarly, if BGP MD5 is MD5_UNSUPPORTED, an error is |
| # returned if MD5 is requested. |
| "bgpPeerAsnRanges": [ # [Output Only] List of ASN ranges that the remote location is known to |
| # support. Formatted as an array of inclusive ranges {min: min-value, max: |
| # max-value}. For example, [{min: 123, max: 123}, {min: 64512, max: 65534}] |
| # allows the peer ASN to be 123 or anything in the range 64512-65534. |
| # |
| # This field is only advisory. Although the API accepts other ranges, these |
| # are the ranges that we recommend. |
| { |
| "max": 42, |
| "min": 42, |
| }, |
| ], |
| }, |
| "creationTimestamp": "A String", # [Output Only] Creation timestamp inRFC3339 |
| # text format. |
| "customerRouterIpAddress": "A String", # [Output Only] IPv4 address + prefix length to be configured on the customer |
| # router subinterface for this interconnect attachment. |
| "customerRouterIpv6Address": "A String", # [Output Only] IPv6 address + prefix length to be configured on the |
| # customer router subinterface for this interconnect attachment. |
| "customerRouterIpv6InterfaceId": "A String", # This field is not available. |
| "dataplaneVersion": 42, # [Output Only] Dataplane version for this InterconnectAttachment. This |
| # field is only present for Dataplane version 2 and higher. Absence of this |
| # field in the API output indicates that the Dataplane is version 1. |
| "description": "A String", # An optional description of this resource. |
| "edgeAvailabilityDomain": "A String", # Input only. Desired availability domain for the attachment. Only available for type |
| # PARTNER, at creation time, and can take one of the following values: |
| # |
| # - AVAILABILITY_DOMAIN_ANY |
| # - AVAILABILITY_DOMAIN_1 |
| # - AVAILABILITY_DOMAIN_2 |
| # |
| # |
| # For improved reliability, customers should configure a pair of attachments, |
| # one per availability domain. The selected availability domain will be |
| # provided to the Partner via the pairing key, so that the provisioned |
| # circuit will lie in the specified domain. If not specified, the value will |
| # default to AVAILABILITY_DOMAIN_ANY. |
| "encryption": "A String", # Indicates the user-supplied encryption option of this VLAN attachment |
| # (interconnectAttachment). Can only be specified at attachment creation |
| # for PARTNER or DEDICATED attachments. |
| # Possible values are: |
| # |
| # - NONE - This is the default value, which means that the |
| # VLAN attachment carries unencrypted traffic. VMs are able to send |
| # traffic to, or receive traffic from, such a VLAN attachment. |
| # - IPSEC - The VLAN attachment carries only encrypted |
| # traffic that is encrypted by an IPsec device, such as an HA VPN gateway or |
| # third-party IPsec VPN. VMs cannot directly send traffic to, or receive |
| # traffic from, such a VLAN attachment. To use *HA VPN over Cloud |
| # Interconnect*, the VLAN attachment must be created with this |
| # option. |
| "googleReferenceId": "A String", # [Output Only] Google reference ID, to be used when raising support tickets |
| # with Google or otherwise to debug backend connectivity issues. |
| # [Deprecated] This field is not used. |
| "id": "A String", # [Output Only] The unique identifier for the resource. This identifier is |
| # defined by the server. |
| "interconnect": "A String", # URL of the underlying Interconnect object that this attachment's traffic |
| # will traverse through. |
| "ipsecInternalAddresses": [ # A list of URLs of addresses that have been reserved for the VLAN |
| # attachment. Used only for the VLAN attachment that has the encryption |
| # option as IPSEC. The addresses must be regional internal IP address ranges. |
| # When creating an HA VPN gateway over the VLAN attachment, if the attachment |
| # is configured to use a regional internal IP address, then the VPN gateway's |
| # IP address is allocated from the IP address range specified here. For |
| # example, if the HA VPN gateway's interface 0 is paired to this VLAN |
| # attachment, then a regional internal IP address for the VPN gateway |
| # interface 0 will be allocated from the IP address specified for this |
| # VLAN attachment. |
| # If this field is not specified when creating the VLAN attachment, then |
| # later on when creating an HA VPN gateway on this VLAN attachment, the HA |
| # VPN gateway's IP address is allocated from the regional external IP address |
| # pool. |
| "A String", |
| ], |
| "kind": "compute#interconnectAttachment", # [Output Only] Type of the resource. Alwayscompute#interconnectAttachment for interconnect attachments. |
| "l2Forwarding": { # L2 Interconnect Attachment related configuration. # L2 Interconnect Attachment related config. This field is required if the |
| # type is L2_DEDICATED. |
| # |
| # The configuration specifies how VLAN tags (like dot1q, qinq, or dot1ad) |
| # within L2 packets are mapped to the destination appliances IP addresses. |
| # The packet is then encapsulated with the appliance IP address and sent to |
| # the edge appliance. |
| "applianceMappings": { # Optional. A map of VLAN tags to appliances and optional inner mapping |
| # rules. If VLANs are not explicitly mapped to any appliance, the |
| # defaultApplianceIpAddress is used. |
| # |
| # Each VLAN tag can be a single number or a range of numbers in the range |
| # of 1 to 4094, e.g., "1" or "4001-4094". Non-empty and non-overlapping |
| # VLAN tag ranges are enforced, and violating operations will be rejected. |
| # |
| # The VLAN tags in the Ethernet header must use an ethertype value of |
| # 0x88A8 or 0x8100. |
| "a_key": { # Two-level VLAN-to-Appliance mapping rule. |
| "applianceIpAddress": "A String", # Optional. A single IPv4 or IPv6 address used as the destination IP |
| # address for ingress packets that match on a VLAN tag, but do not match |
| # a more specific inner VLAN tag. |
| # |
| # Unset field (null-value) indicates both VLAN tags are required to be |
| # mapped. Otherwise, defaultApplianceIpAddress is used. |
| "innerVlanToApplianceMappings": [ # Optional. Used to match against the inner VLAN when the packet |
| # contains two VLAN tags. |
| # |
| # A list of mapping rules from inner VLAN tags to IP addresses. If the |
| # inner VLAN is not explicitly mapped to an IP address range, the |
| # applianceIpAddress is used. |
| { # The inner VLAN-to-Appliance mapping. |
| "innerApplianceIpAddress": "A String", # Required in this object. A single IPv4 or IPv6 address used as the |
| # destination IP address for ingress packets that match on both VLAN |
| # tags. |
| "innerVlanTags": [ # Required in this object. Used to match the inner VLAN tag on the |
| # packet. Each entry can be a single number or a range of numbers in |
| # the range of 1 to 4094, e.g., ["1", "4001-4094"] is valid. Non-empty |
| # and Non-overlapping VLAN tag ranges are enforced, and violating |
| # operations will be rejected. |
| # |
| # The inner VLAN tags must have an ethertype value of 0x8100. |
| "A String", |
| ], |
| }, |
| ], |
| "name": "A String", # Optional. The name of this appliance mapping rule. |
| }, |
| }, |
| "defaultApplianceIpAddress": "A String", # Optional. A single IPv4 or IPv6 address used as the default destination |
| # IP when there is no VLAN mapping result found. |
| # |
| # Unset field (null-value) indicates the unmatched packet should be |
| # dropped. |
| "geneveHeader": { # GeneveHeader related configurations. # Optional. It represents the structure of a Geneve (Generic Network |
| # Virtualization Encapsulation) header, as defined in RFC8926. It encapsulates packets from various |
| # protocols (e.g., Ethernet, IPv4, IPv6) for use in network virtualization |
| # environments. |
| "vni": 42, # Optional. VNI is a 24-bit unique virtual network identifier, from 0 to |
| # 16,777,215. |
| }, |
| "network": "A String", # Required. Resource URL of the network to which this attachment belongs. |
| "tunnelEndpointIpAddress": "A String", # Required. A single IPv4 or IPv6 address. This address will be used as the |
| # source IP address for packets sent to the appliances, and must be used as |
| # the destination IP address for packets that should be sent out through |
| # this attachment. |
| }, |
| "labelFingerprint": "A String", # A fingerprint for the labels being applied to this InterconnectAttachment, |
| # which is essentially a hash of the labels set used for optimistic locking. |
| # The fingerprint is initially generated by Compute Engine and changes after |
| # every request to modify or update labels. You must always provide an |
| # up-to-date fingerprint hash in order to update or change labels, |
| # otherwise the request will fail with error412 conditionNotMet. |
| # |
| # To see the latest fingerprint, make a get() request to |
| # retrieve an InterconnectAttachment. |
| "labels": { # Labels for this resource. These can only be added or modified by thesetLabels method. Each label key/value pair must comply withRFC1035. |
| # Label values may be empty. |
| "a_key": "A String", |
| }, |
| "mtu": 42, # Maximum Transmission Unit (MTU), in bytes, of packets passing through this |
| # interconnect attachment. |
| # Valid values are 1440, 1460, 1500, and 8896. If not specified, |
| # the value will default to 1440. |
| "multicastEnabled": True or False, # Whether or not to permit multicast traffic for this attachment. Multicast |
| # packets will be dropped if this is not enabled. |
| "name": "A String", # Name of the resource. Provided by the client when the resource is created. |
| # The name must be 1-63 characters long, and comply withRFC1035. |
| # Specifically, the name must be 1-63 characters long and match the regular |
| # expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first |
| # character must be a lowercase letter, and all following characters must |
| # be a dash, lowercase letter, or digit, except the last character, which |
| # cannot be a dash. |
| "operationalStatus": "A String", # [Output Only] The current status of whether or not this interconnect |
| # attachment is functional, which can take one of the following values: |
| # |
| # - OS_ACTIVE: The attachment has been turned up and is ready to |
| # use. |
| # - OS_UNPROVISIONED: The attachment is not ready to use yet, |
| # because turnup is not complete. |
| "pairingKey": "A String", # [Output only for type PARTNER. Input only for PARTNER_PROVIDER. Not |
| # present for DEDICATED]. |
| # The opaque identifier of a PARTNER attachment used to initiate |
| # provisioning with a selected partner. |
| # Of the form "XXXXX/region/domain" |
| "params": { # Additional interconnect attachment parameters. # Input only. [Input Only] Additional params passed with the request, but not persisted |
| # as part of resource payload. |
| "resourceManagerTags": { # Tag keys/values directly bound to this resource. |
| # Tag keys and values have the same definition as resource |
| # manager tags. The field is allowed for INSERT |
| # only. The keys/values to set on the resource should be specified in |
| # either ID { : } or Namespaced format |
| # { : }. |
| # For example the following are valid inputs: |
| # * {"tagKeys/333" : "tagValues/444", "tagKeys/123" : "tagValues/456"} |
| # * {"123/environment" : "production", "345/abc" : "xyz"} |
| # Note: |
| # * Invalid combinations of ID & namespaced format is not supported. For |
| # instance: {"123/environment" : "tagValues/444"} is invalid. |
| # * Inconsistent format is not supported. For instance: |
| # {"tagKeys/333" : "tagValues/444", "123/env" : "prod"} is invalid. |
| "a_key": "A String", |
| }, |
| }, |
| "partnerAsn": "A String", # Optional BGP ASN for the router supplied by a Layer 3 Partner if they |
| # configured BGP on behalf of the customer. |
| # Output only for PARTNER type, input only for PARTNER_PROVIDER, not |
| # available for DEDICATED. |
| "partnerMetadata": { # Informational metadata about Partner attachments from Partners to display # Informational metadata about Partner attachments from Partners to display |
| # to customers. |
| # Output only for PARTNER type, mutable for PARTNER_PROVIDER, not |
| # available for DEDICATED. |
| # to customers. These fields are propagated from PARTNER_PROVIDER |
| # attachments to their corresponding PARTNER attachments. |
| "interconnectName": "A String", # Plain text name of the Interconnect this attachment is connected to, as |
| # displayed in the Partner's portal. For instance "Chicago 1". |
| # This value may be validated to match approved Partner values. |
| "partnerName": "A String", # Plain text name of the Partner providing this attachment. |
| # This value may be validated to match approved Partner values. |
| "portalUrl": "A String", # URL of the Partner's portal for this Attachment. Partners may customise |
| # this to be a deep link to the specific resource on the Partner portal. |
| # This value may be validated to match approved Partner values. |
| }, |
| "privateInterconnectInfo": { # Information for an interconnect attachment when this belongs to an # [Output Only] Information specific to an InterconnectAttachment. |
| # This property is populated if the interconnect that |
| # this is attached to is of type DEDICATED. |
| # interconnect of type DEDICATED. |
| "tag8021q": 42, # [Output Only] 802.1q encapsulation tag to be used for traffic between |
| # Google and the customer, going to and from this network and region. |
| }, |
| "region": "A String", # [Output Only] URL of the region where the regional interconnect attachment |
| # resides. |
| # You must specify this field as part of the HTTP request URL. It is |
| # not settable as a field in the request body. |
| "remoteService": "A String", # [Output Only] |
| # If the attachment is on a Cross-Cloud Interconnect connection, this field |
| # contains the interconnect's remote location service provider. Example |
| # values: "Amazon Web Services" "Microsoft Azure". |
| # |
| # The field is set only for attachments on Cross-Cloud Interconnect |
| # connections. Its value is copied from the InterconnectRemoteLocation |
| # remoteService field. |
| "router": "A String", # URL of the Cloud Router to be used for dynamic routing. This router must be |
| # in the same region as this InterconnectAttachment. The |
| # InterconnectAttachment will automatically connect the Interconnect to the |
| # network & region within which the Cloud Router is configured. |
| "satisfiesPzs": True or False, # [Output Only] Reserved for future use. |
| "selfLink": "A String", # [Output Only] Server-defined URL for the resource. |
| "selfLinkWithId": "A String", # [Output Only] Server-defined URL for this resource with the resource id. |
| "stackType": "A String", # The stack type for this interconnect attachment to identify whether the |
| # IPv6 feature is enabled or not. If not specified, IPV4_ONLY |
| # will be used. |
| # |
| # This field can be both set at interconnect attachments creation and |
| # update interconnect attachment operations. |
| "state": "A String", # [Output Only] The current state of this attachment's functionality. |
| # Enum values ACTIVE and UNPROVISIONED are shared by DEDICATED/PRIVATE, |
| # PARTNER, and PARTNER_PROVIDER interconnect attachments, while enum values |
| # PENDING_PARTNER, PARTNER_REQUEST_RECEIVED, and PENDING_CUSTOMER are used |
| # for only PARTNER and PARTNER_PROVIDER interconnect attachments. |
| # This state can take one of the following values: |
| # |
| # - ACTIVE: The attachment has been turned up and is ready to use. |
| # - UNPROVISIONED: The attachment is not ready to use yet, because turnup |
| # is not complete. |
| # - PENDING_PARTNER: A newly-created PARTNER attachment that has not yet |
| # been configured on the Partner side. |
| # - PARTNER_REQUEST_RECEIVED: A PARTNER attachment is in the process of |
| # provisioning after a PARTNER_PROVIDER attachment was created that |
| # references it. |
| # - PENDING_CUSTOMER: A PARTNER or PARTNER_PROVIDER |
| # attachment that is waiting for a customer to activate it. |
| # - DEFUNCT: |
| # The attachment was deleted externally and is no longer functional. This |
| # could be because the associated Interconnect was removed, or because the |
| # other side of a Partner attachment was deleted. |
| "subnetLength": 42, # Input only. Length of the IPv4 subnet mask. |
| # Allowed values: |
| # |
| # |
| # - 29 (default) |
| # - 30 |
| # |
| # The default value is 29, except for Cross-Cloud Interconnect |
| # connections that use an InterconnectRemoteLocation with a |
| # constraints.subnetLengthRange.min equal to 30. For example, |
| # connections that use an Azure remote location fall into this |
| # category. In these cases, the default value is 30, and requesting |
| # 29 returns an error. |
| # |
| # Where both 29 and 30 are allowed, 29 is preferred, because it gives |
| # Google Cloud Support more debugging visibility. |
| "type": "A String", # The type of interconnect attachment this is, which can take one of the |
| # following values: |
| # |
| # - DEDICATED: an attachment to a Dedicated Interconnect. |
| # - PARTNER: an attachment to a Partner Interconnect, created by the |
| # customer. |
| # - PARTNER_PROVIDER: an attachment to a Partner Interconnect, created by |
| # the partner. |
| # |
| # - L2_DEDICATED: a L2 attachment to a Dedicated Interconnect. |
| "vlanTag8021q": 42, # The IEEE 802.1Q VLAN tag for this attachment, in the range 2-4093. |
| # Only specified at creation time. |
| } |
| |
| requestId: string, An optional request ID to identify requests. Specify a unique request ID so |
| that if you must retry your request, the server will know to ignore the |
| request if it has already been completed. |
| |
| For example, consider a situation where you make an initial request and |
| the request times out. If you make the request again with the same |
| request ID, the server can check if original operation with the same |
| request ID was received, and if so, will ignore the second request. This |
| prevents clients from accidentally creating duplicate commitments. |
| |
| The request ID must be |
| a valid UUID with the exception that zero UUID is not supported |
| (00000000-0000-0000-0000-000000000000). |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # Represents an Operation resource. |
| # |
| # Google Compute Engine has three Operation resources: |
| # |
| # * [Global](/compute/docs/reference/rest/alpha/globalOperations) |
| # * [Regional](/compute/docs/reference/rest/alpha/regionOperations) |
| # * [Zonal](/compute/docs/reference/rest/alpha/zoneOperations) |
| # |
| # You can use an operation resource to manage asynchronous API requests. |
| # For more information, readHandling |
| # API responses. |
| # |
| # Operations can be global, regional or zonal. |
| # |
| # - For global operations, use the `globalOperations` |
| # resource. |
| # - For regional operations, use the |
| # `regionOperations` resource. |
| # - For zonal operations, use |
| # the `zoneOperations` resource. |
| # |
| # |
| # |
| # For more information, read |
| # Global, Regional, and Zonal Resources. |
| # |
| # Note that completed Operation resources have a limited |
| # retention period. |
| "clientOperationId": "A String", # [Output Only] The value of `requestId` if you provided it in the request. |
| # Not present otherwise. |
| "creationTimestamp": "A String", # [Deprecated] This field is deprecated. |
| "description": "A String", # [Output Only] A textual description of the operation, which is |
| # set when the operation is created. |
| "endTime": "A String", # [Output Only] The time that this operation was completed. This value is inRFC3339 |
| # text format. |
| "error": { # [Output Only] If errors are generated during processing of the operation, |
| # this field will be populated. |
| "errors": [ # [Output Only] The array of errors encountered while processing this |
| # operation. |
| { |
| "code": "A String", # [Output Only] The error type identifier for this error. |
| "errorDetails": [ # [Output Only] An optional list of messages that contain the error |
| # details. There is a set of defined message types to use for providing |
| # details.The syntax depends on the error code. For example, |
| # QuotaExceededInfo will have details when the error code is |
| # QUOTA_EXCEEDED. |
| { |
| "errorInfo": { # Describes the cause of the error with structured details. |
| # |
| # Example of an error when contacting the "pubsub.googleapis.com" API when it |
| # is not enabled: |
| # |
| # { "reason": "API_DISABLED" |
| # "domain": "googleapis.com" |
| # "metadata": { |
| # "resource": "projects/123", |
| # "service": "pubsub.googleapis.com" |
| # } |
| # } |
| # |
| # This response indicates that the pubsub.googleapis.com API is not enabled. |
| # |
| # Example of an error that is returned when attempting to create a Spanner |
| # instance in a region that is out of stock: |
| # |
| # { "reason": "STOCKOUT" |
| # "domain": "spanner.googleapis.com", |
| # "metadata": { |
| # "availableRegions": "us-central1,us-east2" |
| # } |
| # } |
| "domain": "A String", # The logical grouping to which the "reason" belongs. The error domain |
| # is typically the registered service name of the tool or product that |
| # generates the error. Example: "pubsub.googleapis.com". If the error is |
| # generated by some common infrastructure, the error domain must be a |
| # globally unique value that identifies the infrastructure. For Google API |
| # infrastructure, the error domain is "googleapis.com". |
| "metadatas": { # Additional structured details about this error. |
| # |
| # Keys must match a regular expression of `a-z+` but should |
| # ideally be lowerCamelCase. Also, they must be limited to 64 characters in |
| # length. When identifying the current value of an exceeded limit, the units |
| # should be contained in the key, not the value. For example, rather than |
| # `{"instanceLimit": "100/request"}`, should be returned as, |
| # `{"instanceLimitPerRequest": "100"}`, if the client exceeds the number of |
| # instances that can be created in a single (batch) request. |
| "a_key": "A String", |
| }, |
| "reason": "A String", # The reason of the error. This is a constant value that identifies the |
| # proximate cause of the error. Error reasons are unique within a particular |
| # domain of errors. This should be at most 63 characters and match a |
| # regular expression of `A-Z+[A-Z0-9]`, which represents |
| # UPPER_SNAKE_CASE. |
| }, |
| "help": { # Provides links to documentation or for performing an out of band action. |
| # |
| # For example, if a quota check failed with an error indicating the calling |
| # project hasn't enabled the accessed service, this can contain a URL pointing |
| # directly to the right place in the developer console to flip the bit. |
| "links": [ # URL(s) pointing to additional information on handling the current error. |
| { # Describes a URL link. |
| "description": "A String", # Describes what the link offers. |
| "url": "A String", # The URL of the link. |
| }, |
| ], |
| }, |
| "localizedMessage": { # Provides a localized error message that is safe to return to the user |
| # which can be attached to an RPC error. |
| "locale": "A String", # The locale used following the specification defined at |
| # https://www.rfc-editor.org/rfc/bcp/bcp47.txt. |
| # Examples are: "en-US", "fr-CH", "es-MX" |
| "message": "A String", # The localized error message in the above locale. |
| }, |
| "quotaInfo": { # Additional details for quota exceeded error for resource quota. |
| "dimensions": { # The map holding related quota dimensions. |
| "a_key": "A String", |
| }, |
| "futureLimit": 3.14, # Future quota limit being rolled out. The limit's unit depends on the quota |
| # type or metric. |
| "limit": 3.14, # Current effective quota limit. The limit's unit depends on the quota type |
| # or metric. |
| "limitName": "A String", # The name of the quota limit. |
| "metricName": "A String", # The Compute Engine quota metric name. |
| "rolloutStatus": "A String", # Rollout status of the future quota limit. |
| }, |
| }, |
| ], |
| "location": "A String", # [Output Only] Indicates the field in the request that caused the error. |
| # This property is optional. |
| "message": "A String", # [Output Only] An optional, human-readable error message. |
| }, |
| ], |
| }, |
| "httpErrorMessage": "A String", # [Output Only] If the operation fails, this field contains the HTTP error |
| # message that was returned, such as `NOT FOUND`. |
| "httpErrorStatusCode": 42, # [Output Only] If the operation fails, this field contains the HTTP error |
| # status code that was returned. For example, a `404` means the |
| # resource was not found. |
| "id": "A String", # [Output Only] The unique identifier for the operation. This identifier is |
| # defined by the server. |
| "insertTime": "A String", # [Output Only] The time that this operation was requested. |
| # This value is inRFC3339 |
| # text format. |
| "instancesBulkInsertOperationMetadata": { |
| "perLocationStatus": { # Status information per location (location name is key). |
| # Example key: zones/us-central1-a |
| "a_key": { |
| "createdVmCount": 42, # [Output Only] Count of VMs successfully created so far. |
| "deletedVmCount": 42, # [Output Only] Count of VMs that got deleted during rollback. |
| "failedToCreateVmCount": 42, # [Output Only] Count of VMs that started creating but encountered an |
| # error. |
| "status": "A String", # [Output Only] Creation status of BulkInsert operation - information |
| # if the flow is rolling forward or rolling back. |
| "targetVmCount": 42, # [Output Only] Count of VMs originally planned to be created. |
| }, |
| }, |
| }, |
| "kind": "compute#operation", # [Output Only] Type of the resource. Always `compute#operation` for |
| # Operation resources. |
| "name": "A String", # [Output Only] Name of the operation. |
| "operationGroupId": "A String", # [Output Only] An ID that represents a group of operations, such as when a |
| # group of operations results from a `bulkInsert` API request. |
| "operationType": "A String", # [Output Only] The type of operation, such as `insert`, |
| # `update`, or `delete`, and so on. |
| "progress": 42, # [Output Only] An optional progress indicator that ranges from 0 to 100. |
| # There is no requirement that this be linear or support any granularity of |
| # operations. This should not be used to guess when the operation will be |
| # complete. This number should monotonically increase as the operation |
| # progresses. |
| "region": "A String", # [Output Only] The URL of the region where the operation resides. Only |
| # applicable when performing regional operations. |
| "selfLink": "A String", # [Output Only] Server-defined URL for the resource. |
| "selfLinkWithId": "A String", # [Output Only] Server-defined URL for this resource with the resource id. |
| "setCommonInstanceMetadataOperationMetadata": { # [Output Only] If the operation is for projects.setCommonInstanceMetadata, |
| # this field will contain information on all underlying zonal actions and |
| # their state. |
| "clientOperationId": "A String", # [Output Only] The client operation id. |
| "perLocationOperations": { # [Output Only] Status information per location (location name is key). |
| # Example key: zones/us-central1-a |
| "a_key": { |
| "error": { # The `Status` type defines a logical error model that is suitable for # [Output Only] If state is `ABANDONED` or `FAILED`, this field is |
| # populated. |
| # different programming environments, including REST APIs and RPC APIs. It is |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains |
| # three pieces of data: error code, error message, and error details. |
| # |
| # You can find out more about this error model and how to work with it in the |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. |
| "details": [ # A list of messages that carry the error details. There is a common set of |
| # message types for APIs to use. |
| { |
| "a_key": "", # Properties of the object. Contains field @type with type URL. |
| }, |
| ], |
| "message": "A String", # A developer-facing error message, which should be in English. Any |
| # user-facing error message should be localized and sent in the |
| # google.rpc.Status.details field, or localized by the client. |
| }, |
| "state": "A String", # [Output Only] Status of the action, which can be one of the following: |
| # `PROPAGATING`, `PROPAGATED`, `ABANDONED`, `FAILED`, or `DONE`. |
| }, |
| }, |
| }, |
| "startTime": "A String", # [Output Only] The time that this operation was started by the server. |
| # This value is inRFC3339 |
| # text format. |
| "status": "A String", # [Output Only] The status of the operation, which can be one of the |
| # following: |
| # `PENDING`, `RUNNING`, or `DONE`. |
| "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the |
| # operation. |
| "targetId": "A String", # [Output Only] The unique target ID, which identifies a specific incarnation |
| # of the target resource. |
| "targetLink": "A String", # [Output Only] The URL of the resource that the operation modifies. For |
| # operations related to creating a snapshot, this points to the disk |
| # that the snapshot was created from. |
| "user": "A String", # [Output Only] User who requested the operation, for example: |
| # `[email protected]` or |
| # `alice_smith_identifier (global/workforcePools/example-com-us-employees)`. |
| "warnings": [ # [Output Only] If warning messages are generated during processing of the |
| # operation, this field will be populated. |
| { |
| "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute |
| # Engine returns NO_RESULTS_ON_PAGE if there |
| # are no results in the response. |
| "data": [ # [Output Only] Metadata about this warning in key: |
| # value format. For example: |
| # |
| # "data": [ |
| # { |
| # "key": "scope", |
| # "value": "zones/us-east1-d" |
| # } |
| { |
| "key": "A String", # [Output Only] A key that provides more detail on the warning being |
| # returned. For example, for warnings where there are no results in a list |
| # request for a particular zone, this key might be scope and |
| # the key value might be the zone name. Other examples might be a key |
| # indicating a deprecated resource and a suggested replacement, or a |
| # warning about invalid network settings (for example, if an instance |
| # attempts to perform IP forwarding but is not enabled for IP forwarding). |
| "value": "A String", # [Output Only] A warning data value corresponding to the key. |
| }, |
| ], |
| "message": "A String", # [Output Only] A human-readable description of the warning code. |
| }, |
| ], |
| "zone": "A String", # [Output Only] The URL of the zone where the operation resides. Only |
| # applicable when performing per-zone operations. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="setIamPolicy">setIamPolicy(project, region, resource, body=None, x__xgafv=None)</code> |
| <pre>Sets the access control policy on the specified resource. |
| Replaces any existing policy. |
| |
| Args: |
| project: string, Project ID for this request. (required) |
| region: string, The name of the region for this request. (required) |
| resource: string, Name or id of the resource for this request. (required) |
| body: object, The request body. |
| The object takes the form of: |
| |
| { |
| "bindings": [ # Flatten Policy to create a backwacd compatible wire-format. |
| # Deprecated. Use 'policy' to specify bindings. |
| { # Associates `members`, or principals, with a `role`. |
| "condition": { # Represents a textual expression in the Common Expression Language (CEL) # 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). |
| # 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. |
| "description": "A String", # Optional. Description of the expression. This is a longer text which |
| # describes the expression, e.g. when hovered over it in a UI. |
| "expression": "A String", # Textual representation of an expression in Common Expression Language |
| # syntax. |
| "location": "A String", # Optional. String indicating the location of the expression for error |
| # reporting, e.g. a file name and a position in the file. |
| "title": "A String", # 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. |
| }, |
| "members": [ # 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, `[email protected]` . |
| # |
| # |
| # * `serviceAccount:{emailid}`: An email address that represents a Google |
| # service account. For example, |
| # `[email protected]`. |
| # |
| # * `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, `[email protected]`. |
| # |
| # |
| # * `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}/*`: |
| # 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}/*`: |
| # 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, `[email protected]?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, |
| # `[email protected]?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, `[email protected]?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`. |
| "A String", |
| ], |
| "role": "A String", # 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). |
| }, |
| ], |
| "etag": "A String", # Flatten Policy to create a backward compatible wire-format. |
| # Deprecated. Use 'policy' to specify the etag. |
| "policy": { # An Identity and Access Management (IAM) policy, which specifies access # REQUIRED: The complete policy to be applied to the 'resource'. The size of |
| # the policy is limited to a few 10s of KB. An empty policy is in general a |
| # valid policy but certain services (like Projects) might reject them. |
| # controls for Google Cloud resources. |
| # |
| # |
| # A `Policy` is a collection of `bindings`. A `binding` binds one or more |
| # `members`, or principals, to a single `role`. Principals can be user |
| # accounts, service accounts, Google groups, and domains (such as G Suite). A |
| # `role` is a named list of permissions; each `role` can be an IAM predefined |
| # role or a user-created custom role. |
| # |
| # For some types of Google Cloud resources, a `binding` can also specify a |
| # `condition`, which is a logical expression that allows access to a resource |
| # only if the expression evaluates to `true`. A condition can add constraints |
| # based on attributes of the request, the resource, or both. To learn which |
| # resources support conditions in their IAM policies, see the |
| # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). |
| # |
| # **JSON example:** |
| # |
| # ``` |
| # { |
| # "bindings": [ |
| # { |
| # "role": "roles/resourcemanager.organizationAdmin", |
| # "members": [ |
| # "user:[email protected]", |
| # "group:[email protected]", |
| # "domain:google.com", |
| # "serviceAccount:[email protected]" |
| # ] |
| # }, |
| # { |
| # "role": "roles/resourcemanager.organizationViewer", |
| # "members": [ |
| # "user:[email protected]" |
| # ], |
| # "condition": { |
| # "title": "expirable access", |
| # "description": "Does not grant access after Sep 2020", |
| # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", |
| # } |
| # } |
| # ], |
| # "etag": "BwWWja0YfJA=", |
| # "version": 3 |
| # } |
| # ``` |
| # |
| # **YAML example:** |
| # |
| # ``` |
| # bindings: |
| # - members: |
| # - user:[email protected] |
| # - group:[email protected] |
| # - domain:google.com |
| # - serviceAccount:[email protected] |
| # role: roles/resourcemanager.organizationAdmin |
| # - members: |
| # - user:[email protected] |
| # role: roles/resourcemanager.organizationViewer |
| # condition: |
| # title: expirable access |
| # description: Does not grant access after Sep 2020 |
| # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') |
| # etag: BwWWja0YfJA= |
| # version: 3 |
| # ``` |
| # |
| # For a description of IAM and its features, see the |
| # [IAM documentation](https://cloud.google.com/iam/docs/). |
| "auditConfigs": [ # Specifies cloud audit logging configuration for this policy. |
| { # 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:[email protected]" |
| # ] |
| # }, |
| # { |
| # "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:[email protected]" |
| # ] |
| # } |
| # ] |
| # } |
| # ] |
| # } |
| # |
| # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ |
| # logging. It also exempts `[email protected]` from DATA_READ logging, and |
| # `[email protected]` from DATA_WRITE logging. |
| "auditLogConfigs": [ # The configuration for logging of each type of permission. |
| { # Provides the configuration for logging a type of permissions. |
| # Example: |
| # |
| # { |
| # "audit_log_configs": [ |
| # { |
| # "log_type": "DATA_READ", |
| # "exempted_members": [ |
| # "user:[email protected]" |
| # ] |
| # }, |
| # { |
| # "log_type": "DATA_WRITE" |
| # } |
| # ] |
| # } |
| # |
| # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting |
| # [email protected] from DATA_READ logging. |
| "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of |
| # permission. |
| # Follows the same format of Binding.members. |
| "A String", |
| ], |
| "logType": "A String", # The log type that this config enables. |
| }, |
| ], |
| "service": "A String", # 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. |
| }, |
| ], |
| "bindings": [ # Associates a list of `members`, or principals, with a `role`. Optionally, |
| # may specify a `condition` that determines how and when the `bindings` are |
| # applied. Each of the `bindings` must contain at least one principal. |
| # |
| # The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250 |
| # of these principals can be Google groups. Each occurrence of a principal |
| # counts towards these limits. For example, if the `bindings` grant 50 |
| # different roles to `user:[email protected]`, and not to any other |
| # principal, then you can add another 1,450 principals to the `bindings` in |
| # the `Policy`. |
| { # Associates `members`, or principals, with a `role`. |
| "condition": { # Represents a textual expression in the Common Expression Language (CEL) # 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). |
| # 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. |
| "description": "A String", # Optional. Description of the expression. This is a longer text which |
| # describes the expression, e.g. when hovered over it in a UI. |
| "expression": "A String", # Textual representation of an expression in Common Expression Language |
| # syntax. |
| "location": "A String", # Optional. String indicating the location of the expression for error |
| # reporting, e.g. a file name and a position in the file. |
| "title": "A String", # 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. |
| }, |
| "members": [ # 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, `[email protected]` . |
| # |
| # |
| # * `serviceAccount:{emailid}`: An email address that represents a Google |
| # service account. For example, |
| # `[email protected]`. |
| # |
| # * `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, `[email protected]`. |
| # |
| # |
| # * `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}/*`: |
| # 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}/*`: |
| # 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, `[email protected]?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, |
| # `[email protected]?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, `[email protected]?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`. |
| "A String", |
| ], |
| "role": "A String", # 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). |
| }, |
| ], |
| "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help |
| # prevent simultaneous updates of a policy from overwriting each other. |
| # It is strongly suggested that systems make use of the `etag` in the |
| # read-modify-write cycle to perform policy updates in order to avoid race |
| # conditions: An `etag` is returned in the response to `getIamPolicy`, and |
| # systems are expected to put that etag in the request to `setIamPolicy` to |
| # ensure that their change will be applied to the same version of the policy. |
| # |
| # **Important:** If you use IAM Conditions, you must include the `etag` field |
| # whenever you call `setIamPolicy`. If you omit this field, then IAM allows |
| # you to overwrite a version `3` policy with a version `1` policy, and all of |
| # the conditions in the version `3` policy are lost. |
| "version": 42, # Specifies the format of the policy. |
| # |
| # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value |
| # are rejected. |
| # |
| # Any operation that affects conditional role bindings must specify version |
| # `3`. This requirement applies to the following operations: |
| # |
| # * Getting a policy that includes a conditional role binding |
| # * Adding a conditional role binding to a policy |
| # * Changing a conditional role binding in a policy |
| # * Removing any role binding, with or without a condition, from a policy |
| # that includes conditions |
| # |
| # **Important:** If you use IAM Conditions, you must include the `etag` field |
| # whenever you call `setIamPolicy`. If you omit this field, then IAM allows |
| # you to overwrite a version `3` policy with a version `1` policy, and all of |
| # the conditions in the version `3` policy are lost. |
| # |
| # If a policy does not include any conditions, operations on that policy may |
| # specify any valid version or leave the field unset. |
| # |
| # To learn which resources support conditions in their IAM policies, see the |
| # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). |
| }, |
| } |
| |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # An Identity and Access Management (IAM) policy, which specifies access |
| # controls for Google Cloud resources. |
| # |
| # |
| # A `Policy` is a collection of `bindings`. A `binding` binds one or more |
| # `members`, or principals, to a single `role`. Principals can be user |
| # accounts, service accounts, Google groups, and domains (such as G Suite). A |
| # `role` is a named list of permissions; each `role` can be an IAM predefined |
| # role or a user-created custom role. |
| # |
| # For some types of Google Cloud resources, a `binding` can also specify a |
| # `condition`, which is a logical expression that allows access to a resource |
| # only if the expression evaluates to `true`. A condition can add constraints |
| # based on attributes of the request, the resource, or both. To learn which |
| # resources support conditions in their IAM policies, see the |
| # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). |
| # |
| # **JSON example:** |
| # |
| # ``` |
| # { |
| # "bindings": [ |
| # { |
| # "role": "roles/resourcemanager.organizationAdmin", |
| # "members": [ |
| # "user:[email protected]", |
| # "group:[email protected]", |
| # "domain:google.com", |
| # "serviceAccount:[email protected]" |
| # ] |
| # }, |
| # { |
| # "role": "roles/resourcemanager.organizationViewer", |
| # "members": [ |
| # "user:[email protected]" |
| # ], |
| # "condition": { |
| # "title": "expirable access", |
| # "description": "Does not grant access after Sep 2020", |
| # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", |
| # } |
| # } |
| # ], |
| # "etag": "BwWWja0YfJA=", |
| # "version": 3 |
| # } |
| # ``` |
| # |
| # **YAML example:** |
| # |
| # ``` |
| # bindings: |
| # - members: |
| # - user:[email protected] |
| # - group:[email protected] |
| # - domain:google.com |
| # - serviceAccount:[email protected] |
| # role: roles/resourcemanager.organizationAdmin |
| # - members: |
| # - user:[email protected] |
| # role: roles/resourcemanager.organizationViewer |
| # condition: |
| # title: expirable access |
| # description: Does not grant access after Sep 2020 |
| # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') |
| # etag: BwWWja0YfJA= |
| # version: 3 |
| # ``` |
| # |
| # For a description of IAM and its features, see the |
| # [IAM documentation](https://cloud.google.com/iam/docs/). |
| "auditConfigs": [ # Specifies cloud audit logging configuration for this policy. |
| { # 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:[email protected]" |
| # ] |
| # }, |
| # { |
| # "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:[email protected]" |
| # ] |
| # } |
| # ] |
| # } |
| # ] |
| # } |
| # |
| # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ |
| # logging. It also exempts `[email protected]` from DATA_READ logging, and |
| # `[email protected]` from DATA_WRITE logging. |
| "auditLogConfigs": [ # The configuration for logging of each type of permission. |
| { # Provides the configuration for logging a type of permissions. |
| # Example: |
| # |
| # { |
| # "audit_log_configs": [ |
| # { |
| # "log_type": "DATA_READ", |
| # "exempted_members": [ |
| # "user:[email protected]" |
| # ] |
| # }, |
| # { |
| # "log_type": "DATA_WRITE" |
| # } |
| # ] |
| # } |
| # |
| # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting |
| # [email protected] from DATA_READ logging. |
| "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of |
| # permission. |
| # Follows the same format of Binding.members. |
| "A String", |
| ], |
| "logType": "A String", # The log type that this config enables. |
| }, |
| ], |
| "service": "A String", # 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. |
| }, |
| ], |
| "bindings": [ # Associates a list of `members`, or principals, with a `role`. Optionally, |
| # may specify a `condition` that determines how and when the `bindings` are |
| # applied. Each of the `bindings` must contain at least one principal. |
| # |
| # The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250 |
| # of these principals can be Google groups. Each occurrence of a principal |
| # counts towards these limits. For example, if the `bindings` grant 50 |
| # different roles to `user:[email protected]`, and not to any other |
| # principal, then you can add another 1,450 principals to the `bindings` in |
| # the `Policy`. |
| { # Associates `members`, or principals, with a `role`. |
| "condition": { # Represents a textual expression in the Common Expression Language (CEL) # 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). |
| # 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. |
| "description": "A String", # Optional. Description of the expression. This is a longer text which |
| # describes the expression, e.g. when hovered over it in a UI. |
| "expression": "A String", # Textual representation of an expression in Common Expression Language |
| # syntax. |
| "location": "A String", # Optional. String indicating the location of the expression for error |
| # reporting, e.g. a file name and a position in the file. |
| "title": "A String", # 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. |
| }, |
| "members": [ # 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, `[email protected]` . |
| # |
| # |
| # * `serviceAccount:{emailid}`: An email address that represents a Google |
| # service account. For example, |
| # `[email protected]`. |
| # |
| # * `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, `[email protected]`. |
| # |
| # |
| # * `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}/*`: |
| # 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}/*`: |
| # 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, `[email protected]?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, |
| # `[email protected]?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, `[email protected]?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`. |
| "A String", |
| ], |
| "role": "A String", # 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). |
| }, |
| ], |
| "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help |
| # prevent simultaneous updates of a policy from overwriting each other. |
| # It is strongly suggested that systems make use of the `etag` in the |
| # read-modify-write cycle to perform policy updates in order to avoid race |
| # conditions: An `etag` is returned in the response to `getIamPolicy`, and |
| # systems are expected to put that etag in the request to `setIamPolicy` to |
| # ensure that their change will be applied to the same version of the policy. |
| # |
| # **Important:** If you use IAM Conditions, you must include the `etag` field |
| # whenever you call `setIamPolicy`. If you omit this field, then IAM allows |
| # you to overwrite a version `3` policy with a version `1` policy, and all of |
| # the conditions in the version `3` policy are lost. |
| "version": 42, # Specifies the format of the policy. |
| # |
| # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value |
| # are rejected. |
| # |
| # Any operation that affects conditional role bindings must specify version |
| # `3`. This requirement applies to the following operations: |
| # |
| # * Getting a policy that includes a conditional role binding |
| # * Adding a conditional role binding to a policy |
| # * Changing a conditional role binding in a policy |
| # * Removing any role binding, with or without a condition, from a policy |
| # that includes conditions |
| # |
| # **Important:** If you use IAM Conditions, you must include the `etag` field |
| # whenever you call `setIamPolicy`. If you omit this field, then IAM allows |
| # you to overwrite a version `3` policy with a version `1` policy, and all of |
| # the conditions in the version `3` policy are lost. |
| # |
| # If a policy does not include any conditions, operations on that policy may |
| # specify any valid version or leave the field unset. |
| # |
| # To learn which resources support conditions in their IAM policies, see the |
| # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="setLabels">setLabels(project, region, resource, body=None, requestId=None, x__xgafv=None)</code> |
| <pre>Sets the labels on an InterconnectAttachment. To learn more about labels, |
| read the Labeling |
| Resources documentation. |
| |
| Args: |
| project: string, Project ID for this request. (required) |
| region: string, The region for this request. (required) |
| resource: string, Name or id of the resource for this request. (required) |
| body: object, The request body. |
| The object takes the form of: |
| |
| { |
| "labelFingerprint": "A String", # The fingerprint of the previous set of labels for this resource, |
| # used to detect conflicts. The fingerprint is initially generated by Compute |
| # Engine and changes after every request to modify or update labels. You must |
| # always provide an up-to-date fingerprint hash in order to update or change |
| # labels. Make a get() request to the resource to get the latest |
| # fingerprint. |
| "labels": { # The labels to set for this resource. |
| "a_key": "A String", |
| }, |
| } |
| |
| requestId: string, An optional request ID to identify requests. Specify a unique request ID so |
| that if you must retry your request, the server will know to ignore the |
| request if it has already been completed. |
| |
| For example, consider a situation where you make an initial request and |
| the request times out. If you make the request again with the same |
| request ID, the server can check if original operation with the same |
| request ID was received, and if so, will ignore the second request. This |
| prevents clients from accidentally creating duplicate commitments. |
| |
| The request ID must be |
| a valid UUID with the exception that zero UUID is not supported |
| (00000000-0000-0000-0000-000000000000). |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # Represents an Operation resource. |
| # |
| # Google Compute Engine has three Operation resources: |
| # |
| # * [Global](/compute/docs/reference/rest/alpha/globalOperations) |
| # * [Regional](/compute/docs/reference/rest/alpha/regionOperations) |
| # * [Zonal](/compute/docs/reference/rest/alpha/zoneOperations) |
| # |
| # You can use an operation resource to manage asynchronous API requests. |
| # For more information, readHandling |
| # API responses. |
| # |
| # Operations can be global, regional or zonal. |
| # |
| # - For global operations, use the `globalOperations` |
| # resource. |
| # - For regional operations, use the |
| # `regionOperations` resource. |
| # - For zonal operations, use |
| # the `zoneOperations` resource. |
| # |
| # |
| # |
| # For more information, read |
| # Global, Regional, and Zonal Resources. |
| # |
| # Note that completed Operation resources have a limited |
| # retention period. |
| "clientOperationId": "A String", # [Output Only] The value of `requestId` if you provided it in the request. |
| # Not present otherwise. |
| "creationTimestamp": "A String", # [Deprecated] This field is deprecated. |
| "description": "A String", # [Output Only] A textual description of the operation, which is |
| # set when the operation is created. |
| "endTime": "A String", # [Output Only] The time that this operation was completed. This value is inRFC3339 |
| # text format. |
| "error": { # [Output Only] If errors are generated during processing of the operation, |
| # this field will be populated. |
| "errors": [ # [Output Only] The array of errors encountered while processing this |
| # operation. |
| { |
| "code": "A String", # [Output Only] The error type identifier for this error. |
| "errorDetails": [ # [Output Only] An optional list of messages that contain the error |
| # details. There is a set of defined message types to use for providing |
| # details.The syntax depends on the error code. For example, |
| # QuotaExceededInfo will have details when the error code is |
| # QUOTA_EXCEEDED. |
| { |
| "errorInfo": { # Describes the cause of the error with structured details. |
| # |
| # Example of an error when contacting the "pubsub.googleapis.com" API when it |
| # is not enabled: |
| # |
| # { "reason": "API_DISABLED" |
| # "domain": "googleapis.com" |
| # "metadata": { |
| # "resource": "projects/123", |
| # "service": "pubsub.googleapis.com" |
| # } |
| # } |
| # |
| # This response indicates that the pubsub.googleapis.com API is not enabled. |
| # |
| # Example of an error that is returned when attempting to create a Spanner |
| # instance in a region that is out of stock: |
| # |
| # { "reason": "STOCKOUT" |
| # "domain": "spanner.googleapis.com", |
| # "metadata": { |
| # "availableRegions": "us-central1,us-east2" |
| # } |
| # } |
| "domain": "A String", # The logical grouping to which the "reason" belongs. The error domain |
| # is typically the registered service name of the tool or product that |
| # generates the error. Example: "pubsub.googleapis.com". If the error is |
| # generated by some common infrastructure, the error domain must be a |
| # globally unique value that identifies the infrastructure. For Google API |
| # infrastructure, the error domain is "googleapis.com". |
| "metadatas": { # Additional structured details about this error. |
| # |
| # Keys must match a regular expression of `a-z+` but should |
| # ideally be lowerCamelCase. Also, they must be limited to 64 characters in |
| # length. When identifying the current value of an exceeded limit, the units |
| # should be contained in the key, not the value. For example, rather than |
| # `{"instanceLimit": "100/request"}`, should be returned as, |
| # `{"instanceLimitPerRequest": "100"}`, if the client exceeds the number of |
| # instances that can be created in a single (batch) request. |
| "a_key": "A String", |
| }, |
| "reason": "A String", # The reason of the error. This is a constant value that identifies the |
| # proximate cause of the error. Error reasons are unique within a particular |
| # domain of errors. This should be at most 63 characters and match a |
| # regular expression of `A-Z+[A-Z0-9]`, which represents |
| # UPPER_SNAKE_CASE. |
| }, |
| "help": { # Provides links to documentation or for performing an out of band action. |
| # |
| # For example, if a quota check failed with an error indicating the calling |
| # project hasn't enabled the accessed service, this can contain a URL pointing |
| # directly to the right place in the developer console to flip the bit. |
| "links": [ # URL(s) pointing to additional information on handling the current error. |
| { # Describes a URL link. |
| "description": "A String", # Describes what the link offers. |
| "url": "A String", # The URL of the link. |
| }, |
| ], |
| }, |
| "localizedMessage": { # Provides a localized error message that is safe to return to the user |
| # which can be attached to an RPC error. |
| "locale": "A String", # The locale used following the specification defined at |
| # https://www.rfc-editor.org/rfc/bcp/bcp47.txt. |
| # Examples are: "en-US", "fr-CH", "es-MX" |
| "message": "A String", # The localized error message in the above locale. |
| }, |
| "quotaInfo": { # Additional details for quota exceeded error for resource quota. |
| "dimensions": { # The map holding related quota dimensions. |
| "a_key": "A String", |
| }, |
| "futureLimit": 3.14, # Future quota limit being rolled out. The limit's unit depends on the quota |
| # type or metric. |
| "limit": 3.14, # Current effective quota limit. The limit's unit depends on the quota type |
| # or metric. |
| "limitName": "A String", # The name of the quota limit. |
| "metricName": "A String", # The Compute Engine quota metric name. |
| "rolloutStatus": "A String", # Rollout status of the future quota limit. |
| }, |
| }, |
| ], |
| "location": "A String", # [Output Only] Indicates the field in the request that caused the error. |
| # This property is optional. |
| "message": "A String", # [Output Only] An optional, human-readable error message. |
| }, |
| ], |
| }, |
| "httpErrorMessage": "A String", # [Output Only] If the operation fails, this field contains the HTTP error |
| # message that was returned, such as `NOT FOUND`. |
| "httpErrorStatusCode": 42, # [Output Only] If the operation fails, this field contains the HTTP error |
| # status code that was returned. For example, a `404` means the |
| # resource was not found. |
| "id": "A String", # [Output Only] The unique identifier for the operation. This identifier is |
| # defined by the server. |
| "insertTime": "A String", # [Output Only] The time that this operation was requested. |
| # This value is inRFC3339 |
| # text format. |
| "instancesBulkInsertOperationMetadata": { |
| "perLocationStatus": { # Status information per location (location name is key). |
| # Example key: zones/us-central1-a |
| "a_key": { |
| "createdVmCount": 42, # [Output Only] Count of VMs successfully created so far. |
| "deletedVmCount": 42, # [Output Only] Count of VMs that got deleted during rollback. |
| "failedToCreateVmCount": 42, # [Output Only] Count of VMs that started creating but encountered an |
| # error. |
| "status": "A String", # [Output Only] Creation status of BulkInsert operation - information |
| # if the flow is rolling forward or rolling back. |
| "targetVmCount": 42, # [Output Only] Count of VMs originally planned to be created. |
| }, |
| }, |
| }, |
| "kind": "compute#operation", # [Output Only] Type of the resource. Always `compute#operation` for |
| # Operation resources. |
| "name": "A String", # [Output Only] Name of the operation. |
| "operationGroupId": "A String", # [Output Only] An ID that represents a group of operations, such as when a |
| # group of operations results from a `bulkInsert` API request. |
| "operationType": "A String", # [Output Only] The type of operation, such as `insert`, |
| # `update`, or `delete`, and so on. |
| "progress": 42, # [Output Only] An optional progress indicator that ranges from 0 to 100. |
| # There is no requirement that this be linear or support any granularity of |
| # operations. This should not be used to guess when the operation will be |
| # complete. This number should monotonically increase as the operation |
| # progresses. |
| "region": "A String", # [Output Only] The URL of the region where the operation resides. Only |
| # applicable when performing regional operations. |
| "selfLink": "A String", # [Output Only] Server-defined URL for the resource. |
| "selfLinkWithId": "A String", # [Output Only] Server-defined URL for this resource with the resource id. |
| "setCommonInstanceMetadataOperationMetadata": { # [Output Only] If the operation is for projects.setCommonInstanceMetadata, |
| # this field will contain information on all underlying zonal actions and |
| # their state. |
| "clientOperationId": "A String", # [Output Only] The client operation id. |
| "perLocationOperations": { # [Output Only] Status information per location (location name is key). |
| # Example key: zones/us-central1-a |
| "a_key": { |
| "error": { # The `Status` type defines a logical error model that is suitable for # [Output Only] If state is `ABANDONED` or `FAILED`, this field is |
| # populated. |
| # different programming environments, including REST APIs and RPC APIs. It is |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains |
| # three pieces of data: error code, error message, and error details. |
| # |
| # You can find out more about this error model and how to work with it in the |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. |
| "details": [ # A list of messages that carry the error details. There is a common set of |
| # message types for APIs to use. |
| { |
| "a_key": "", # Properties of the object. Contains field @type with type URL. |
| }, |
| ], |
| "message": "A String", # A developer-facing error message, which should be in English. Any |
| # user-facing error message should be localized and sent in the |
| # google.rpc.Status.details field, or localized by the client. |
| }, |
| "state": "A String", # [Output Only] Status of the action, which can be one of the following: |
| # `PROPAGATING`, `PROPAGATED`, `ABANDONED`, `FAILED`, or `DONE`. |
| }, |
| }, |
| }, |
| "startTime": "A String", # [Output Only] The time that this operation was started by the server. |
| # This value is inRFC3339 |
| # text format. |
| "status": "A String", # [Output Only] The status of the operation, which can be one of the |
| # following: |
| # `PENDING`, `RUNNING`, or `DONE`. |
| "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the |
| # operation. |
| "targetId": "A String", # [Output Only] The unique target ID, which identifies a specific incarnation |
| # of the target resource. |
| "targetLink": "A String", # [Output Only] The URL of the resource that the operation modifies. For |
| # operations related to creating a snapshot, this points to the disk |
| # that the snapshot was created from. |
| "user": "A String", # [Output Only] User who requested the operation, for example: |
| # `[email protected]` or |
| # `alice_smith_identifier (global/workforcePools/example-com-us-employees)`. |
| "warnings": [ # [Output Only] If warning messages are generated during processing of the |
| # operation, this field will be populated. |
| { |
| "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute |
| # Engine returns NO_RESULTS_ON_PAGE if there |
| # are no results in the response. |
| "data": [ # [Output Only] Metadata about this warning in key: |
| # value format. For example: |
| # |
| # "data": [ |
| # { |
| # "key": "scope", |
| # "value": "zones/us-east1-d" |
| # } |
| { |
| "key": "A String", # [Output Only] A key that provides more detail on the warning being |
| # returned. For example, for warnings where there are no results in a list |
| # request for a particular zone, this key might be scope and |
| # the key value might be the zone name. Other examples might be a key |
| # indicating a deprecated resource and a suggested replacement, or a |
| # warning about invalid network settings (for example, if an instance |
| # attempts to perform IP forwarding but is not enabled for IP forwarding). |
| "value": "A String", # [Output Only] A warning data value corresponding to the key. |
| }, |
| ], |
| "message": "A String", # [Output Only] A human-readable description of the warning code. |
| }, |
| ], |
| "zone": "A String", # [Output Only] The URL of the zone where the operation resides. Only |
| # applicable when performing per-zone operations. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="testIamPermissions">testIamPermissions(project, region, resource, body=None, x__xgafv=None)</code> |
| <pre>Returns permissions that a caller has on the specified resource. |
| |
| Args: |
| project: string, Project ID for this request. (required) |
| region: string, The name of the region for this request. (required) |
| resource: string, Name or id of the resource for this request. (required) |
| body: object, The request body. |
| The object takes the form of: |
| |
| { |
| "permissions": [ # The set of permissions to check for the 'resource'. Permissions with |
| # wildcards (such as '*' or 'storage.*') are not allowed. |
| "A String", |
| ], |
| } |
| |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { |
| "permissions": [ # A subset of `TestPermissionsRequest.permissions` that the caller is |
| # allowed. |
| "A String", |
| ], |
| }</pre> |
| </div> |
| |
| </body></html> |