# Service Networking API . services . connections

## Instance Methods

Creates a private connection that establishes a VPC Network Peering

List the private connections that are configured in a service consumer's

Updates the allocated ranges that are assigned to a connection.

### Method Details

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

    Creates a private connection that establishes a VPC Network Peering
    connection to a VPC network in the service producer's organization.
    The administrator of the service consumer's VPC network invokes this
    method. The administrator must assign one or more allocated IP ranges for
    provisioning subnetworks in the service producer's VPC network. This
    connection is used for all supported services in the service producer's
    organization, so it only needs to be invoked once. The response from the
    `get` operation will be of type `Connection` if the operation successfully
    completes.

    Args:
      parent: string, The service that is managing peering connectivity for a service producer's
    organization. For Google services that support this functionality, this
    value is `services/servicenetworking.googleapis.com`. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # Represents a private connection resource. A private connection is implemented
          # as a VPC Network Peering connection between a service producer's VPC network
          # and a service consumer's VPC network.
        "peering": "A String", # Output only.
            # The name of the VPC Network Peering connection that was created by the
            # service producer.
        "reservedPeeringRanges": [ # The name of one or more allocated IP address ranges for this service
            # producer of type `PEERING`.
            # Note that invoking CreateConnection method with a different range when
            # connection is already established will not modify already provisioned
            # service producer subnetworks.
            # If CreateConnection method is invoked repeatedly to reconnect when peering
            # connection had been disconnected on the consumer side, leaving this field
            # empty will restore previously allocated IP ranges.
          "A String",
        ],
        "network": "A String", # The name of service consumer's VPC network that's connected with service
            # producer network, in the following format:
            # `projects/{project}/global/networks/{network}`.
            # `{project}` is a project number, such as in `12345` that includes
            # the VPC service consumer's VPC network. `{network}` is the name of the
            # service consumer's VPC network.
        "service": "A String", # Output only.
            # The name of the peering service that's associated with this connection, in
            # the following format: `services/{service name}`.
      }

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

    Returns:
      An object of the form:

        { # This resource represents a long-running operation that is the result of a
          # network API call.
        "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
            # 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).
          "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.
          "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.
            },
          ],
        },
        "done": True or False, # If the value is `false`, it means the operation is still in progress.
            # If `true`, the operation is completed, and either `error` or `response` is
            # available.
        "response": { # The normal response of the operation in case of success.  If the original
            # method returns no data on success, such as `Delete`, the response is
            # `google.protobuf.Empty`.  If the original method is standard
            # `Get`/`Create`/`Update`, the response should be the resource.  For other
            # methods, the response should have the type `XxxResponse`, where `Xxx`
            # is the original method name.  For example, if the original method name
            # is `TakeSnapshot()`, the inferred response type is
            # `TakeSnapshotResponse`.
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
        "name": "A String", # The server-assigned name, which is only unique within the same service that
            # originally returns it. If you use the default HTTP mapping, the
            # `name` should be a resource name ending with `operations/{unique_id}`.
        "metadata": { # Service-specific metadata associated with the operation.  It typically
            # contains progress information and common metadata such as create time.
            # Some services might not provide such metadata.  Any method that returns a
            # long-running operation should document the metadata type, if any.
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
      }

`list(parent, network=None, x__xgafv=None)`

    List the private connections that are configured in a service consumer's
    VPC network.

    Args:
      parent: string, The service that is managing peering connectivity for a service producer's
    organization. For Google services that support this functionality, this
    value is `services/servicenetworking.googleapis.com`.
    If you specify `services/-` as the parameter value, all configured peering
    services are listed. (required)
      network: string, The name of service consumer's VPC network that's connected with service
    producer network through a private connection. The network name must be in
    the following format:
    `projects/{project}/global/networks/{network}`. {project} is a
    project number, such as in `12345` that includes the VPC service
    consumer's VPC network. {network} is the name of the service consumer's VPC
    network.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # ListConnectionsResponse is the response to list peering states for the
          # given service and consumer project.
        "connections": [ # The list of Connections.
          { # Represents a private connection resource. A private connection is implemented
                # as a VPC Network Peering connection between a service producer's VPC network
                # and a service consumer's VPC network.
              "peering": "A String", # Output only.
                  # The name of the VPC Network Peering connection that was created by the
                  # service producer.
              "reservedPeeringRanges": [ # The name of one or more allocated IP address ranges for this service
                  # producer of type `PEERING`.
                  # Note that invoking CreateConnection method with a different range when
                  # connection is already established will not modify already provisioned
                  # service producer subnetworks.
                  # If CreateConnection method is invoked repeatedly to reconnect when peering
                  # connection had been disconnected on the consumer side, leaving this field
                  # empty will restore previously allocated IP ranges.
                "A String",
              ],
              "network": "A String", # The name of service consumer's VPC network that's connected with service
                  # producer network, in the following format:
                  # `projects/{project}/global/networks/{network}`.
                  # `{project}` is a project number, such as in `12345` that includes
                  # the VPC service consumer's VPC network. `{network}` is the name of the
                  # service consumer's VPC network.
              "service": "A String", # Output only.
                  # The name of the peering service that's associated with this connection, in
                  # the following format: `services/{service name}`.
            },
        ],
      }

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

    Updates the allocated ranges that are assigned to a connection.
    The response from the `get` operation will be of type `Connection` if the
    operation successfully completes.

    Args:
      name: string, The private service connection that connects to a service producer
    organization. The name includes both the private service name and the VPC
    network peering name in the format of
    `services/{peering_service_name}/connections/{vpc_peering_name}`. For
    Google services that support this functionality, this is
    `services/servicenetworking.googleapis.com/connections/servicenetworking-googleapis-com`. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # Represents a private connection resource. A private connection is implemented
          # as a VPC Network Peering connection between a service producer's VPC network
          # and a service consumer's VPC network.
        "peering": "A String", # Output only.
            # The name of the VPC Network Peering connection that was created by the
            # service producer.
        "reservedPeeringRanges": [ # The name of one or more allocated IP address ranges for this service
            # producer of type `PEERING`.
            # Note that invoking CreateConnection method with a different range when
            # connection is already established will not modify already provisioned
            # service producer subnetworks.
            # If CreateConnection method is invoked repeatedly to reconnect when peering
            # connection had been disconnected on the consumer side, leaving this field
            # empty will restore previously allocated IP ranges.
          "A String",
        ],
        "network": "A String", # The name of service consumer's VPC network that's connected with service
            # producer network, in the following format:
            # `projects/{project}/global/networks/{network}`.
            # `{project}` is a project number, such as in `12345` that includes
            # the VPC service consumer's VPC network. `{network}` is the name of the
            # service consumer's VPC network.
        "service": "A String", # Output only.
            # The name of the peering service that's associated with this connection, in
            # the following format: `services/{service name}`.
      }

      force: boolean, If a previously defined allocated range is removed, force flag must be
    set to true.
      updateMask: string, The update mask. If this is omitted, it defaults to "*". You can only
    update the listed peering ranges.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # This resource represents a long-running operation that is the result of a
          # network API call.
        "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
            # 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).
          "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.
          "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.
            },
          ],
        },
        "done": True or False, # If the value is `false`, it means the operation is still in progress.
            # If `true`, the operation is completed, and either `error` or `response` is
            # available.
        "response": { # The normal response of the operation in case of success.  If the original
            # method returns no data on success, such as `Delete`, the response is
            # `google.protobuf.Empty`.  If the original method is standard
            # `Get`/`Create`/`Update`, the response should be the resource.  For other
            # methods, the response should have the type `XxxResponse`, where `Xxx`
            # is the original method name.  For example, if the original method name
            # is `TakeSnapshot()`, the inferred response type is
            # `TakeSnapshotResponse`.
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
        "name": "A String", # The server-assigned name, which is only unique within the same service that
            # originally returns it. If you use the default HTTP mapping, the
            # `name` should be a resource name ending with `operations/{unique_id}`.
        "metadata": { # Service-specific metadata associated with the operation.  It typically
            # contains progress information and common metadata such as create time.
            # Some services might not provide such metadata.  Any method that returns a
            # long-running operation should document the metadata type, if any.
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
      }