AuditData

App Engine admin service audit log.

JSON representation
{

  // Union field method can be only one of the following:
  "updateService": {
    object(UpdateServiceMethod)
  },
  "createVersion": {
    object(CreateVersionMethod)
  }
  // End of list of possible types for union field method.
}
Fields
Union field method. Detailed information about methods that require it. Does not include simple Get, List or Delete methods because all significant information (resource name, number of returned elements for List operations) is already included in parent audit log message. method can be only one of the following:
updateService

object(UpdateServiceMethod)

Detailed information about services.patch call.

createVersion

object(CreateVersionMethod)

Detailed information about versions.create call.

UpdateServiceMethod

Detailed information about services.patch call.

JSON representation
{
  "request": {
    object(UpdateServiceRequest)
  }
}
Fields
request

object(UpdateServiceRequest)

Update service request.

UpdateServiceRequest

Request message for Services.UpdateService.

JSON representation
{
  "name": string,
  "service": {
    object(Service)
  },
  "updateMask": string,
  "migrateTraffic": boolean
}
Fields
name

string

Name of the resource to update. Example: apps/myapp/services/default.

service

object(Service)

A Service resource containing the updated service. Only fields set in the field mask will be updated.

updateMask

string (FieldMask format)

Standard field mask for the set of fields to be updated.

A comma-separated list of fully qualified names of fields. Example: "user.displayName,photo".

migrateTraffic

boolean

Set to true to gradually shift traffic to one or more versions that you specify. By default, traffic is shifted immediately. For gradual traffic migration, the target versions must be located within instances that are configured for both warmup requests and automatic scaling. You must specify the shardBy field in the Service resource. Gradual traffic migration is not supported in the App Engine flexible environment. For examples, see Migrating and Splitting Traffic.

Service

A Service resource is a logical component of an application that can share state and communicate in a secure fashion with other services. For example, an application that handles customer requests might include separate services to handle tasks such as backend data analysis or API requests from mobile devices. Each service has a collection of versions that define a specific set of code used to implement the functionality of that service.

JSON representation
{
  "name": string,
  "id": string,
  "split": {
    object(TrafficSplit)
  }
}
Fields
name

string

Full path to the Service resource in the API. Example: apps/myapp/services/default.

Note: This field is used in responses only. Any value specified here in a request is ignored.

id

string

Relative name of the service within the application. Example: default.

Note: This field is used in responses only. Any value specified here in a request is ignored.

split

object(TrafficSplit)

Mapping that defines fractional HTTP traffic diversion to different versions within the service.

TrafficSplit

Traffic routing configuration for versions within a single service. Traffic splits define how traffic directed to the service is assigned to versions.

JSON representation
{
  "shardBy": enum(ShardBy),
  "allocations": {
    string: number,
    ...
  }
}
Fields
shardBy

enum(ShardBy)

Mechanism used to determine which version a request is sent to. The traffic selection algorithm will be stable for either type until allocations are changed.

allocations

map (key: string, value: number)

Mapping from version IDs within the service to fractional (0.000, 1] allocations of traffic for that version. Each version can be specified only once, but some versions in the service may not have any traffic allocation. Services that have traffic allocated cannot be deleted until either the service is deleted or their traffic allocation is removed. Allocations must sum to 1. Up to two decimal place precision is supported for IP-based splits and up to three decimal places is supported for cookie-based splits.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

CreateVersionMethod

Detailed information about versions.create call.

JSON representation
{
  "request": {
    object(CreateVersionRequest)
  }
}
Fields
request

object(CreateVersionRequest)

Create version request.

CreateVersionRequest

Request message for Versions.CreateVersion.

JSON representation
{
  "parent": string,
  "version": {
    object(Version)
  }
}
Fields
parent

string

Name of the parent resource to create this version under. Example: apps/myapp/services/default.

version

object(Version)

Application deployment configuration.

Version

A Version resource is a specific set of source code and configuration files that are deployed into a service.

JSON representation
{
  "name": string,
  "id": string,
  "inboundServices": [
    enum(InboundServiceType)
  ],
  "instanceClass": string,
  "network": {
    object(Network)
  },
  "zones": [
    string
  ],
  "resources": {
    object(Resources)
  },
  "runtime": string,
  "runtimeChannel": string,
  "threadsafe": boolean,
  "vm": boolean,
  "betaSettings": {
    string: string,
    ...
  },
  "env": string,
  "servingStatus": enum(ServingStatus),
  "createdBy": string,
  "createTime": string,
  "diskUsageBytes": string,
  "runtimeApiVersion": string,
  "runtimeMainExecutablePath": string,
  "handlers": [
    {
      object(UrlMap)
    }
  ],
  "errorHandlers": [
    {
      object(ErrorHandler)
    }
  ],
  "libraries": [
    {
      object(Library)
    }
  ],
  "apiConfig": {
    object(ApiConfigHandler)
  },
  "envVariables": {
    string: string,
    ...
  },
  "defaultExpiration": string,
  "healthCheck": {
    object(HealthCheck)
  },
  "readinessCheck": {
    object(ReadinessCheck)
  },
  "livenessCheck": {
    object(LivenessCheck)
  },
  "nobuildFilesRegex": string,
  "deployment": {
    object(Deployment)
  },
  "versionUrl": string,
  "endpointsApiService": {
    object(EndpointsApiService)
  },
  "entrypoint": {
    object(Entrypoint)
  },

  // Union field scaling can be only one of the following:
  "automaticScaling": {
    object(AutomaticScaling)
  },
  "basicScaling": {
    object(BasicScaling)
  },
  "manualScaling": {
    object(ManualScaling)
  }
  // End of list of possible types for union field scaling.
}
Fields
name

string

Full path to the Version resource in the API. Example: apps/myapp/services/default/versions/v1.

Note: This field is used in responses only. Any value specified here in a request is ignored.

id

string

Relative name of the version within the service. Example: v1. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: "default", "latest", and any name with the prefix "ah-".

inboundServices[]

enum(InboundServiceType)

Before an application can receive email or XMPP messages, the application must be configured to enable the service.

instanceClass

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_1G

Defaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.

network

object(Network)

Extra network settings. Only applicable in the App Engine flexible environment.

zones[]

string

The Google Compute Engine zones that are supported by this version in the App Engine flexible environment. Deprecated.

resources

object(Resources)

Machine resources for this version. Only applicable in the App Engine flexible environment.

runtime

string

Desired runtime. Example: python27.

runtimeChannel

string

The channel of the runtime to use. Only available for some runtimes. Defaults to the default channel.

threadsafe

boolean

Whether multiple requests can be dispatched to this version at once.

vm

boolean

Whether to deploy this version in a container on a virtual machine.

betaSettings

map (key: string, value: string)

Metadata settings that are supplied to this version to enable beta runtime features.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

env

string

App Engine execution environment for this version.

Defaults to standard.

servingStatus

enum(ServingStatus)

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.

createdBy

string

Email address of the user who created this version.

Note: This field is used in responses only. Any value specified here in a request is ignored.

createTime

string (Timestamp format)

Time that this version was created.

A timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: "2014-10-02T15:01:23.045123456Z".

Note: This field is used in responses only. Any value specified here in a request is ignored.

diskUsageBytes

string (int64 format)

Total size in bytes of all the files that are included in this version and currently hosted on the App Engine disk.

Note: This field is used in responses only. Any value specified here in a request is ignored.

runtimeApiVersion

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//config/appref

runtimeMainExecutablePath

string

The path or name of the app's main executable.

handlers[]

object(UrlMap)

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.

errorHandlers[]

object(ErrorHandler)

Custom static error pages. Limited to 10KB per page.

Only returned in GET requests if view=FULL is set.

libraries[]

object(Library)

Configuration for third-party Python runtime libraries that are required by the application.

Only returned in GET requests if view=FULL is set.

apiConfig

object(ApiConfigHandler)

Serving configuration for Cloud Endpoints.

Only returned in GET requests if view=FULL is set.

envVariables

map (key: string, value: string)

Environment variables available to the application.

Only returned in GET requests if view=FULL is set.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

defaultExpiration

string (Duration format)

Duration that static files should be cached by web proxies and browsers. Only applicable if the corresponding StaticFilesHandler does not specify its own expiration time.

Only returned in GET requests if view=FULL is set.

A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

healthCheck

object(HealthCheck)

Configures health checking for instances. Unhealthy instances are stopped and replaced with new instances. Only applicable in the App Engine flexible environment.

Only returned in GET requests if view=FULL is set.

readinessCheck

object(ReadinessCheck)

Configures readiness health checking for instances. Unhealthy instances are not put into the backend traffic rotation.

Only returned in GET requests if view=FULL is set.

livenessCheck

object(LivenessCheck)

Configures liveness health checking for instances. Unhealthy instances are stopped and replaced with new instances

Only returned in GET requests if view=FULL is set.

nobuildFilesRegex

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.

deployment

object(Deployment)

Code and application artifacts that make up this version.

Only returned in GET requests if view=FULL is set.

versionUrl

string

Serving URL for this version. Example: "https://myversion-dot-myservice-dot-myapp.appspot.com"

Note: This field is used in responses only. Any value specified here in a request is ignored.

endpointsApiService

object(EndpointsApiService)

Cloud Endpoints configuration.

If endpointsApiService is set, the Cloud Endpoints Extensible Service Proxy will be provided to serve the API implemented by the app.

entrypoint

object(Entrypoint)

The entrypoint for the application.

Union field scaling. Controls how instances are created.

Defaults to AutomaticScaling. scaling can be only one of the following:

automaticScaling

object(AutomaticScaling)

Automatic scaling is based on request rate, response latencies, and other application metrics.

basicScaling

object(BasicScaling)

A service 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.

manualScaling

object(ManualScaling)

A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.

AutomaticScaling

Automatic scaling is based on request rate, response latencies, and other application metrics.

JSON representation
{
  "coolDownPeriod": string,
  "cpuUtilization": {
    object(CpuUtilization)
  },
  "maxConcurrentRequests": number,
  "maxIdleInstances": number,
  "maxTotalInstances": number,
  "maxPendingLatency": string,
  "minIdleInstances": number,
  "minTotalInstances": number,
  "minPendingLatency": string,
  "requestUtilization": {
    object(RequestUtilization)
  },
  "diskUtilization": {
    object(DiskUtilization)
  },
  "networkUtilization": {
    object(NetworkUtilization)
  },
  "standardSchedulerSettings": {
    object(StandardSchedulerSettings)
  }
}
Fields
coolDownPeriod

string (Duration format)

The time period that the 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.

A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

cpuUtilization

object(CpuUtilization)

Target scaling by CPU usage.

maxConcurrentRequests

number

Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.

Defaults to a runtime-specific value.

maxIdleInstances

number

Maximum number of idle instances that should be maintained for this version.

maxTotalInstances

number

Maximum number of instances that should be started to handle requests for this version.

maxPendingLatency

string (Duration format)

Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.

A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

minIdleInstances

number

Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a service.

minTotalInstances

number

Minimum number of running instances that should be maintained for this version.

minPendingLatency

string (Duration format)

Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.

A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

requestUtilization

object(RequestUtilization)

Target scaling by request utilization.

diskUtilization

object(DiskUtilization)

Target scaling by disk usage.

networkUtilization

object(NetworkUtilization)

Target scaling by network usage.

standardSchedulerSettings

object(StandardSchedulerSettings)

Scheduler settings for standard environment.

CpuUtilization

Target scaling by CPU usage.

JSON representation
{
  "aggregationWindowLength": string,
  "targetUtilization": number
}
Fields
aggregationWindowLength

string (Duration format)

Period of time over which CPU utilization is calculated.

A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

targetUtilization

number

Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.

RequestUtilization

Target scaling by request utilization. Only applicable in the App Engine flexible environment.

JSON representation
{
  "targetRequestCountPerSecond": number,
  "targetConcurrentRequests": number
}
Fields
targetRequestCountPerSecond

number

Target requests per second.

targetConcurrentRequests

number

Target number of concurrent requests.

DiskUtilization

Target scaling by disk usage. Only applicable in the App Engine flexible environment.

JSON representation
{
  "targetWriteBytesPerSecond": number,
  "targetWriteOpsPerSecond": number,
  "targetReadBytesPerSecond": number,
  "targetReadOpsPerSecond": number
}
Fields
targetWriteBytesPerSecond

number

Target bytes written per second.

targetWriteOpsPerSecond

number

Target ops written per second.

targetReadBytesPerSecond

number

Target bytes read per second.

targetReadOpsPerSecond

number

Target ops read per seconds.

NetworkUtilization

Target scaling by network usage. Only applicable in the App Engine flexible environment.

JSON representation
{
  "targetSentBytesPerSecond": number,
  "targetSentPacketsPerSecond": number,
  "targetReceivedBytesPerSecond": number,
  "targetReceivedPacketsPerSecond": number
}
Fields
targetSentBytesPerSecond

number

Target bytes sent per second.

targetSentPacketsPerSecond

number

Target packets sent per second.

targetReceivedBytesPerSecond

number

Target bytes received per second.

targetReceivedPacketsPerSecond

number

Target packets received per second.

StandardSchedulerSettings

Scheduler settings for standard environment.

JSON representation
{
  "targetCpuUtilization": number,
  "targetThroughputUtilization": number,
  "minInstances": number,
  "maxInstances": number
}
Fields
targetCpuUtilization

number

Target CPU utilization ratio to maintain when scaling.

targetThroughputUtilization

number

Target throughput utilization ratio to maintain when scaling

minInstances

number

Minimum number of instances to run for this version. Set to zero to disable minInstances configuration.

maxInstances

number

Maximum number of instances to run for this version. Set to zero to disable maxInstances configuration.

BasicScaling

A service 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.

JSON representation
{
  "idleTimeout": string,
  "maxInstances": number
}
Fields
idleTimeout

string (Duration format)

Duration of time after the last request that an instance must wait before the instance is shut down.

A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

maxInstances

number

Maximum number of instances to create for this version.

ManualScaling

A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.

JSON representation
{
  "instances": number
}
Fields
instances

number

Number of instances to assign to the service at the start. This number can later be altered by using the Modules API set_num_instances() function.

Network

Extra network settings. Only applicable in the App Engine flexible environment.

JSON representation
{
  "forwardedPorts": [
    string
  ],
  "instanceTag": string,
  "name": string,
  "subnetworkName": string,
  "sessionAffinity": boolean
}
Fields
forwardedPorts[]

string

List of ports, or port pairs, to forward from the virtual machine to the application container. Only applicable in the App Engine flexible environment.

instanceTag

string

Tag to apply to the instance during creation. Only applicable in the App Engine flexible environment.

name

string

Google Compute Engine network where the virtual machines are created. Specify the short name, not the resource path.

Defaults to default.

subnetworkName

string

Google Cloud Platform sub-network where the virtual machines are created. Specify the short name, not the resource path.

If a subnetwork name is specified, a network name will also be required unless it is for the default network.

  • If the network that the instance is being created in is a Legacy network, then the IP address is allocated from the IPv4Range.
  • If the network that the instance is being created in is an auto Subnet Mode Network, then only network name should be specified (not the subnetworkName) and the IP address is created from the IPCidrRange of the subnetwork that exists in that zone for that network.
  • If the network that the instance is being created in is a custom Subnet Mode Network, then the subnetworkName must be specified and the IP address is created from the IPCidrRange of the subnetwork.

If specified, the subnetwork must exist in the same region as the App Engine flexible environment application.

sessionAffinity

boolean

Enable session affinity. Only applicable in the App Engine flexible environment.

Resources

Machine resources for a version.

JSON representation
{
  "cpu": number,
  "diskGb": number,
  "memoryGb": number,
  "volumes": [
    {
      object(Volume)
    }
  ]
}
Fields
cpu

number

Number of CPU cores needed.

diskGb

number

Disk size (GB) needed.

memoryGb

number

Memory (GB) needed.

volumes[]

object(Volume)

User specified volumes.

Volume

Volumes mounted within the app container. Only applicable in the App Engine flexible environment.

JSON representation
{
  "name": string,
  "volumeType": string,
  "sizeGb": number
}
Fields
name

string

Unique name for the volume.

volumeType

string

Underlying volume type, e.g. 'tmpfs'.

sizeGb

number

Volume size in gigabytes.

UrlMap

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.

JSON representation
{
  "urlRegex": string,
  "securityLevel": enum(SecurityLevel),
  "login": enum(LoginRequirement),
  "authFailAction": enum(AuthFailAction),
  "redirectHttpResponseCode": enum(RedirectHttpResponseCode),

  // Union field handler_type can be only one of the following:
  "staticFiles": {
    object(StaticFilesHandler)
  },
  "script": {
    object(ScriptHandler)
  },
  "apiEndpoint": {
    object(ApiEndpointHandler)
  }
  // End of list of possible types for union field handler_type.
}
Fields
urlRegex

string

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.

securityLevel

enum(SecurityLevel)

Security (HTTPS) enforcement for this URL.

login

enum(LoginRequirement)

Level of login required to access this resource. Not supported for Node.js in the App Engine standard environment.

authFailAction

enum(AuthFailAction)

Action to take when users access resources that require authentication. Defaults to redirect.

redirectHttpResponseCode

enum(RedirectHttpResponseCode)

30x code to use when performing redirects for the secure field. Defaults to 302.

Union field handler_type. Type of handler for this URL pattern. handler_type can be only one of the following:
staticFiles

object(StaticFilesHandler)

Returns the contents of a file, such as an image, as the response.

script

object(ScriptHandler)

Executes a script to handle the requests that match this URL pattern. Only the auto value is supported for Node.js in the App Engine standard environment, for example "script": "auto".

apiEndpoint

object(ApiEndpointHandler)

Uses API Endpoints to handle requests.

StaticFilesHandler

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.

JSON representation
{
  "path": string,
  "uploadPathRegex": string,
  "httpHeaders": {
    string: string,
    ...
  },
  "mimeType": string,
  "expiration": string,
  "requireMatchingFile": boolean,
  "applicationReadable": boolean
}
Fields
path

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.

uploadPathRegex

string

Regular expression that matches the file paths for all files that should be referenced by this handler.

httpHeaders

map (key: string, value: string)

HTTP headers to use for all responses from these URLs.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

mimeType

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.

expiration

string (Duration format)

Time a static file served by this handler should be cached by web proxies and browsers.

A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

requireMatchingFile

boolean

Whether this handler should match the request if the file referenced by the handler does not exist.

applicationReadable

boolean

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.

ScriptHandler

Executes a script to handle the request that matches the URL pattern.

JSON representation
{
  "scriptPath": string
}
Fields
scriptPath

string

Path to the script from the application root directory.

ErrorHandler

Custom static error page to be served when an error occurs.

JSON representation
{
  "errorCode": enum(ErrorCode),
  "staticFile": string,
  "mimeType": string
}
Fields
errorCode

enum(ErrorCode)

Error condition this handler applies to.

staticFile

string

Static file content to be served for this error.

mimeType

string

MIME type of file. Defaults to text/html.

Library

Third-party Python runtime library that is required by the application.

JSON representation
{
  "name": string,
  "version": string
}
Fields
name

string

Name of the library. Example: "django".

version

string

Version of the library to select, or "latest".

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.

JSON representation
{
  "disableHealthCheck": boolean,
  "host": string,
  "healthyThreshold": number,
  "unhealthyThreshold": number,
  "restartThreshold": number,
  "checkInterval": string,
  "timeout": string
}
Fields
disableHealthCheck

boolean

Whether to explicitly disable health checks for this instance.

host

string

Host header to send when performing an HTTP health check. Example: "myapp.appspot.com"

healthyThreshold

number (uint32 format)

Number of consecutive successful health checks required before receiving traffic.

unhealthyThreshold

number (uint32 format)

Number of consecutive failed health checks required before removing traffic.

restartThreshold

number (uint32 format)

Number of consecutive failed health checks required before an instance is restarted.

checkInterval

string (Duration format)

Interval between health checks.

A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

timeout

string (Duration format)

Time before the health check is considered failed.

A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

ReadinessCheck

Readiness checking configuration for VM instances. Unhealthy instances are removed from traffic rotation.

JSON representation
{
  "path": string,
  "host": string,
  "failureThreshold": number,
  "successThreshold": number,
  "checkInterval": string,
  "timeout": string,
  "appStartTimeout": string
}
Fields
path

string

The request path.

host

string

Host header to send when performing a HTTP Readiness check. Example: "myapp.appspot.com"

failureThreshold

number (uint32 format)

Number of consecutive failed checks required before removing traffic.

successThreshold

number (uint32 format)

Number of consecutive successful checks required before receiving traffic.

checkInterval

string (Duration format)

Interval between health checks.

A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

timeout

string (Duration format)

Time before the check is considered failed.

A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

appStartTimeout

string (Duration format)

A maximum time limit on application initialization, measured from moment the application successfully replies to a healthcheck until it is ready to serve traffic.

A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

LivenessCheck

Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances.

JSON representation
{
  "path": string,
  "host": string,
  "failureThreshold": number,
  "successThreshold": number,
  "checkInterval": string,
  "timeout": string,
  "initialDelay": string
}
Fields
path

string

The request path.

host

string

Host header to send when performing a HTTP Liveness check. Example: "myapp.appspot.com"

failureThreshold

number (uint32 format)

Number of consecutive failed checks required before considering the VM unhealthy.

successThreshold

number (uint32 format)

Number of consecutive successful checks required before considering the VM healthy.

checkInterval

string (Duration format)

Interval between health checks.

A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

timeout

string (Duration format)

Time before the check is considered failed.

A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

initialDelay

string (Duration format)

The initial delay before starting to execute the checks.

A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

Deployment

Code and application artifacts used to deploy a version to App Engine.

JSON representation
{
  "files": {
    string: {
      object(FileInfo)
    },
    ...
  },
  "container": {
    object(ContainerInfo)
  },
  "zip": {
    object(ZipInfo)
  },
  "cloudBuildOptions": {
    object(CloudBuildOptions)
  }
}
Fields
files

map (key: string, value: object(FileInfo))

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.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

container

object(ContainerInfo)

The Docker image for the container that runs the version. Only applicable for instances running in the App Engine flexible environment.

zip

object(ZipInfo)

The zip file for this deployment, if this is a zip deployment.

cloudBuildOptions

object(CloudBuildOptions)

Options for any Google Cloud Build builds created as a part of this deployment.

These options will only be used if a new build is created, such as when deploying to the App Engine flexible environment using files or zip.

ContainerInfo

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.

JSON representation
{
  "image": string
}
Fields
image

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"

ZipInfo

The zip file information for a zip deployment.

JSON representation
{
  "sourceUrl": string,
  "filesCount": number
}
Fields
sourceUrl

string

URL of the zip file to deploy from. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/<bucket>/<object>'.

filesCount

number

An estimate of the number of files in a zip for a zip deployment. If set, must be greater than or equal to the actual number of files. Used for optimizing performance; if not provided, deployment may be slow.

CloudBuildOptions

Options for the build operations performed as a part of the version deployment. Only applicable for App Engine flexible environment when creating a version using source code directly.

JSON representation
{
  "appYamlPath": string,
  "cloudBuildTimeout": string
}
Fields
appYamlPath

string

Path to the yaml file used in deployment, used to determine runtime configuration details.

Required for flexible environment builds.

See https://cloud.google.com/appengine/docs/standard/python/config/appref for more details.

cloudBuildTimeout

string (Duration format)

The Cloud Build timeout used as part of any dependent builds performed by version creation. Defaults to 10 minutes.

A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

EndpointsApiService

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

JSON representation
{
  "name": string,
  "configId": string,
  "rolloutStrategy": enum(RolloutStrategy),
  "disableTraceSampling": boolean
}
Fields
name

string

Endpoints service name which is the name of the "service" resource in the Service Management API. For example "myapi.endpoints.myproject.cloud.goog"

configId

string

Endpoints service configuration ID as specified by the Service Management API. For example "2016-09-19r1".

By default, the rollout strategy for Endpoints is RolloutStrategy.FIXED. This means that Endpoints starts up with a particular configuration ID. When a new configuration is rolled out, Endpoints must be given the new configuration ID. The configId field is used to give the configuration ID and is required in this case.

Endpoints also has a rollout strategy called RolloutStrategy.MANAGED. When using this, Endpoints fetches the latest configuration and does not need the configuration ID. In this case, configId must be omitted.

rolloutStrategy

enum(RolloutStrategy)

Endpoints rollout strategy. If FIXED, configId must be specified. If MANAGED, configId must be omitted.

disableTraceSampling

boolean

Enable or disable trace sampling. By default, this is set to false for enabled.

Entrypoint

The entrypoint for the application.

JSON representation
{
  "shell": string
}
Fields
shell

string

The format should be a shell command that can be fed to bash -c.