# Compute Engine API . interconnectLocations

## Instance Methods

Returns the details for the specified interconnect location. Get a list of available interconnect locations by making a list() request.

Retrieves the list of interconnect locations available to the specified project.

Retrieves the next page of results.

Returns permissions that a caller has on the specified resource.

### Method Details

`get(project, interconnectLocation)`

    Returns the details for the specified interconnect location. Get a list of available interconnect locations by making a list() request.

    Args:
      project: string, Project ID for this request. (required)
      interconnectLocation: string, Name of the interconnect location to return. (required)

    Returns:
      An object of the form:

        { # Protocol definitions for Mixer API to support InterconnectLocation.
        "city": "A String", # City designator used by the Interconnect UI to locate this InterconnectLocation within the Continent. For example: "Chicago, IL", "Amsterdam, Netherlands".
        "kind": "compute#interconnectLocation", # [Output Only] Type of the resource. Always compute#interconnectLocation for interconnect locations.
        "availabilityZone": "A String", # Availability zone for this location. Within a city, maintenance will not be simultaneously scheduled in more than one availability zone. Example: "zone1" or "zone2".
        "description": "A String", # [Output Only] An optional description of the resource.
        "peeringdbFacilityId": "A String", # [Output Only] The peeringdb identifier for this facility (corresponding with a netfac type in peeringdb).
        "facilityProvider": "A String", # [Output Only] The name of the provider for this facility (e.g., EQUINIX).
        "id": "A String", # [Output Only] The unique identifier for the resource. This identifier is defined by the server.
        "regionInfos": [ # [Output Only] A list of InterconnectLocation.RegionInfo objects, that describe parameters pertaining to the relation between this InterconnectLocation and various Google Cloud regions.
          { # Information about any potential InterconnectAttachments between an Interconnect at a specific InterconnectLocation, and a specific Cloud Region.
            "regionKey": "A String", # Scope key for the region of this location.
            "locationPresence": "A String", # Identifies the network presence of this location.
            "expectedRttMs": "A String", # Expected round-trip time in milliseconds, from this InterconnectLocation to a VM in this region.
          },
        ],
        "selfLink": "A String", # [Output Only] Server-defined URL for the resource.
        "address": "A String", # [Output Only] The postal address of the Point of Presence, each line in the address is separated by a newline character.
        "creationTimestamp": "A String", # [Output Only] Creation timestamp in RFC3339 text format.
        "continent": "A String", # Continent for this location. Used by the location picker in the Interconnect UI.
        "facilityProviderFacilityId": "A String", # [Output Only] A provider-assigned Identifier for this facility (e.g., Ashburn-DC1).
        "name": "A String", # [Output Only] Name of the resource.
      }

`list(project, orderBy=None, maxResults=None, pageToken=None, filter=None)`

    Retrieves the list of interconnect locations available to the specified project.

    Args:
      project: string, Project ID for this request. (required)
      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.
      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)
      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.
      filter: string, Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.

    The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.

    For example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.

    You can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.

    To filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.

    Returns:
      An object of the form:

        { # Response to the list request, and contains a list of interconnect locations.
        "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 than maxResults, 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.
        "items": [ # [Output Only] A list of InterconnectLocation resources.
          { # Protocol definitions for Mixer API to support InterconnectLocation.
            "city": "A String", # City designator used by the Interconnect UI to locate this InterconnectLocation within the Continent. For example: "Chicago, IL", "Amsterdam, Netherlands".
            "kind": "compute#interconnectLocation", # [Output Only] Type of the resource. Always compute#interconnectLocation for interconnect locations.
            "availabilityZone": "A String", # Availability zone for this location. Within a city, maintenance will not be simultaneously scheduled in more than one availability zone. Example: "zone1" or "zone2".
            "description": "A String", # [Output Only] An optional description of the resource.
            "peeringdbFacilityId": "A String", # [Output Only] The peeringdb identifier for this facility (corresponding with a netfac type in peeringdb).
            "facilityProvider": "A String", # [Output Only] The name of the provider for this facility (e.g., EQUINIX).
            "id": "A String", # [Output Only] The unique identifier for the resource. This identifier is defined by the server.
            "regionInfos": [ # [Output Only] A list of InterconnectLocation.RegionInfo objects, that describe parameters pertaining to the relation between this InterconnectLocation and various Google Cloud regions.
              { # Information about any potential InterconnectAttachments between an Interconnect at a specific InterconnectLocation, and a specific Cloud Region.
                "regionKey": "A String", # Scope key for the region of this location.
                "locationPresence": "A String", # Identifies the network presence of this location.
                "expectedRttMs": "A String", # Expected round-trip time in milliseconds, from this InterconnectLocation to a VM in this region.
              },
            ],
            "selfLink": "A String", # [Output Only] Server-defined URL for the resource.
            "address": "A String", # [Output Only] The postal address of the Point of Presence, each line in the address is separated by a newline character.
            "creationTimestamp": "A String", # [Output Only] Creation timestamp in RFC3339 text format.
            "continent": "A String", # Continent for this location. Used by the location picker in the Interconnect UI.
            "facilityProviderFacilityId": "A String", # [Output Only] A provider-assigned Identifier for this facility (e.g., Ashburn-DC1).
            "name": "A String", # [Output Only] Name of the resource.
          },
        ],
        "kind": "compute#interconnectLocationList", # [Output Only] Type of resource. Always compute#interconnectLocationList for lists of interconnect locations.
        "id": "A String", # [Output Only] The unique identifier for the resource. This identifier is defined by the server.
        "selfLink": "A String", # [Output Only] Server-defined URL for this resource.
      }

`list_next(previous_request, previous_response)`

    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.

`testIamPermissions(project, resource, body)`

    Returns permissions that a caller has on the specified resource.

    Args:
      project: string, Project ID for this request. (required)
      resource: string, Name of the resource for this request. (required)
      body: object, The request body. (required)
        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",
        ],
      }

    Returns:
      An object of the form:

        {
        "permissions": [ # A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
          "A String",
        ],
      }