# App Engine Admin API . apps . services . versions . instances

## Instance Methods

Close httplib2 connections.

Enables debugging on a VM instance. This allows you to use the SSH command to connect to the virtual machine where the instance lives. While in "debug mode", the instance continues to serve live traffic. You should delete the instance when you are done debugging and then allow the system to take over and determine if another instance should be started.Only applicable for instances in App Engine flexible environment.

Stops a running instance.The instance might be automatically recreated based on the scaling settings of the version. For more information, see "How Instances are Managed" (standard environment (https://cloud.google.com/appengine/docs/standard/python/how-instances-are-managed) | flexible environment (https://cloud.google.com/appengine/docs/flexible/python/how-instances-are-managed)).To ensure that instances are not re-created and avoid getting billed, you can stop all instances within the target version by changing the serving status of the version to STOPPED with the apps.services.versions.patch (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions/patch) method.

Gets instance information.

Lists the instances of a version.Tip: To aggregate details about instances over time, see the Stackdriver Monitoring API (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list).

Retrieves the next page of results.

### Method Details

`close()`

    Close httplib2 connections.

`debug(appsId, servicesId, versionsId, instancesId, body=None, x__xgafv=None)`

    Enables debugging on a VM instance. This allows you to use the SSH command to connect to the virtual machine where the instance lives. While in "debug mode", the instance continues to serve live traffic. You should delete the instance when you are done debugging and then allow the system to take over and determine if another instance should be started.Only applicable for instances in App Engine flexible environment.

    Args:
      appsId: string, Part of `name`. Required. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1. (required)
      servicesId: string, Part of `name`. See documentation of `appsId`. (required)
      versionsId: string, Part of `name`. See documentation of `appsId`. (required)
      instancesId: string, Part of `name`. See documentation of `appsId`. (required)
      body: object, The request body.
        The object takes the form of:

    { # Request message for Instances.DebugInstance.
      "sshKey": "A String", # Public SSH key to add to the instance. Examples: [USERNAME]:ssh-rsa [KEY_VALUE] [USERNAME] [USERNAME]:ssh-rsa [KEY_VALUE] google-ssh {"userName":"[USERNAME]","expireOn":"[EXPIRE_TIME]"}For more information, see Adding and Removing SSH Keys (https://cloud.google.com/compute/docs/instances/adding-removing-ssh-keys).
    }

      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.
      "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.
      "error": { # The Status type defines a logical error model that is suitable for 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). # The error result of the operation in case of failure or cancellation.
        "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.
      },
      "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.
      },
      "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}.
      "response": { # The normal, successful response of the operation. 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.
      },
    }

`delete(appsId, servicesId, versionsId, instancesId, x__xgafv=None)`

    Stops a running instance.The instance might be automatically recreated based on the scaling settings of the version. For more information, see "How Instances are Managed" (standard environment (https://cloud.google.com/appengine/docs/standard/python/how-instances-are-managed) | flexible environment (https://cloud.google.com/appengine/docs/flexible/python/how-instances-are-managed)).To ensure that instances are not re-created and avoid getting billed, you can stop all instances within the target version by changing the serving status of the version to STOPPED with the apps.services.versions.patch (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions/patch) method.

    Args:
      appsId: string, Part of `name`. Required. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1. (required)
      servicesId: string, Part of `name`. See documentation of `appsId`. (required)
      versionsId: string, Part of `name`. See documentation of `appsId`. (required)
      instancesId: string, Part of `name`. See documentation of `appsId`. (required)
      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.
      "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.
      "error": { # The Status type defines a logical error model that is suitable for 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). # The error result of the operation in case of failure or cancellation.
        "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.
      },
      "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.
      },
      "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}.
      "response": { # The normal, successful response of the operation. 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.
      },
    }

`get(appsId, servicesId, versionsId, instancesId, x__xgafv=None)`

    Gets instance information.

    Args:
      appsId: string, Part of `name`. Required. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1. (required)
      servicesId: string, Part of `name`. See documentation of `appsId`. (required)
      versionsId: string, Part of `name`. See documentation of `appsId`. (required)
      instancesId: string, Part of `name`. See documentation of `appsId`. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # An Instance resource is the computing unit that App Engine uses to automatically scale an application.
      "appEngineRelease": "A String", # Output only. App Engine release this instance is running on.
      "availability": "A String", # Output only. Availability of the instance.
      "averageLatency": 42, # Output only. Average latency (ms) over the last minute.
      "errors": 42, # Output only. Number of errors since this instance was started.
      "id": "A String", # Output only. Relative name of the instance within the version. Example: instance-1.
      "memoryUsage": "A String", # Output only. Total memory in use (bytes).
      "name": "A String", # Output only. Full path to the Instance resource in the API. Example: apps/myapp/services/default/versions/v1/instances/instance-1.
      "qps": 3.14, # Output only. Average queries per second (QPS) over the last minute.
      "requests": 42, # Output only. Number of requests since this instance was started.
      "startTime": "A String", # Output only. Time that this instance was started.@OutputOnly
      "vmDebugEnabled": True or False, # Output only. Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment.
      "vmId": "A String", # Output only. Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.
      "vmIp": "A String", # Output only. The IP address of this instance. Only applicable for instances in App Engine flexible environment.
      "vmLiveness": "A String", # Output only. The liveness health check of this instance. Only applicable for instances in App Engine flexible environment.
      "vmName": "A String", # Output only. Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.
      "vmStatus": "A String", # Output only. Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.
      "vmZoneName": "A String", # Output only. Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.
    }

`list(appsId, servicesId, versionsId, pageSize=None, pageToken=None, x__xgafv=None)`

    Lists the instances of a version.Tip: To aggregate details about instances over time, see the Stackdriver Monitoring API (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list).

    Args:
      appsId: string, Part of `parent`. Required. Name of the parent Version resource. Example: apps/myapp/services/default/versions/v1. (required)
      servicesId: string, Part of `parent`. See documentation of `appsId`. (required)
      versionsId: string, Part of `parent`. See documentation of `appsId`. (required)
      pageSize: integer, Maximum results to return per page.
      pageToken: string, Continuation token for fetching the next page of results.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Response message for Instances.ListInstances.
      "instances": [ # The instances belonging to the requested version.
        { # An Instance resource is the computing unit that App Engine uses to automatically scale an application.
          "appEngineRelease": "A String", # Output only. App Engine release this instance is running on.
          "availability": "A String", # Output only. Availability of the instance.
          "averageLatency": 42, # Output only. Average latency (ms) over the last minute.
          "errors": 42, # Output only. Number of errors since this instance was started.
          "id": "A String", # Output only. Relative name of the instance within the version. Example: instance-1.
          "memoryUsage": "A String", # Output only. Total memory in use (bytes).
          "name": "A String", # Output only. Full path to the Instance resource in the API. Example: apps/myapp/services/default/versions/v1/instances/instance-1.
          "qps": 3.14, # Output only. Average queries per second (QPS) over the last minute.
          "requests": 42, # Output only. Number of requests since this instance was started.
          "startTime": "A String", # Output only. Time that this instance was started.@OutputOnly
          "vmDebugEnabled": True or False, # Output only. Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment.
          "vmId": "A String", # Output only. Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.
          "vmIp": "A String", # Output only. The IP address of this instance. Only applicable for instances in App Engine flexible environment.
          "vmLiveness": "A String", # Output only. The liveness health check of this instance. Only applicable for instances in App Engine flexible environment.
          "vmName": "A String", # Output only. Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.
          "vmStatus": "A String", # Output only. Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.
          "vmZoneName": "A String", # Output only. Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.
        },
      ],
      "nextPageToken": "A String", # Continuation token for fetching the next page of results.
    }

`list_next()`

    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.