REST Resource: services.rollouts

Stay organized with collections Save and categorize content based on your preferences.

Resource: Rollout

A rollout resource that defines how service configuration versions are pushed to control plane systems. Typically, you create a new version of the service config, and then create a Rollout to push the service config.

JSON representation
  "rolloutId": string,
  "createTime": string,
  "createdBy": string,
  "status": enum (RolloutStatus),
  "serviceName": string,

  // Union field strategy can be only one of the following:
  "trafficPercentStrategy": {
    object (TrafficPercentStrategy)
  "deleteServiceStrategy": {
    object (DeleteServiceStrategy)
  // End of list of possible types for union field strategy.


Optional. Unique identifier of this Rollout. Must be no longer than 63 characters and only lower case letters, digits, '.', '_' and '-' are allowed.

If not specified by client, the server will generate one. The generated id will have the form of , where "date" is the create date in ISO 8601 format. "revision number" is a monotonically increasing positive number that is reset every day for each service. An example of the generated rolloutId is '2016-02-16r1'


string (Timestamp format)

Creation time of the rollout. Readonly.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".



The user who created the Rollout. Readonly.


enum (RolloutStatus)

The status of this rollout. Readonly. In case of a failed rollout, the system will automatically rollback to the current Rollout version. Readonly.



The name of the service associated with this Rollout.

Union field strategy. Strategy that defines which versions of service configurations should be pushed and how they should be used at runtime. strategy can be only one of the following:

object (TrafficPercentStrategy)

Google Service Control selects service configurations based on traffic percentage.


object (DeleteServiceStrategy)

The strategy associated with a rollout to delete a ManagedService. Readonly.


Status of a Rollout.

IN_PROGRESS The Rollout is in progress.
SUCCESS The Rollout has completed successfully.
CANCELLED The Rollout has been cancelled. This can happen if you have overlapping Rollout pushes, and the previous ones will be cancelled.
FAILED The Rollout has failed and the rollback attempt has failed too.
PENDING The Rollout has not started yet and is pending for execution.
FAILED_ROLLED_BACK The Rollout has failed and rolled back to the previous successful Rollout.


Strategy that specifies how clients of Google Service Controller want to send traffic to use different config versions. This is generally used by API proxy to split traffic based on your configured percentage for each config version.

One example of how to gradually rollout a new service configuration using this strategy: Day 1

Rollout {
  id: ""
  trafficPercentStrategy {
    percentages: {
      "": 70.00
      "": 30.00

Day 2

Rollout {
  id: ""
  trafficPercentStrategy: {
    percentages: {
      "": 100.00
JSON representation
  "percentages": {
    string: number,

map (key: string, value: number)

Maps service configuration IDs to their corresponding traffic percentage. key is the service configuration ID, Value is the traffic percentage which must be greater than 0.0 and the sum must equal to 100.0.

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


Strategy used to delete a service. This strategy is a placeholder only used by the system generated rollout to delete a service.



Creates a new service configuration rollout.


Gets a service configuration rollout.


Lists the history of the service configuration rollouts for a managed service, from the newest to the oldest.