# App Engine Admin API . apps . modules . versions

## Instance Methods

Returns the instances Resource.

Close httplib2 connections.

Deploys code and resource files to a new version.

Deletes an existing version.

Gets the specified Version resource. By default, only a BASIC_VIEW will be returned. Specify the FULL_VIEW parameter to get the full resource.

Lists the versions of a module.

Retrieves the next page of results.

Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses:

### Method Details

`close()`

    Close httplib2 connections.

`create(appsId, modulesId, body=None, x__xgafv=None)`

    Deploys code and resource files to a new version.

    Args:
      appsId: string, Part of `name`. Name of the resource to update. Example: apps/myapp/modules/default. (required)
      modulesId: string, Part of `name`. See documentation of `appsId`. (required)
      body: object, The request body.
        The object takes the form of:

    { # A Version resource is a specific set of source code and configuration files that are deployed into a module.
      "apiConfig": { # Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers. # Serving configuration for Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/).Only returned in GET requests if view=FULL is set.
        "authFailAction": "A String", # Action to take when users access resources that require authentication. Defaults to redirect.
        "login": "A String", # Level of login required to access this resource. Defaults to optional.
        "script": "A String", # Path to the script from the application root directory.
        "securityLevel": "A String", # Security (HTTPS) enforcement for this URL.
        "url": "A String", # URL to serve the endpoint at.
      },
      "automaticScaling": { # Automatic scaling is based on request rate, response latencies, and other application metrics. # Automatic scaling is based on request rate, response latencies, and other application metrics.
        "coolDownPeriod": "A String", # The time period that the Autoscaler (https://cloud.google.com/compute/docs/autoscaler/) should wait before it starts collecting information from a new instance. This prevents the autoscaler from collecting information when the instance is initializing, during which the collected usage would not be reliable. Only applicable in the App Engine flexible environment.
        "cpuUtilization": { # Target scaling by CPU usage. # Target scaling by CPU usage.
          "aggregationWindowLength": "A String", # Period of time over which CPU utilization is calculated.
          "targetUtilization": 3.14, # Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.
        },
        "diskUtilization": { # Target scaling by disk usage. Only applicable for VM runtimes. # Target scaling by disk usage.
          "targetReadBytesPerSec": 42, # Target bytes read per second.
          "targetReadOpsPerSec": 42, # Target ops read per second.
          "targetWriteBytesPerSec": 42, # Target bytes written per second.
          "targetWriteOpsPerSec": 42, # Target ops written per second.
        },
        "maxConcurrentRequests": 42, # Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.Defaults to a runtime-specific value.
        "maxIdleInstances": 42, # Maximum number of idle instances that should be maintained for this version.
        "maxPendingLatency": "A String", # Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.
        "maxTotalInstances": 42, # Maximum number of instances that should be started to handle requests.
        "minIdleInstances": 42, # Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a module.
        "minPendingLatency": "A String", # Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.
        "minTotalInstances": 42, # Minimum number of instances that should be maintained for this version.
        "networkUtilization": { # Target scaling by network usage. Only applicable for VM runtimes. # Target scaling by network usage.
          "targetReceivedBytesPerSec": 42, # Target bytes received per second.
          "targetReceivedPacketsPerSec": 42, # Target packets received per second.
          "targetSentBytesPerSec": 42, # Target bytes sent per second.
          "targetSentPacketsPerSec": 42, # Target packets sent per second.
        },
        "requestUtilization": { # Target scaling by request utilization. Only applicable for VM runtimes. # Target scaling by request utilization.
          "targetConcurrentRequests": 42, # Target number of concurrent requests.
          "targetRequestCountPerSec": 42, # Target requests per second.
        },
      },
      "basicScaling": { # A module with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity. # A module with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity.
        "idleTimeout": "A String", # Duration of time after the last request that an instance must wait before the instance is shut down.
        "maxInstances": 42, # Maximum number of instances to create for this version.
      },
      "betaSettings": { # Metadata settings that are supplied to this version to enable beta runtime features.
        "a_key": "A String",
      },
      "creationTime": "A String", # Time that this version was created.@OutputOnly
      "defaultExpiration": "A String", # Duration that static files should be cached by web proxies and browsers. Only applicable if the corresponding StaticFilesHandler (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#staticfileshandler) does not specify its own expiration time.Only returned in GET requests if view=FULL is set.
      "deployer": "A String", # Email address of the user who created this version.@OutputOnly
      "deployment": { # Code and application artifacts used to deploy a version to App Engine. # Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set.
        "container": { # Docker image that is used to create a container and start a VM instance for the version that you deploy. Only applicable for instances running in the App Engine flexible environment. # The Docker image for the container that runs the version. Only applicable for instances running in the App Engine flexible environment.
          "image": "A String", # URI to the hosted container image in Google Container Registry. The URI must be fully qualified and include a tag or digest. Examples: "gcr.io/my-project/image:tag" or "gcr.io/my-project/image@digest"
        },
        "files": { # Manifest of the files stored in Google Cloud Storage that are included as part of this version. All files must be readable using the credentials supplied with this call.
          "a_key": { # Single source file that is part of the version to be deployed. Each source file that is deployed must be specified separately.
            "mimeType": "A String", # The MIME type of the file.Defaults to the value from Google Cloud Storage.
            "sha1Sum": "A String", # The SHA1 hash of the file, in hex.
            "sourceUrl": "A String", # URL source to use to fetch this file. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/<bucket>/<object>'.
          },
        },
        "sourceReferences": [ # Origin of the source code for this deployment. There can be more than one source reference per version if source code is distributed among multiple repositories.
          { # Reference to a particular snapshot of the source tree used to build and deploy the application.
            "repository": "A String", # URI string identifying the repository. Example: "https://source.developers.google.com/p/app-123/r/default"
            "revisionId": "A String", # The canonical, persistent identifier of the deployed revision. Aliases that include tags or branch names are not allowed. Example (git): "2198322f89e0bb2e25021667c2ed489d1fd34e6b"
          },
        ],
      },
      "endpointsApiService": { # Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The Endpoints API Service provides tooling for serving Open API and gRPC endpoints via an NGINX proxy. Only valid for App Engine Flexible environment deployments..The fields here refer to the name and configuration id of a "service" resource in the Service Management API (https://cloud.google.com/service-management/overview). # Cloud Endpoints configuration.If endpoints_api_service is set, the Cloud Endpoints Extensible Service Proxy will be provided to serve the API implemented by the app.
        "configId": "A String", # Endpoints service configuration id as specified by the Service Management API. For example "2016-09-19r1"By default, the Endpoints service configuration id is fixed and config_id must be specified. To keep the Endpoints service configuration id updated with each rollout, specify RolloutStrategy.MANAGED and omit config_id.
        "disableTraceSampling": True or False, # Enable or disable trace sampling. By default, this is set to false for enabled.
        "name": "A String", # Endpoints service name which is the name of the "service" resource in the Service Management API. For example "myapi.endpoints.myproject.cloud.goog"
        "rolloutStrategy": "A String", # Endpoints rollout strategy. If FIXED, config_id must be specified. If MANAGED, config_id must be omitted.
      },
      "env": "A String", # App Engine execution environment to use for this version.Defaults to 1.
      "envVariables": { # Environment variables made available to the application.Only returned in GET requests if view=FULL is set.
        "a_key": "A String",
      },
      "errorHandlers": [ # Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.
        { # Custom static error page to be served when an error occurs.
          "errorCode": "A String", # Error condition this handler applies to.
          "mimeType": "A String", # MIME type of file. Defaults to text/html.
          "staticFile": "A String", # Static file content to be served for this error.
        },
      ],
      "handlers": [ # An ordered list of URL-matching patterns that should be applied to incoming requests. The first matching URL handles the request and other request handlers are not attempted.Only returned in GET requests if view=FULL is set.
        { # URL pattern and description of how the URL should be handled. App Engine can handle URLs by executing application code, or by serving static files uploaded with the version, such as images, CSS, or JavaScript.
          "apiEndpoint": { # Uses Google Cloud Endpoints to handle requests. # Uses API Endpoints to handle requests.
            "scriptPath": "A String", # Path to the script from the application root directory.
          },
          "authFailAction": "A String", # Action to take when users access resources that require authentication. Defaults to redirect.
          "login": "A String", # Level of login required to access this resource.
          "redirectHttpResponseCode": "A String", # 30x code to use when performing redirects for the secure field. Defaults to 302.
          "script": { # Executes a script to handle the request that matches the URL pattern. # Executes a script to handle the request that matches this URL pattern.
            "scriptPath": "A String", # Path to the script from the application root directory.
          },
          "securityLevel": "A String", # Security (HTTPS) enforcement for this URL.
          "staticDirectory": { # Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static directory handlers make it easy to serve the entire contents of a directory as static files. # Serves the entire contents of a directory as static files.This attribute is deprecated. You can mimic the behavior of static directories using static files.
            "applicationReadable": True or False, # Whether files should also be uploaded as code data. By default, files declared in static directory handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.
            "directory": "A String", # Path to the directory containing the static files from the application root directory. Everything after the end of the matched URL pattern is appended to static_dir to form the full path to the requested file.
            "expiration": "A String", # Time a static file served by this handler should be cached.
            "httpHeaders": { # HTTP headers to use for all responses from these URLs.
              "a_key": "A String",
            },
            "mimeType": "A String", # MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are direved from each file's filename extension.
            "requireMatchingFile": True or False, # Whether this handler should match the request if the file referenced by the handler does not exist.
          },
          "staticFiles": { # Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static file handlers describe which files in the application directory are static files, and which URLs serve them. # Returns the contents of a file, such as an image, as the response.
            "applicationReadable": True or False, # Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.
            "expiration": "A String", # Time a static file served by this handler should be cached.
            "httpHeaders": { # HTTP headers to use for all responses from these URLs.
              "a_key": "A String",
            },
            "mimeType": "A String", # MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are derived from each file's filename extension.
            "path": "A String", # Path to the static files matched by the URL pattern, from the application root directory. The path can refer to text matched in groupings in the URL pattern.
            "requireMatchingFile": True or False, # Whether this handler should match the request if the file referenced by the handler does not exist.
            "uploadPathRegex": "A String", # Regular expression that matches the file paths for all files that should be referenced by this handler.
          },
          "urlRegex": "A String", # A URL prefix. Uses regular expression syntax, which means regexp special characters must be escaped, but should not contain groupings. All URLs that begin with this prefix are handled by this handler, using the portion of the URL after the prefix as part of the file path.
        },
      ],
      "healthCheck": { # Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances. Only applicable for instances in App Engine flexible environment. # Configures health checking for VM instances. Unhealthy instances are stopped and replaced with new instances. Only applicable for VM runtimes.Only returned in GET requests if view=FULL is set.
        "checkInterval": "A String", # Interval between health checks.
        "disableHealthCheck": True or False, # Whether to explicitly disable health checks for this instance.
        "healthyThreshold": 42, # Number of consecutive successful health checks required before receiving traffic.
        "host": "A String", # Host header to send when performing an HTTP health check. Example: "myapp.appspot.com"
        "restartThreshold": 42, # Number of consecutive failed health checks required before an instance is restarted.
        "timeout": "A String", # Time before the health check is considered failed.
        "unhealthyThreshold": 42, # Number of consecutive failed health checks required before removing traffic.
      },
      "id": "A String", # Relative name of the version within the module. Example: v1. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: "default", "latest", and any name with the prefix "ah-".
      "inboundServices": [ # Before an application can receive email or XMPP messages, the application must be configured to enable the service.
        "A String",
      ],
      "instanceClass": "A String", # Instance class that is used to run this version. Valid values are:
          # AutomaticScaling: F1, F2, F4, F4_1G
          # ManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.
      "libraries": [ # Configuration for third-party Python runtime libraries required by the application.Only returned in GET requests if view=FULL is set.
        { # Third-party Python runtime library that is required by the application.
          "name": "A String", # Name of the library. Example: "django".
          "version": "A String", # Version of the library to select, or "latest".
        },
      ],
      "manualScaling": { # A module with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time. # A module with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.
        "instances": 42, # Number of instances to assign to the module at the start. This number can later be altered by using the Modules API (https://cloud.google.com/appengine/docs/python/modules/functions) set_num_instances() function.
      },
      "name": "A String", # Full path to the Version resource in the API. Example: apps/myapp/modules/default/versions/v1.@OutputOnly
      "network": { # Extra network settings. Only applicable for VM runtimes. # Extra network settings. Only applicable for VM runtimes.
        "forwardedPorts": [ # List of ports, or port pairs, to forward from the virtual machine to the application container.
          "A String",
        ],
        "instanceTag": "A String", # Tag to apply to the VM instance during creation.
        "name": "A String", # Google Cloud Platform network where the virtual machines are created. Specify the short name, not the resource path.Defaults to default.
      },
      "nobuildFilesRegex": "A String", # Files that match this pattern will not be built into this version. Only applicable for Go runtimes.Only returned in GET requests if view=FULL is set.
      "resources": { # Machine resources for a version. # Machine resources for this version. Only applicable for VM runtimes.
        "cpu": 3.14, # Number of CPU cores needed.
        "diskGb": 3.14, # Disk size (GB) needed.
        "memoryGb": 3.14, # Memory (GB) needed.
        "volumes": [ # User specified volumes.
          { # Volumes mounted within the app container. Only applicable for VM runtimes.
            "name": "A String", # Unique name for the volume.
            "sizeGb": 3.14, # Volume size in gigabytes.
            "volumeType": "A String", # Underlying volume type, e.g. 'tmpfs'.
          },
        ],
      },
      "runtime": "A String", # Desired runtime. Example: python27.
      "runtimeApiVersion": "A String", # The version of the API in the given runtime environment. Please see the app.yaml reference for valid values at https://cloud.google.com/appengine/docs/standard/<language>/config/appref
      "runtimeMainExecutablePath": "A String", # The path or name of the app's main executable.
      "servingStatus": "A String", # Current serving status of this version. Only the versions with a SERVING status create instances and can be billed.SERVING_STATUS_UNSPECIFIED is an invalid value. Defaults to SERVING.
      "threadsafe": True or False, # Whether multiple requests can be dispatched to this version at once.
      "vm": True or False, # Whether to deploy this version in a container on a virtual machine.
    }

      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). The error model is designed to be: # The error result of the operation in case of failure or cancellation.
          # Simple to use and understand for most users
          # Flexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:
          # Partial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.
          # Workflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.
          # Batch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.
          # Asynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.
          # Logging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.
        "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 have the format of operations/some/unique/name.
      "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.
      },
    }

`delete(appsId, modulesId, versionsId, x__xgafv=None)`

    Deletes an existing version.

    Args:
      appsId: string, Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1. (required)
      modulesId: string, Part of `name`. See documentation of `appsId`. (required)
      versionsId: 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). The error model is designed to be: # The error result of the operation in case of failure or cancellation.
          # Simple to use and understand for most users
          # Flexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:
          # Partial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.
          # Workflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.
          # Batch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.
          # Asynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.
          # Logging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.
        "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 have the format of operations/some/unique/name.
      "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.
      },
    }

`get(appsId, modulesId, versionsId, view=None, x__xgafv=None)`

    Gets the specified Version resource. By default, only a BASIC_VIEW will be returned. Specify the FULL_VIEW parameter to get the full resource.

    Args:
      appsId: string, Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1. (required)
      modulesId: string, Part of `name`. See documentation of `appsId`. (required)
      versionsId: string, Part of `name`. See documentation of `appsId`. (required)
      view: string, Controls the set of fields returned in the Get response.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A Version resource is a specific set of source code and configuration files that are deployed into a module.
      "apiConfig": { # Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers. # Serving configuration for Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/).Only returned in GET requests if view=FULL is set.
        "authFailAction": "A String", # Action to take when users access resources that require authentication. Defaults to redirect.
        "login": "A String", # Level of login required to access this resource. Defaults to optional.
        "script": "A String", # Path to the script from the application root directory.
        "securityLevel": "A String", # Security (HTTPS) enforcement for this URL.
        "url": "A String", # URL to serve the endpoint at.
      },
      "automaticScaling": { # Automatic scaling is based on request rate, response latencies, and other application metrics. # Automatic scaling is based on request rate, response latencies, and other application metrics.
        "coolDownPeriod": "A String", # The time period that the Autoscaler (https://cloud.google.com/compute/docs/autoscaler/) should wait before it starts collecting information from a new instance. This prevents the autoscaler from collecting information when the instance is initializing, during which the collected usage would not be reliable. Only applicable in the App Engine flexible environment.
        "cpuUtilization": { # Target scaling by CPU usage. # Target scaling by CPU usage.
          "aggregationWindowLength": "A String", # Period of time over which CPU utilization is calculated.
          "targetUtilization": 3.14, # Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.
        },
        "diskUtilization": { # Target scaling by disk usage. Only applicable for VM runtimes. # Target scaling by disk usage.
          "targetReadBytesPerSec": 42, # Target bytes read per second.
          "targetReadOpsPerSec": 42, # Target ops read per second.
          "targetWriteBytesPerSec": 42, # Target bytes written per second.
          "targetWriteOpsPerSec": 42, # Target ops written per second.
        },
        "maxConcurrentRequests": 42, # Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.Defaults to a runtime-specific value.
        "maxIdleInstances": 42, # Maximum number of idle instances that should be maintained for this version.
        "maxPendingLatency": "A String", # Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.
        "maxTotalInstances": 42, # Maximum number of instances that should be started to handle requests.
        "minIdleInstances": 42, # Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a module.
        "minPendingLatency": "A String", # Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.
        "minTotalInstances": 42, # Minimum number of instances that should be maintained for this version.
        "networkUtilization": { # Target scaling by network usage. Only applicable for VM runtimes. # Target scaling by network usage.
          "targetReceivedBytesPerSec": 42, # Target bytes received per second.
          "targetReceivedPacketsPerSec": 42, # Target packets received per second.
          "targetSentBytesPerSec": 42, # Target bytes sent per second.
          "targetSentPacketsPerSec": 42, # Target packets sent per second.
        },
        "requestUtilization": { # Target scaling by request utilization. Only applicable for VM runtimes. # Target scaling by request utilization.
          "targetConcurrentRequests": 42, # Target number of concurrent requests.
          "targetRequestCountPerSec": 42, # Target requests per second.
        },
      },
      "basicScaling": { # A module with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity. # A module with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity.
        "idleTimeout": "A String", # Duration of time after the last request that an instance must wait before the instance is shut down.
        "maxInstances": 42, # Maximum number of instances to create for this version.
      },
      "betaSettings": { # Metadata settings that are supplied to this version to enable beta runtime features.
        "a_key": "A String",
      },
      "creationTime": "A String", # Time that this version was created.@OutputOnly
      "defaultExpiration": "A String", # Duration that static files should be cached by web proxies and browsers. Only applicable if the corresponding StaticFilesHandler (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#staticfileshandler) does not specify its own expiration time.Only returned in GET requests if view=FULL is set.
      "deployer": "A String", # Email address of the user who created this version.@OutputOnly
      "deployment": { # Code and application artifacts used to deploy a version to App Engine. # Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set.
        "container": { # Docker image that is used to create a container and start a VM instance for the version that you deploy. Only applicable for instances running in the App Engine flexible environment. # The Docker image for the container that runs the version. Only applicable for instances running in the App Engine flexible environment.
          "image": "A String", # URI to the hosted container image in Google Container Registry. The URI must be fully qualified and include a tag or digest. Examples: "gcr.io/my-project/image:tag" or "gcr.io/my-project/image@digest"
        },
        "files": { # Manifest of the files stored in Google Cloud Storage that are included as part of this version. All files must be readable using the credentials supplied with this call.
          "a_key": { # Single source file that is part of the version to be deployed. Each source file that is deployed must be specified separately.
            "mimeType": "A String", # The MIME type of the file.Defaults to the value from Google Cloud Storage.
            "sha1Sum": "A String", # The SHA1 hash of the file, in hex.
            "sourceUrl": "A String", # URL source to use to fetch this file. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/<bucket>/<object>'.
          },
        },
        "sourceReferences": [ # Origin of the source code for this deployment. There can be more than one source reference per version if source code is distributed among multiple repositories.
          { # Reference to a particular snapshot of the source tree used to build and deploy the application.
            "repository": "A String", # URI string identifying the repository. Example: "https://source.developers.google.com/p/app-123/r/default"
            "revisionId": "A String", # The canonical, persistent identifier of the deployed revision. Aliases that include tags or branch names are not allowed. Example (git): "2198322f89e0bb2e25021667c2ed489d1fd34e6b"
          },
        ],
      },
      "endpointsApiService": { # Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The Endpoints API Service provides tooling for serving Open API and gRPC endpoints via an NGINX proxy. Only valid for App Engine Flexible environment deployments..The fields here refer to the name and configuration id of a "service" resource in the Service Management API (https://cloud.google.com/service-management/overview). # Cloud Endpoints configuration.If endpoints_api_service is set, the Cloud Endpoints Extensible Service Proxy will be provided to serve the API implemented by the app.
        "configId": "A String", # Endpoints service configuration id as specified by the Service Management API. For example "2016-09-19r1"By default, the Endpoints service configuration id is fixed and config_id must be specified. To keep the Endpoints service configuration id updated with each rollout, specify RolloutStrategy.MANAGED and omit config_id.
        "disableTraceSampling": True or False, # Enable or disable trace sampling. By default, this is set to false for enabled.
        "name": "A String", # Endpoints service name which is the name of the "service" resource in the Service Management API. For example "myapi.endpoints.myproject.cloud.goog"
        "rolloutStrategy": "A String", # Endpoints rollout strategy. If FIXED, config_id must be specified. If MANAGED, config_id must be omitted.
      },
      "env": "A String", # App Engine execution environment to use for this version.Defaults to 1.
      "envVariables": { # Environment variables made available to the application.Only returned in GET requests if view=FULL is set.
        "a_key": "A String",
      },
      "errorHandlers": [ # Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.
        { # Custom static error page to be served when an error occurs.
          "errorCode": "A String", # Error condition this handler applies to.
          "mimeType": "A String", # MIME type of file. Defaults to text/html.
          "staticFile": "A String", # Static file content to be served for this error.
        },
      ],
      "handlers": [ # An ordered list of URL-matching patterns that should be applied to incoming requests. The first matching URL handles the request and other request handlers are not attempted.Only returned in GET requests if view=FULL is set.
        { # URL pattern and description of how the URL should be handled. App Engine can handle URLs by executing application code, or by serving static files uploaded with the version, such as images, CSS, or JavaScript.
          "apiEndpoint": { # Uses Google Cloud Endpoints to handle requests. # Uses API Endpoints to handle requests.
            "scriptPath": "A String", # Path to the script from the application root directory.
          },
          "authFailAction": "A String", # Action to take when users access resources that require authentication. Defaults to redirect.
          "login": "A String", # Level of login required to access this resource.
          "redirectHttpResponseCode": "A String", # 30x code to use when performing redirects for the secure field. Defaults to 302.
          "script": { # Executes a script to handle the request that matches the URL pattern. # Executes a script to handle the request that matches this URL pattern.
            "scriptPath": "A String", # Path to the script from the application root directory.
          },
          "securityLevel": "A String", # Security (HTTPS) enforcement for this URL.
          "staticDirectory": { # Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static directory handlers make it easy to serve the entire contents of a directory as static files. # Serves the entire contents of a directory as static files.This attribute is deprecated. You can mimic the behavior of static directories using static files.
            "applicationReadable": True or False, # Whether files should also be uploaded as code data. By default, files declared in static directory handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.
            "directory": "A String", # Path to the directory containing the static files from the application root directory. Everything after the end of the matched URL pattern is appended to static_dir to form the full path to the requested file.
            "expiration": "A String", # Time a static file served by this handler should be cached.
            "httpHeaders": { # HTTP headers to use for all responses from these URLs.
              "a_key": "A String",
            },
            "mimeType": "A String", # MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are direved from each file's filename extension.
            "requireMatchingFile": True or False, # Whether this handler should match the request if the file referenced by the handler does not exist.
          },
          "staticFiles": { # Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static file handlers describe which files in the application directory are static files, and which URLs serve them. # Returns the contents of a file, such as an image, as the response.
            "applicationReadable": True or False, # Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.
            "expiration": "A String", # Time a static file served by this handler should be cached.
            "httpHeaders": { # HTTP headers to use for all responses from these URLs.
              "a_key": "A String",
            },
            "mimeType": "A String", # MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are derived from each file's filename extension.
            "path": "A String", # Path to the static files matched by the URL pattern, from the application root directory. The path can refer to text matched in groupings in the URL pattern.
            "requireMatchingFile": True or False, # Whether this handler should match the request if the file referenced by the handler does not exist.
            "uploadPathRegex": "A String", # Regular expression that matches the file paths for all files that should be referenced by this handler.
          },
          "urlRegex": "A String", # A URL prefix. Uses regular expression syntax, which means regexp special characters must be escaped, but should not contain groupings. All URLs that begin with this prefix are handled by this handler, using the portion of the URL after the prefix as part of the file path.
        },
      ],
      "healthCheck": { # Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances. Only applicable for instances in App Engine flexible environment. # Configures health checking for VM instances. Unhealthy instances are stopped and replaced with new instances. Only applicable for VM runtimes.Only returned in GET requests if view=FULL is set.
        "checkInterval": "A String", # Interval between health checks.
        "disableHealthCheck": True or False, # Whether to explicitly disable health checks for this instance.
        "healthyThreshold": 42, # Number of consecutive successful health checks required before receiving traffic.
        "host": "A String", # Host header to send when performing an HTTP health check. Example: "myapp.appspot.com"
        "restartThreshold": 42, # Number of consecutive failed health checks required before an instance is restarted.
        "timeout": "A String", # Time before the health check is considered failed.
        "unhealthyThreshold": 42, # Number of consecutive failed health checks required before removing traffic.
      },
      "id": "A String", # Relative name of the version within the module. Example: v1. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: "default", "latest", and any name with the prefix "ah-".
      "inboundServices": [ # Before an application can receive email or XMPP messages, the application must be configured to enable the service.
        "A String",
      ],
      "instanceClass": "A String", # Instance class that is used to run this version. Valid values are:
          # AutomaticScaling: F1, F2, F4, F4_1G
          # ManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.
      "libraries": [ # Configuration for third-party Python runtime libraries required by the application.Only returned in GET requests if view=FULL is set.
        { # Third-party Python runtime library that is required by the application.
          "name": "A String", # Name of the library. Example: "django".
          "version": "A String", # Version of the library to select, or "latest".
        },
      ],
      "manualScaling": { # A module with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time. # A module with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.
        "instances": 42, # Number of instances to assign to the module at the start. This number can later be altered by using the Modules API (https://cloud.google.com/appengine/docs/python/modules/functions) set_num_instances() function.
      },
      "name": "A String", # Full path to the Version resource in the API. Example: apps/myapp/modules/default/versions/v1.@OutputOnly
      "network": { # Extra network settings. Only applicable for VM runtimes. # Extra network settings. Only applicable for VM runtimes.
        "forwardedPorts": [ # List of ports, or port pairs, to forward from the virtual machine to the application container.
          "A String",
        ],
        "instanceTag": "A String", # Tag to apply to the VM instance during creation.
        "name": "A String", # Google Cloud Platform network where the virtual machines are created. Specify the short name, not the resource path.Defaults to default.
      },
      "nobuildFilesRegex": "A String", # Files that match this pattern will not be built into this version. Only applicable for Go runtimes.Only returned in GET requests if view=FULL is set.
      "resources": { # Machine resources for a version. # Machine resources for this version. Only applicable for VM runtimes.
        "cpu": 3.14, # Number of CPU cores needed.
        "diskGb": 3.14, # Disk size (GB) needed.
        "memoryGb": 3.14, # Memory (GB) needed.
        "volumes": [ # User specified volumes.
          { # Volumes mounted within the app container. Only applicable for VM runtimes.
            "name": "A String", # Unique name for the volume.
            "sizeGb": 3.14, # Volume size in gigabytes.
            "volumeType": "A String", # Underlying volume type, e.g. 'tmpfs'.
          },
        ],
      },
      "runtime": "A String", # Desired runtime. Example: python27.
      "runtimeApiVersion": "A String", # The version of the API in the given runtime environment. Please see the app.yaml reference for valid values at https://cloud.google.com/appengine/docs/standard/<language>/config/appref
      "runtimeMainExecutablePath": "A String", # The path or name of the app's main executable.
      "servingStatus": "A String", # Current serving status of this version. Only the versions with a SERVING status create instances and can be billed.SERVING_STATUS_UNSPECIFIED is an invalid value. Defaults to SERVING.
      "threadsafe": True or False, # Whether multiple requests can be dispatched to this version at once.
      "vm": True or False, # Whether to deploy this version in a container on a virtual machine.
    }

`list(appsId, modulesId, pageSize=None, pageToken=None, view=None, x__xgafv=None)`

    Lists the versions of a module.

    Args:
      appsId: string, Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default. (required)
      modulesId: string, Part of `name`. See documentation of `appsId`. (required)
      pageSize: integer, Maximum results to return per page.
      pageToken: string, Continuation token for fetching the next page of results.
      view: string, Controls the set of fields returned in the List response.
      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 Versions.ListVersions.
      "nextPageToken": "A String", # Continuation token for fetching the next page of results.
      "versions": [ # The versions belonging to the requested module.
        { # A Version resource is a specific set of source code and configuration files that are deployed into a module.
          "apiConfig": { # Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers. # Serving configuration for Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/).Only returned in GET requests if view=FULL is set.
            "authFailAction": "A String", # Action to take when users access resources that require authentication. Defaults to redirect.
            "login": "A String", # Level of login required to access this resource. Defaults to optional.
            "script": "A String", # Path to the script from the application root directory.
            "securityLevel": "A String", # Security (HTTPS) enforcement for this URL.
            "url": "A String", # URL to serve the endpoint at.
          },
          "automaticScaling": { # Automatic scaling is based on request rate, response latencies, and other application metrics. # Automatic scaling is based on request rate, response latencies, and other application metrics.
            "coolDownPeriod": "A String", # The time period that the Autoscaler (https://cloud.google.com/compute/docs/autoscaler/) should wait before it starts collecting information from a new instance. This prevents the autoscaler from collecting information when the instance is initializing, during which the collected usage would not be reliable. Only applicable in the App Engine flexible environment.
            "cpuUtilization": { # Target scaling by CPU usage. # Target scaling by CPU usage.
              "aggregationWindowLength": "A String", # Period of time over which CPU utilization is calculated.
              "targetUtilization": 3.14, # Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.
            },
            "diskUtilization": { # Target scaling by disk usage. Only applicable for VM runtimes. # Target scaling by disk usage.
              "targetReadBytesPerSec": 42, # Target bytes read per second.
              "targetReadOpsPerSec": 42, # Target ops read per second.
              "targetWriteBytesPerSec": 42, # Target bytes written per second.
              "targetWriteOpsPerSec": 42, # Target ops written per second.
            },
            "maxConcurrentRequests": 42, # Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.Defaults to a runtime-specific value.
            "maxIdleInstances": 42, # Maximum number of idle instances that should be maintained for this version.
            "maxPendingLatency": "A String", # Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.
            "maxTotalInstances": 42, # Maximum number of instances that should be started to handle requests.
            "minIdleInstances": 42, # Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a module.
            "minPendingLatency": "A String", # Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.
            "minTotalInstances": 42, # Minimum number of instances that should be maintained for this version.
            "networkUtilization": { # Target scaling by network usage. Only applicable for VM runtimes. # Target scaling by network usage.
              "targetReceivedBytesPerSec": 42, # Target bytes received per second.
              "targetReceivedPacketsPerSec": 42, # Target packets received per second.
              "targetSentBytesPerSec": 42, # Target bytes sent per second.
              "targetSentPacketsPerSec": 42, # Target packets sent per second.
            },
            "requestUtilization": { # Target scaling by request utilization. Only applicable for VM runtimes. # Target scaling by request utilization.
              "targetConcurrentRequests": 42, # Target number of concurrent requests.
              "targetRequestCountPerSec": 42, # Target requests per second.
            },
          },
          "basicScaling": { # A module with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity. # A module with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity.
            "idleTimeout": "A String", # Duration of time after the last request that an instance must wait before the instance is shut down.
            "maxInstances": 42, # Maximum number of instances to create for this version.
          },
          "betaSettings": { # Metadata settings that are supplied to this version to enable beta runtime features.
            "a_key": "A String",
          },
          "creationTime": "A String", # Time that this version was created.@OutputOnly
          "defaultExpiration": "A String", # Duration that static files should be cached by web proxies and browsers. Only applicable if the corresponding StaticFilesHandler (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#staticfileshandler) does not specify its own expiration time.Only returned in GET requests if view=FULL is set.
          "deployer": "A String", # Email address of the user who created this version.@OutputOnly
          "deployment": { # Code and application artifacts used to deploy a version to App Engine. # Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set.
            "container": { # Docker image that is used to create a container and start a VM instance for the version that you deploy. Only applicable for instances running in the App Engine flexible environment. # The Docker image for the container that runs the version. Only applicable for instances running in the App Engine flexible environment.
              "image": "A String", # URI to the hosted container image in Google Container Registry. The URI must be fully qualified and include a tag or digest. Examples: "gcr.io/my-project/image:tag" or "gcr.io/my-project/image@digest"
            },
            "files": { # Manifest of the files stored in Google Cloud Storage that are included as part of this version. All files must be readable using the credentials supplied with this call.
              "a_key": { # Single source file that is part of the version to be deployed. Each source file that is deployed must be specified separately.
                "mimeType": "A String", # The MIME type of the file.Defaults to the value from Google Cloud Storage.
                "sha1Sum": "A String", # The SHA1 hash of the file, in hex.
                "sourceUrl": "A String", # URL source to use to fetch this file. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/<bucket>/<object>'.
              },
            },
            "sourceReferences": [ # Origin of the source code for this deployment. There can be more than one source reference per version if source code is distributed among multiple repositories.
              { # Reference to a particular snapshot of the source tree used to build and deploy the application.
                "repository": "A String", # URI string identifying the repository. Example: "https://source.developers.google.com/p/app-123/r/default"
                "revisionId": "A String", # The canonical, persistent identifier of the deployed revision. Aliases that include tags or branch names are not allowed. Example (git): "2198322f89e0bb2e25021667c2ed489d1fd34e6b"
              },
            ],
          },
          "endpointsApiService": { # Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The Endpoints API Service provides tooling for serving Open API and gRPC endpoints via an NGINX proxy. Only valid for App Engine Flexible environment deployments..The fields here refer to the name and configuration id of a "service" resource in the Service Management API (https://cloud.google.com/service-management/overview). # Cloud Endpoints configuration.If endpoints_api_service is set, the Cloud Endpoints Extensible Service Proxy will be provided to serve the API implemented by the app.
            "configId": "A String", # Endpoints service configuration id as specified by the Service Management API. For example "2016-09-19r1"By default, the Endpoints service configuration id is fixed and config_id must be specified. To keep the Endpoints service configuration id updated with each rollout, specify RolloutStrategy.MANAGED and omit config_id.
            "disableTraceSampling": True or False, # Enable or disable trace sampling. By default, this is set to false for enabled.
            "name": "A String", # Endpoints service name which is the name of the "service" resource in the Service Management API. For example "myapi.endpoints.myproject.cloud.goog"
            "rolloutStrategy": "A String", # Endpoints rollout strategy. If FIXED, config_id must be specified. If MANAGED, config_id must be omitted.
          },
          "env": "A String", # App Engine execution environment to use for this version.Defaults to 1.
          "envVariables": { # Environment variables made available to the application.Only returned in GET requests if view=FULL is set.
            "a_key": "A String",
          },
          "errorHandlers": [ # Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.
            { # Custom static error page to be served when an error occurs.
              "errorCode": "A String", # Error condition this handler applies to.
              "mimeType": "A String", # MIME type of file. Defaults to text/html.
              "staticFile": "A String", # Static file content to be served for this error.
            },
          ],
          "handlers": [ # An ordered list of URL-matching patterns that should be applied to incoming requests. The first matching URL handles the request and other request handlers are not attempted.Only returned in GET requests if view=FULL is set.
            { # URL pattern and description of how the URL should be handled. App Engine can handle URLs by executing application code, or by serving static files uploaded with the version, such as images, CSS, or JavaScript.
              "apiEndpoint": { # Uses Google Cloud Endpoints to handle requests. # Uses API Endpoints to handle requests.
                "scriptPath": "A String", # Path to the script from the application root directory.
              },
              "authFailAction": "A String", # Action to take when users access resources that require authentication. Defaults to redirect.
              "login": "A String", # Level of login required to access this resource.
              "redirectHttpResponseCode": "A String", # 30x code to use when performing redirects for the secure field. Defaults to 302.
              "script": { # Executes a script to handle the request that matches the URL pattern. # Executes a script to handle the request that matches this URL pattern.
                "scriptPath": "A String", # Path to the script from the application root directory.
              },
              "securityLevel": "A String", # Security (HTTPS) enforcement for this URL.
              "staticDirectory": { # Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static directory handlers make it easy to serve the entire contents of a directory as static files. # Serves the entire contents of a directory as static files.This attribute is deprecated. You can mimic the behavior of static directories using static files.
                "applicationReadable": True or False, # Whether files should also be uploaded as code data. By default, files declared in static directory handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.
                "directory": "A String", # Path to the directory containing the static files from the application root directory. Everything after the end of the matched URL pattern is appended to static_dir to form the full path to the requested file.
                "expiration": "A String", # Time a static file served by this handler should be cached.
                "httpHeaders": { # HTTP headers to use for all responses from these URLs.
                  "a_key": "A String",
                },
                "mimeType": "A String", # MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are direved from each file's filename extension.
                "requireMatchingFile": True or False, # Whether this handler should match the request if the file referenced by the handler does not exist.
              },
              "staticFiles": { # Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static file handlers describe which files in the application directory are static files, and which URLs serve them. # Returns the contents of a file, such as an image, as the response.
                "applicationReadable": True or False, # Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.
                "expiration": "A String", # Time a static file served by this handler should be cached.
                "httpHeaders": { # HTTP headers to use for all responses from these URLs.
                  "a_key": "A String",
                },
                "mimeType": "A String", # MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are derived from each file's filename extension.
                "path": "A String", # Path to the static files matched by the URL pattern, from the application root directory. The path can refer to text matched in groupings in the URL pattern.
                "requireMatchingFile": True or False, # Whether this handler should match the request if the file referenced by the handler does not exist.
                "uploadPathRegex": "A String", # Regular expression that matches the file paths for all files that should be referenced by this handler.
              },
              "urlRegex": "A String", # A URL prefix. Uses regular expression syntax, which means regexp special characters must be escaped, but should not contain groupings. All URLs that begin with this prefix are handled by this handler, using the portion of the URL after the prefix as part of the file path.
            },
          ],
          "healthCheck": { # Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances. Only applicable for instances in App Engine flexible environment. # Configures health checking for VM instances. Unhealthy instances are stopped and replaced with new instances. Only applicable for VM runtimes.Only returned in GET requests if view=FULL is set.
            "checkInterval": "A String", # Interval between health checks.
            "disableHealthCheck": True or False, # Whether to explicitly disable health checks for this instance.
            "healthyThreshold": 42, # Number of consecutive successful health checks required before receiving traffic.
            "host": "A String", # Host header to send when performing an HTTP health check. Example: "myapp.appspot.com"
            "restartThreshold": 42, # Number of consecutive failed health checks required before an instance is restarted.
            "timeout": "A String", # Time before the health check is considered failed.
            "unhealthyThreshold": 42, # Number of consecutive failed health checks required before removing traffic.
          },
          "id": "A String", # Relative name of the version within the module. Example: v1. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: "default", "latest", and any name with the prefix "ah-".
          "inboundServices": [ # Before an application can receive email or XMPP messages, the application must be configured to enable the service.
            "A String",
          ],
          "instanceClass": "A String", # Instance class that is used to run this version. Valid values are:
              # AutomaticScaling: F1, F2, F4, F4_1G
              # ManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.
          "libraries": [ # Configuration for third-party Python runtime libraries required by the application.Only returned in GET requests if view=FULL is set.
            { # Third-party Python runtime library that is required by the application.
              "name": "A String", # Name of the library. Example: "django".
              "version": "A String", # Version of the library to select, or "latest".
            },
          ],
          "manualScaling": { # A module with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time. # A module with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.
            "instances": 42, # Number of instances to assign to the module at the start. This number can later be altered by using the Modules API (https://cloud.google.com/appengine/docs/python/modules/functions) set_num_instances() function.
          },
          "name": "A String", # Full path to the Version resource in the API. Example: apps/myapp/modules/default/versions/v1.@OutputOnly
          "network": { # Extra network settings. Only applicable for VM runtimes. # Extra network settings. Only applicable for VM runtimes.
            "forwardedPorts": [ # List of ports, or port pairs, to forward from the virtual machine to the application container.
              "A String",
            ],
            "instanceTag": "A String", # Tag to apply to the VM instance during creation.
            "name": "A String", # Google Cloud Platform network where the virtual machines are created. Specify the short name, not the resource path.Defaults to default.
          },
          "nobuildFilesRegex": "A String", # Files that match this pattern will not be built into this version. Only applicable for Go runtimes.Only returned in GET requests if view=FULL is set.
          "resources": { # Machine resources for a version. # Machine resources for this version. Only applicable for VM runtimes.
            "cpu": 3.14, # Number of CPU cores needed.
            "diskGb": 3.14, # Disk size (GB) needed.
            "memoryGb": 3.14, # Memory (GB) needed.
            "volumes": [ # User specified volumes.
              { # Volumes mounted within the app container. Only applicable for VM runtimes.
                "name": "A String", # Unique name for the volume.
                "sizeGb": 3.14, # Volume size in gigabytes.
                "volumeType": "A String", # Underlying volume type, e.g. 'tmpfs'.
              },
            ],
          },
          "runtime": "A String", # Desired runtime. Example: python27.
          "runtimeApiVersion": "A String", # The version of the API in the given runtime environment. Please see the app.yaml reference for valid values at https://cloud.google.com/appengine/docs/standard/<language>/config/appref
          "runtimeMainExecutablePath": "A String", # The path or name of the app's main executable.
          "servingStatus": "A String", # Current serving status of this version. Only the versions with a SERVING status create instances and can be billed.SERVING_STATUS_UNSPECIFIED is an invalid value. Defaults to SERVING.
          "threadsafe": True or False, # Whether multiple requests can be dispatched to this version at once.
          "vm": True or False, # Whether to deploy this version in a container on a virtual machine.
        },
      ],
    }

`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.

`patch(appsId, modulesId, versionsId, body=None, mask=None, x__xgafv=None)`

    Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses:
    serving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#Version.FIELDS.serving_status):  For Version resources that use basic scaling, manual scaling, or run in  the App Engine flexible environment.
    instance_class (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#Version.FIELDS.instance_class):  For Version resources that run in the App Engine standard environment.
    automatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#Version.FIELDS.automatic_scaling):  For Version resources that use automatic scaling and run in the App  Engine standard environment.
    automatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#Version.FIELDS.automatic_scaling):  For Version resources that use automatic scaling and run in the App  Engine standard environment.

    Args:
      appsId: string, Part of `name`. Name of the resource to update. Example: apps/myapp/modules/default/versions/1. (required)
      modulesId: string, Part of `name`. See documentation of `appsId`. (required)
      versionsId: string, Part of `name`. See documentation of `appsId`. (required)
      body: object, The request body.
        The object takes the form of:

    { # A Version resource is a specific set of source code and configuration files that are deployed into a module.
      "apiConfig": { # Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers. # Serving configuration for Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/).Only returned in GET requests if view=FULL is set.
        "authFailAction": "A String", # Action to take when users access resources that require authentication. Defaults to redirect.
        "login": "A String", # Level of login required to access this resource. Defaults to optional.
        "script": "A String", # Path to the script from the application root directory.
        "securityLevel": "A String", # Security (HTTPS) enforcement for this URL.
        "url": "A String", # URL to serve the endpoint at.
      },
      "automaticScaling": { # Automatic scaling is based on request rate, response latencies, and other application metrics. # Automatic scaling is based on request rate, response latencies, and other application metrics.
        "coolDownPeriod": "A String", # The time period that the Autoscaler (https://cloud.google.com/compute/docs/autoscaler/) should wait before it starts collecting information from a new instance. This prevents the autoscaler from collecting information when the instance is initializing, during which the collected usage would not be reliable. Only applicable in the App Engine flexible environment.
        "cpuUtilization": { # Target scaling by CPU usage. # Target scaling by CPU usage.
          "aggregationWindowLength": "A String", # Period of time over which CPU utilization is calculated.
          "targetUtilization": 3.14, # Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.
        },
        "diskUtilization": { # Target scaling by disk usage. Only applicable for VM runtimes. # Target scaling by disk usage.
          "targetReadBytesPerSec": 42, # Target bytes read per second.
          "targetReadOpsPerSec": 42, # Target ops read per second.
          "targetWriteBytesPerSec": 42, # Target bytes written per second.
          "targetWriteOpsPerSec": 42, # Target ops written per second.
        },
        "maxConcurrentRequests": 42, # Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.Defaults to a runtime-specific value.
        "maxIdleInstances": 42, # Maximum number of idle instances that should be maintained for this version.
        "maxPendingLatency": "A String", # Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.
        "maxTotalInstances": 42, # Maximum number of instances that should be started to handle requests.
        "minIdleInstances": 42, # Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a module.
        "minPendingLatency": "A String", # Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.
        "minTotalInstances": 42, # Minimum number of instances that should be maintained for this version.
        "networkUtilization": { # Target scaling by network usage. Only applicable for VM runtimes. # Target scaling by network usage.
          "targetReceivedBytesPerSec": 42, # Target bytes received per second.
          "targetReceivedPacketsPerSec": 42, # Target packets received per second.
          "targetSentBytesPerSec": 42, # Target bytes sent per second.
          "targetSentPacketsPerSec": 42, # Target packets sent per second.
        },
        "requestUtilization": { # Target scaling by request utilization. Only applicable for VM runtimes. # Target scaling by request utilization.
          "targetConcurrentRequests": 42, # Target number of concurrent requests.
          "targetRequestCountPerSec": 42, # Target requests per second.
        },
      },
      "basicScaling": { # A module with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity. # A module with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity.
        "idleTimeout": "A String", # Duration of time after the last request that an instance must wait before the instance is shut down.
        "maxInstances": 42, # Maximum number of instances to create for this version.
      },
      "betaSettings": { # Metadata settings that are supplied to this version to enable beta runtime features.
        "a_key": "A String",
      },
      "creationTime": "A String", # Time that this version was created.@OutputOnly
      "defaultExpiration": "A String", # Duration that static files should be cached by web proxies and browsers. Only applicable if the corresponding StaticFilesHandler (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#staticfileshandler) does not specify its own expiration time.Only returned in GET requests if view=FULL is set.
      "deployer": "A String", # Email address of the user who created this version.@OutputOnly
      "deployment": { # Code and application artifacts used to deploy a version to App Engine. # Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set.
        "container": { # Docker image that is used to create a container and start a VM instance for the version that you deploy. Only applicable for instances running in the App Engine flexible environment. # The Docker image for the container that runs the version. Only applicable for instances running in the App Engine flexible environment.
          "image": "A String", # URI to the hosted container image in Google Container Registry. The URI must be fully qualified and include a tag or digest. Examples: "gcr.io/my-project/image:tag" or "gcr.io/my-project/image@digest"
        },
        "files": { # Manifest of the files stored in Google Cloud Storage that are included as part of this version. All files must be readable using the credentials supplied with this call.
          "a_key": { # Single source file that is part of the version to be deployed. Each source file that is deployed must be specified separately.
            "mimeType": "A String", # The MIME type of the file.Defaults to the value from Google Cloud Storage.
            "sha1Sum": "A String", # The SHA1 hash of the file, in hex.
            "sourceUrl": "A String", # URL source to use to fetch this file. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/<bucket>/<object>'.
          },
        },
        "sourceReferences": [ # Origin of the source code for this deployment. There can be more than one source reference per version if source code is distributed among multiple repositories.
          { # Reference to a particular snapshot of the source tree used to build and deploy the application.
            "repository": "A String", # URI string identifying the repository. Example: "https://source.developers.google.com/p/app-123/r/default"
            "revisionId": "A String", # The canonical, persistent identifier of the deployed revision. Aliases that include tags or branch names are not allowed. Example (git): "2198322f89e0bb2e25021667c2ed489d1fd34e6b"
          },
        ],
      },
      "endpointsApiService": { # Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The Endpoints API Service provides tooling for serving Open API and gRPC endpoints via an NGINX proxy. Only valid for App Engine Flexible environment deployments..The fields here refer to the name and configuration id of a "service" resource in the Service Management API (https://cloud.google.com/service-management/overview). # Cloud Endpoints configuration.If endpoints_api_service is set, the Cloud Endpoints Extensible Service Proxy will be provided to serve the API implemented by the app.
        "configId": "A String", # Endpoints service configuration id as specified by the Service Management API. For example "2016-09-19r1"By default, the Endpoints service configuration id is fixed and config_id must be specified. To keep the Endpoints service configuration id updated with each rollout, specify RolloutStrategy.MANAGED and omit config_id.
        "disableTraceSampling": True or False, # Enable or disable trace sampling. By default, this is set to false for enabled.
        "name": "A String", # Endpoints service name which is the name of the "service" resource in the Service Management API. For example "myapi.endpoints.myproject.cloud.goog"
        "rolloutStrategy": "A String", # Endpoints rollout strategy. If FIXED, config_id must be specified. If MANAGED, config_id must be omitted.
      },
      "env": "A String", # App Engine execution environment to use for this version.Defaults to 1.
      "envVariables": { # Environment variables made available to the application.Only returned in GET requests if view=FULL is set.
        "a_key": "A String",
      },
      "errorHandlers": [ # Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.
        { # Custom static error page to be served when an error occurs.
          "errorCode": "A String", # Error condition this handler applies to.
          "mimeType": "A String", # MIME type of file. Defaults to text/html.
          "staticFile": "A String", # Static file content to be served for this error.
        },
      ],
      "handlers": [ # An ordered list of URL-matching patterns that should be applied to incoming requests. The first matching URL handles the request and other request handlers are not attempted.Only returned in GET requests if view=FULL is set.
        { # URL pattern and description of how the URL should be handled. App Engine can handle URLs by executing application code, or by serving static files uploaded with the version, such as images, CSS, or JavaScript.
          "apiEndpoint": { # Uses Google Cloud Endpoints to handle requests. # Uses API Endpoints to handle requests.
            "scriptPath": "A String", # Path to the script from the application root directory.
          },
          "authFailAction": "A String", # Action to take when users access resources that require authentication. Defaults to redirect.
          "login": "A String", # Level of login required to access this resource.
          "redirectHttpResponseCode": "A String", # 30x code to use when performing redirects for the secure field. Defaults to 302.
          "script": { # Executes a script to handle the request that matches the URL pattern. # Executes a script to handle the request that matches this URL pattern.
            "scriptPath": "A String", # Path to the script from the application root directory.
          },
          "securityLevel": "A String", # Security (HTTPS) enforcement for this URL.
          "staticDirectory": { # Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static directory handlers make it easy to serve the entire contents of a directory as static files. # Serves the entire contents of a directory as static files.This attribute is deprecated. You can mimic the behavior of static directories using static files.
            "applicationReadable": True or False, # Whether files should also be uploaded as code data. By default, files declared in static directory handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.
            "directory": "A String", # Path to the directory containing the static files from the application root directory. Everything after the end of the matched URL pattern is appended to static_dir to form the full path to the requested file.
            "expiration": "A String", # Time a static file served by this handler should be cached.
            "httpHeaders": { # HTTP headers to use for all responses from these URLs.
              "a_key": "A String",
            },
            "mimeType": "A String", # MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are direved from each file's filename extension.
            "requireMatchingFile": True or False, # Whether this handler should match the request if the file referenced by the handler does not exist.
          },
          "staticFiles": { # Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static file handlers describe which files in the application directory are static files, and which URLs serve them. # Returns the contents of a file, such as an image, as the response.
            "applicationReadable": True or False, # Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.
            "expiration": "A String", # Time a static file served by this handler should be cached.
            "httpHeaders": { # HTTP headers to use for all responses from these URLs.
              "a_key": "A String",
            },
            "mimeType": "A String", # MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are derived from each file's filename extension.
            "path": "A String", # Path to the static files matched by the URL pattern, from the application root directory. The path can refer to text matched in groupings in the URL pattern.
            "requireMatchingFile": True or False, # Whether this handler should match the request if the file referenced by the handler does not exist.
            "uploadPathRegex": "A String", # Regular expression that matches the file paths for all files that should be referenced by this handler.
          },
          "urlRegex": "A String", # A URL prefix. Uses regular expression syntax, which means regexp special characters must be escaped, but should not contain groupings. All URLs that begin with this prefix are handled by this handler, using the portion of the URL after the prefix as part of the file path.
        },
      ],
      "healthCheck": { # Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances. Only applicable for instances in App Engine flexible environment. # Configures health checking for VM instances. Unhealthy instances are stopped and replaced with new instances. Only applicable for VM runtimes.Only returned in GET requests if view=FULL is set.
        "checkInterval": "A String", # Interval between health checks.
        "disableHealthCheck": True or False, # Whether to explicitly disable health checks for this instance.
        "healthyThreshold": 42, # Number of consecutive successful health checks required before receiving traffic.
        "host": "A String", # Host header to send when performing an HTTP health check. Example: "myapp.appspot.com"
        "restartThreshold": 42, # Number of consecutive failed health checks required before an instance is restarted.
        "timeout": "A String", # Time before the health check is considered failed.
        "unhealthyThreshold": 42, # Number of consecutive failed health checks required before removing traffic.
      },
      "id": "A String", # Relative name of the version within the module. Example: v1. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: "default", "latest", and any name with the prefix "ah-".
      "inboundServices": [ # Before an application can receive email or XMPP messages, the application must be configured to enable the service.
        "A String",
      ],
      "instanceClass": "A String", # Instance class that is used to run this version. Valid values are:
          # AutomaticScaling: F1, F2, F4, F4_1G
          # ManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.
      "libraries": [ # Configuration for third-party Python runtime libraries required by the application.Only returned in GET requests if view=FULL is set.
        { # Third-party Python runtime library that is required by the application.
          "name": "A String", # Name of the library. Example: "django".
          "version": "A String", # Version of the library to select, or "latest".
        },
      ],
      "manualScaling": { # A module with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time. # A module with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.
        "instances": 42, # Number of instances to assign to the module at the start. This number can later be altered by using the Modules API (https://cloud.google.com/appengine/docs/python/modules/functions) set_num_instances() function.
      },
      "name": "A String", # Full path to the Version resource in the API. Example: apps/myapp/modules/default/versions/v1.@OutputOnly
      "network": { # Extra network settings. Only applicable for VM runtimes. # Extra network settings. Only applicable for VM runtimes.
        "forwardedPorts": [ # List of ports, or port pairs, to forward from the virtual machine to the application container.
          "A String",
        ],
        "instanceTag": "A String", # Tag to apply to the VM instance during creation.
        "name": "A String", # Google Cloud Platform network where the virtual machines are created. Specify the short name, not the resource path.Defaults to default.
      },
      "nobuildFilesRegex": "A String", # Files that match this pattern will not be built into this version. Only applicable for Go runtimes.Only returned in GET requests if view=FULL is set.
      "resources": { # Machine resources for a version. # Machine resources for this version. Only applicable for VM runtimes.
        "cpu": 3.14, # Number of CPU cores needed.
        "diskGb": 3.14, # Disk size (GB) needed.
        "memoryGb": 3.14, # Memory (GB) needed.
        "volumes": [ # User specified volumes.
          { # Volumes mounted within the app container. Only applicable for VM runtimes.
            "name": "A String", # Unique name for the volume.
            "sizeGb": 3.14, # Volume size in gigabytes.
            "volumeType": "A String", # Underlying volume type, e.g. 'tmpfs'.
          },
        ],
      },
      "runtime": "A String", # Desired runtime. Example: python27.
      "runtimeApiVersion": "A String", # The version of the API in the given runtime environment. Please see the app.yaml reference for valid values at https://cloud.google.com/appengine/docs/standard/<language>/config/appref
      "runtimeMainExecutablePath": "A String", # The path or name of the app's main executable.
      "servingStatus": "A String", # Current serving status of this version. Only the versions with a SERVING status create instances and can be billed.SERVING_STATUS_UNSPECIFIED is an invalid value. Defaults to SERVING.
      "threadsafe": True or False, # Whether multiple requests can be dispatched to this version at once.
      "vm": True or False, # Whether to deploy this version in a container on a virtual machine.
    }

      mask: string, Standard field mask for the set of fields to be updated.
      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). The error model is designed to be: # The error result of the operation in case of failure or cancellation.
          # Simple to use and understand for most users
          # Flexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:
          # Partial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.
          # Workflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.
          # Batch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.
          # Asynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.
          # Logging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.
        "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 have the format of operations/some/unique/name.
      "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.
      },
    }