# Service Broker API . projects . brokers . v2 . service_instances

## Instance Methods

Returns the service_bindings Resource.

Provisions a service instance.

Deprovisions a service instance.

Gets the given service instance from the system.

Returns the state of the last operation for the service instance.

Updates an existing service instance.

### Method Details

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

    Provisions a service instance.
    If `request.accepts_incomplete` is false and Broker cannot execute request
    synchronously HTTP 422 error will be returned along with
    FAILED_PRECONDITION status.
    If `request.accepts_incomplete` is true and the Broker decides to execute
    resource asynchronously then HTTP 202 response code will be returned and a
    valid polling operation in the response will be included.
    If Broker executes the request synchronously and it succeeds HTTP 201
    response will be furnished.
    If identical instance exists, then HTTP 200 response will be returned.
    If an instance with identical ID but mismatching parameters exists, then
    HTTP 409 status code will be returned.

    Args:
      parent: string, Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`. (required)
      instance_id: string, The id of the service instance. Must be unique within GCP project.
    Maximum length is 64, GUID recommended.
    Required. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # Message describing inputs to Provision and Update Service instance requests.
      "space_guid": "A String", # The identifier for the project space within the platform organization.
          # Required.
      "previous_values": { # Used only in UpdateServiceInstance request to optionally specify previous
          # fields.
        "a_key": "", # Properties of the object.
      },
      "plan_id": "A String", # The ID of the plan. See `Service` and `Plan` resources for details.
          # Maximum length is 64, GUID recommended.
          # Required.
      "description": "A String", # To return errors when GetInstance call is done via HTTP to be unified with
          # other methods.
      "parameters": { # Configuration options for the service instance.
          # Parameters is JSON object serialized to string.
        "a_key": "", # Properties of the object.
      },
      "organization_guid": "A String", # The platform GUID for the organization under which the service is to be
          # provisioned.
          # Required.
      "instance_id": "A String", # The id of the service instance. Must be unique within GCP project.
          # Maximum length is 64, GUID recommended.
          # Required.
      "deploymentName": "A String", # Output only.
          # String containing the Deployment Manager deployment name that was created
          # for this instance,
      "context": { # Platform specific contextual information under which the service instance
          # is to be provisioned. This replaces organization_guid and space_guid.
          # But can also contain anything.
          # Currently only used for logging context information.
        "a_key": "", # Properties of the object.
      },
      "service_id": "A String", # The id of the service. Must be a valid identifier of a service
          # contained in the list from a `ListServices()` call.
          # Maximum length is 64, GUID recommended.
          # Required.
      "resourceName": "A String", # Output only.
          # The resource name of the instance, e.g.
          # projects/project_id/brokers/broker_id/service_instances/instance_id
      "createTime": "A String", # Output only.
          # Timestamp for when the instance was created.
    }

      acceptsIncomplete: boolean, Value indicating that API client supports asynchronous operations. If
    Broker cannot execute the request synchronously HTTP 422 code will be
    returned to HTTP clients along with FAILED_PRECONDITION error.
    If true and broker will execute request asynchronously 202 HTTP code will
    be returned.
    This broker always requires this to be true as all mutator operations are
    asynchronous.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Response for the `CreateServiceInstance()` method.
        "operation": "A String", # If broker executes operation asynchronously, this is the operation ID that
            # can be polled to check the completion status of said operation.
            # This broker always will return a non-empty operation on success.
        "description": "A String", # Used to communicate description of the response. Usually for non-standard
            # error codes.
            # https://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors
      }

`delete(name, acceptsIncomplete=None, planId=None, serviceId=None, x__xgafv=None)`

    Deprovisions a service instance.
    For synchronous/asynchronous request details see CreateServiceInstance
    method.
    If service instance does not exist HTTP 410 status will be returned.

    Args:
      name: string, Name must match
    `projects/[PROJECT_ID]/brokers/[BROKER_ID]/` +
    `v2/service_instances/[INSTANCE_ID]`
    or
    `projects/[PROJECT_ID]/brokers/[BROKER_ID]/instances/[INSTANCE_ID]`. (required)
      acceptsIncomplete: boolean, See CreateServiceInstanceRequest for details.
      planId: string, The plan id of the service instance.
      serviceId: string, The service id of the service instance.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Response for the `DeleteServiceInstance()` method.
        "operation": "A String", # If broker executes operation asynchronously, this is the operation ID that
            # can be polled to check the completion status of said operation.
        "description": "A String", # Used to communicate description of the response. Usually for non-standard
            # error codes.
            # https://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors
      }

`get(name, x__xgafv=None)`

    Gets the given service instance from the system.
    The API call accepts both OSB style API and standard google style API
    resource path.
    i.e. both `projects/*/brokers/*/instances/*`
     and `projects/*/brokers/*/v2/service_instances/*` are acceptable paths.

    Args:
      name: string, The resource name of the instance to return.
    Name must match
    `projects/[PROJECT_ID]/brokers/[BROKER_ID]/` +
    `v2/service_instances/[INSTANCE_ID]`
    or
    `projects/[PROJECT_ID]/brokers/[BROKER_ID]/instances/[INSTANCE_ID]`. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Message describing inputs to Provision and Update Service instance requests.
        "space_guid": "A String", # The identifier for the project space within the platform organization.
            # Required.
        "previous_values": { # Used only in UpdateServiceInstance request to optionally specify previous
            # fields.
          "a_key": "", # Properties of the object.
        },
        "plan_id": "A String", # The ID of the plan. See `Service` and `Plan` resources for details.
            # Maximum length is 64, GUID recommended.
            # Required.
        "description": "A String", # To return errors when GetInstance call is done via HTTP to be unified with
            # other methods.
        "parameters": { # Configuration options for the service instance.
            # Parameters is JSON object serialized to string.
          "a_key": "", # Properties of the object.
        },
        "organization_guid": "A String", # The platform GUID for the organization under which the service is to be
            # provisioned.
            # Required.
        "instance_id": "A String", # The id of the service instance. Must be unique within GCP project.
            # Maximum length is 64, GUID recommended.
            # Required.
        "deploymentName": "A String", # Output only.
            # String containing the Deployment Manager deployment name that was created
            # for this instance,
        "context": { # Platform specific contextual information under which the service instance
            # is to be provisioned. This replaces organization_guid and space_guid.
            # But can also contain anything.
            # Currently only used for logging context information.
          "a_key": "", # Properties of the object.
        },
        "service_id": "A String", # The id of the service. Must be a valid identifier of a service
            # contained in the list from a `ListServices()` call.
            # Maximum length is 64, GUID recommended.
            # Required.
        "resourceName": "A String", # Output only.
            # The resource name of the instance, e.g.
            # projects/project_id/brokers/broker_id/service_instances/instance_id
        "createTime": "A String", # Output only.
            # Timestamp for when the instance was created.
      }

`getLast_operation(name, planId=None, serviceId=None, x__xgafv=None, operation=None)`

    Returns the state of the last operation for the service instance.
    Only last (or current) operation can be polled.

    Args:
      name: string, Name must match
    `projects/[PROJECT_ID]/brokers/[BROKER_ID]/v2/`+
       `service_instances/[INSTANCE_ID]`. (required)
      planId: string, Plan id.
      serviceId: string, Service id.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format
      operation: string, If `operation` was returned during mutation operation, this field must be
    populated with the provided value.

    Returns:
      An object of the form:

        { # Describes a long running operation, which conforms to OpenService API.
        "state": "A String", # The state of the operation.
            # Valid values are: "in progress", "succeeded", and "failed".
        "description": "A String", # Optional description of the Operation state.
      }

`patch(name, body, acceptsIncomplete=None, x__xgafv=None)`

    Updates an existing service instance.
    See CreateServiceInstance for possible response codes.

    Args:
      name: string, Name must match
    `projects/[PROJECT_ID]/brokers/[BROKER_ID]/v2/service_instances/[INSTANCE_ID]`. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # Message describing inputs to Provision and Update Service instance requests.
      "space_guid": "A String", # The identifier for the project space within the platform organization.
          # Required.
      "previous_values": { # Used only in UpdateServiceInstance request to optionally specify previous
          # fields.
        "a_key": "", # Properties of the object.
      },
      "plan_id": "A String", # The ID of the plan. See `Service` and `Plan` resources for details.
          # Maximum length is 64, GUID recommended.
          # Required.
      "description": "A String", # To return errors when GetInstance call is done via HTTP to be unified with
          # other methods.
      "parameters": { # Configuration options for the service instance.
          # Parameters is JSON object serialized to string.
        "a_key": "", # Properties of the object.
      },
      "organization_guid": "A String", # The platform GUID for the organization under which the service is to be
          # provisioned.
          # Required.
      "instance_id": "A String", # The id of the service instance. Must be unique within GCP project.
          # Maximum length is 64, GUID recommended.
          # Required.
      "deploymentName": "A String", # Output only.
          # String containing the Deployment Manager deployment name that was created
          # for this instance,
      "context": { # Platform specific contextual information under which the service instance
          # is to be provisioned. This replaces organization_guid and space_guid.
          # But can also contain anything.
          # Currently only used for logging context information.
        "a_key": "", # Properties of the object.
      },
      "service_id": "A String", # The id of the service. Must be a valid identifier of a service
          # contained in the list from a `ListServices()` call.
          # Maximum length is 64, GUID recommended.
          # Required.
      "resourceName": "A String", # Output only.
          # The resource name of the instance, e.g.
          # projects/project_id/brokers/broker_id/service_instances/instance_id
      "createTime": "A String", # Output only.
          # Timestamp for when the instance was created.
    }

      acceptsIncomplete: boolean, See CreateServiceInstanceRequest for details.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Response for the `UpdateServiceInstance()` method.
        "operation": "A String", # If broker executes operation asynchronously, this is the operation ID that
            # can be polled to check the completion status of said operation.
        "description": "A String", # Used to communicate description of the response. Usually for non-standard
            # error codes.
            # https://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors
      }