all: autogenerated update (2019-04-23)

Update:
- alertcenter/v1beta1
- cloudasset/v1
- cloudasset/v1beta1
- cloudbuild/v1alpha1
- clouderrorreporting/v1beta1
- cloudfunctions/v1
- cloudfunctions/v1beta2
- cloudresourcemanager/v1
- cloudresourcemanager/v1beta1
- cloudtasks/v2
- compute/v0.alpha
- compute/v0.beta
- compute/v1
- container/v1beta1
- dns/v1
- dns/v1beta2
- dns/v2beta1
- drive/v2
- drive/v3
- file/v1
- file/v1beta1
- firebasehosting/v1beta1
- healthcare/v1alpha
- healthcare/v1alpha2
- healthcare/v1beta1
- pubsub/v1
- pubsub/v1beta2
- remotebuildexecution/v1alpha
- remotebuildexecution/v2
- runtimeconfig/v1beta1
- securitycenter/v1
- securitycenter/v1beta1
- spanner/v1
- storagetransfer/v1
- youtube/v3
diff --git a/alertcenter/v1beta1/alertcenter-api.json b/alertcenter/v1beta1/alertcenter-api.json
index 0ed509a..fb785cd 100644
--- a/alertcenter/v1beta1/alertcenter-api.json
+++ b/alertcenter/v1beta1/alertcenter-api.json
@@ -182,7 +182,7 @@
               "type": "string"
             },
             "orderBy": {
-              "description": "Optional. The sort order of the list results.\nIf not specified results may be returned in arbitrary order.\nYou can sort the results in descending order based on the creation\ntimestamp using `order_by=\"create_time desc\"`.\nCurrently, only sorting by `create_time desc` is supported.",
+              "description": "Optional. The sort order of the list results.\nIf not specified results may be returned in arbitrary order.\nYou can sort the results in descending order based on the creation\ntimestamp using `order_by=\"create_time desc\"`.\nCurrently, supported sorting are `create_time asc`, `create_time desc`,\n`update_time desc`",
               "location": "query",
               "type": "string"
             },
@@ -357,7 +357,7 @@
       }
     }
   },
-  "revision": "20190413",
+  "revision": "20190418",
   "rootUrl": "https://alertcenter.googleapis.com/",
   "schemas": {
     "AccountWarning": {
@@ -489,6 +489,11 @@
         "type": {
           "description": "Required. The type of the alert.\nThis is output only after alert is created.\nFor a list of available alert types see\n[G Suite Alert types](/admin-sdk/alertcenter/reference/alert-types).",
           "type": "string"
+        },
+        "updateTime": {
+          "description": "Output only. The time this alert was last updated.",
+          "format": "google-datetime",
+          "type": "string"
         }
       },
       "type": "object"
diff --git a/alertcenter/v1beta1/alertcenter-gen.go b/alertcenter/v1beta1/alertcenter-gen.go
index 473061e..274c8a5 100644
--- a/alertcenter/v1beta1/alertcenter-gen.go
+++ b/alertcenter/v1beta1/alertcenter-gen.go
@@ -332,6 +332,9 @@
 	// [G Suite Alert types](/admin-sdk/alertcenter/reference/alert-types).
 	Type string `json:"type,omitempty"`
 
+	// UpdateTime: Output only. The time this alert was last updated.
+	UpdateTime string `json:"updateTime,omitempty"`
+
 	// ServerResponse contains the HTTP response code and headers from the
 	// server.
 	googleapi.ServerResponse `json:"-"`
@@ -1654,7 +1657,9 @@
 // You can sort the results in descending order based on the
 // creation
 // timestamp using `order_by="create_time desc".
-// Currently, only sorting by `create_time desc` is supported.
+// Currently, supported sorting are `create_time asc`, `create_time
+// desc`,
+// `update_time desc`
 func (c *AlertsListCall) OrderBy(orderBy string) *AlertsListCall {
 	c.urlParams_.Set("orderBy", orderBy)
 	return c
@@ -1791,7 +1796,7 @@
 	//       "type": "string"
 	//     },
 	//     "orderBy": {
-	//       "description": "Optional. The sort order of the list results.\nIf not specified results may be returned in arbitrary order.\nYou can sort the results in descending order based on the creation\ntimestamp using `order_by=\"create_time desc\"`.\nCurrently, only sorting by `create_time desc` is supported.",
+	//       "description": "Optional. The sort order of the list results.\nIf not specified results may be returned in arbitrary order.\nYou can sort the results in descending order based on the creation\ntimestamp using `order_by=\"create_time desc\"`.\nCurrently, supported sorting are `create_time asc`, `create_time desc`,\n`update_time desc`",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
diff --git a/cloudasset/v1/cloudasset-api.json b/cloudasset/v1/cloudasset-api.json
index 27ce0f5..ec373cb 100644
--- a/cloudasset/v1/cloudasset-api.json
+++ b/cloudasset/v1/cloudasset-api.json
@@ -145,7 +145,7 @@
           ],
           "parameters": {
             "assetNames": {
-              "description": "A list of the full names of the assets. For example:\n`//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1`.\nSee [Resource\nNames](https://cloud.google.com/apis/design/resource_names#full_resource_name)\nand [Resource Name\nFormat](https://cloud.google.com/resource-manager/docs/cloud-asset-inventory/resource-name-format)\nfor more info.\n\nThe request becomes a no-op if the asset name list is empty, and the max\nsize of the asset name list is 100 in one request.",
+              "description": "A list of the full names of the assets. For example:\n`//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1`.\nSee [Resource\nNames](https://cloud.google.com/apis/design/resource_names#full_resource_name)\nand [Resource Name Format](https://cloud.google.com/resource-manager/docs/cloud-asset-inventory/resource-name-format)\nfor more info.\n\nThe request becomes a no-op if the asset name list is empty, and the max\nsize of the asset name list is 100 in one request.",
               "location": "query",
               "repeated": true,
               "type": "string"
@@ -219,7 +219,7 @@
       }
     }
   },
-  "revision": "20190412",
+  "revision": "20190327",
   "rootUrl": "https://cloudasset.googleapis.com/",
   "schemas": {
     "Asset": {
@@ -313,7 +313,7 @@
       "properties": {
         "condition": {
           "$ref": "Expr",
-          "description": "The condition that is associated with this binding.\nNOTE: An unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
+          "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
         },
         "members": {
           "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n   on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n   who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n   account. For example, `alice@gmail.com` .\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n   account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n   For example, `admins@example.com`.\n\n\n* `domain:{domain}`: The G Suite domain (primary) that represents all the\n   users of that domain. For example, `google.com` or `example.com`.\n\n",
@@ -334,7 +334,7 @@
       "id": "ExportAssetsRequest",
       "properties": {
         "assetTypes": {
-          "description": "A list of asset types of which to take a snapshot for. For example:\n\"compute.googleapis.com/Disk\". If specified, only matching assets will be\nreturned. See [Introduction to Cloud Asset\nInventory](https://cloud.google.com/resource-manager/docs/cloud-asset-inventory/overview)\nfor all supported asset types.",
+          "description": "A list of asset types of which to take a snapshot for. For example:\n\"compute.googleapis.com/Disk\". If specified, only matching assets will be returned.\nSee [Introduction to Cloud Asset\nInventory](https://cloud.google.com/resource-manager/docs/cloud-asset-inventory/overview)\nfor all supported asset types.",
           "items": {
             "type": "string"
           },
@@ -396,10 +396,6 @@
         "uri": {
           "description": "The uri of the Cloud Storage object. It's the same uri that is used by\ngsutil. For example: \"gs://bucket_name/object_name\". See [Viewing and\nEditing Object\nMetadata](https://cloud.google.com/storage/docs/viewing-editing-metadata)\nfor more information.",
           "type": "string"
-        },
-        "uriPrefix": {
-          "description": "The uri prefix of all generated Cloud Storage objects. For example:\n\"gs://bucket_name/object_name_prefix\". Each object uri is in format:\n\"gs://bucket_name/object_name_prefix/\u003casset type\u003e/\u003cshard number\u003e and only\ncontains assets for that type. \u003cshard number\u003e starts from 0. For example:\n\"gs://bucket_name/object_name_prefix/compute.googleapis.com/Disk/0\" is\nthe first shard of output objects containing all\ncompute.googleapis.com/Disk assets. An INVALID_ARGUMENT error will be\nreturned if file with the same name \"gs://bucket_name/object_name_prefix\"\nalready exists.",
-          "type": "string"
         }
       },
       "type": "object"
diff --git a/cloudasset/v1/cloudasset-gen.go b/cloudasset/v1/cloudasset-gen.go
index 8c638d8..db41a82 100644
--- a/cloudasset/v1/cloudasset-gen.go
+++ b/cloudasset/v1/cloudasset-gen.go
@@ -389,7 +389,7 @@
 // Binding: Associates `members` with a `role`.
 type Binding struct {
 	// Condition: The condition that is associated with this binding.
-	// NOTE: An unsatisfied condition will not allow user access via
+	// NOTE: an unsatisfied condition will not allow user access via
 	// current
 	// binding. Different bindings, including their conditions, are
 	// examined
@@ -463,8 +463,8 @@
 	// AssetTypes: A list of asset types of which to take a snapshot for.
 	// For example:
 	// "compute.googleapis.com/Disk". If specified, only matching assets
-	// will be
-	// returned. See [Introduction to Cloud
+	// will be returned.
+	// See [Introduction to Cloud
 	// Asset
 	// Inventory](https://cloud.google.com/resource-manager/docs/cloud-
 	// asset-inventory/overview)
@@ -587,25 +587,6 @@
 	// for more information.
 	Uri string `json:"uri,omitempty"`
 
-	// UriPrefix: The uri prefix of all generated Cloud Storage objects. For
-	// example:
-	// "gs://bucket_name/object_name_prefix". Each object uri is in
-	// format:
-	// "gs://bucket_name/object_name_prefix/<asset type>/<shard number> and
-	// only
-	// contains assets for that type. <shard number> starts from 0. For
-	// example:
-	// "gs://bucket_name/object_name_prefix/compute.googleapis.com/D
-	// isk/0" is
-	// the first shard of output objects containing
-	// all
-	// compute.googleapis.com/Disk assets. An INVALID_ARGUMENT error will
-	// be
-	// returned if file with the same name
-	// "gs://bucket_name/object_name_prefix"
-	// already exists.
-	UriPrefix string `json:"uriPrefix,omitempty"`
-
 	// ForceSendFields is a list of field names (e.g. "Uri") to
 	// unconditionally include in API requests. By default, fields with
 	// empty values are omitted from API requests. However, any non-pointer,
@@ -1290,10 +1271,9 @@
 // [Resource
 // Names](https://cloud.google.com/apis/design/resource_names#f
 // ull_resource_name)
-// and [Resource
-// Name
-// Format](https://cloud.google.com/resource-manager/docs/cloud-asse
-// t-inventory/resource-name-format)
+// and [Resource Name
+// Format](https://cloud.google.com/resource-manager/docs/cloud-asset-inv
+// entory/resource-name-format)
 // for more info.
 //
 // The request becomes a no-op if the asset name list is empty, and the
@@ -1440,7 +1420,7 @@
 	//   ],
 	//   "parameters": {
 	//     "assetNames": {
-	//       "description": "A list of the full names of the assets. For example:\n`//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1`.\nSee [Resource\nNames](https://cloud.google.com/apis/design/resource_names#full_resource_name)\nand [Resource Name\nFormat](https://cloud.google.com/resource-manager/docs/cloud-asset-inventory/resource-name-format)\nfor more info.\n\nThe request becomes a no-op if the asset name list is empty, and the max\nsize of the asset name list is 100 in one request.",
+	//       "description": "A list of the full names of the assets. For example:\n`//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1`.\nSee [Resource\nNames](https://cloud.google.com/apis/design/resource_names#full_resource_name)\nand [Resource Name Format](https://cloud.google.com/resource-manager/docs/cloud-asset-inventory/resource-name-format)\nfor more info.\n\nThe request becomes a no-op if the asset name list is empty, and the max\nsize of the asset name list is 100 in one request.",
 	//       "location": "query",
 	//       "repeated": true,
 	//       "type": "string"
diff --git a/cloudasset/v1beta1/cloudasset-api.json b/cloudasset/v1beta1/cloudasset-api.json
index caa3b23..bfd0ca4 100644
--- a/cloudasset/v1beta1/cloudasset-api.json
+++ b/cloudasset/v1beta1/cloudasset-api.json
@@ -400,7 +400,7 @@
       }
     }
   },
-  "revision": "20190412",
+  "revision": "20190327",
   "rootUrl": "https://cloudasset.googleapis.com/",
   "schemas": {
     "Asset": {
@@ -494,7 +494,7 @@
       "properties": {
         "condition": {
           "$ref": "Expr",
-          "description": "The condition that is associated with this binding.\nNOTE: An unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
+          "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
         },
         "members": {
           "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n   on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n   who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n   account. For example, `alice@gmail.com` .\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n   account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n   For example, `admins@example.com`.\n\n\n* `domain:{domain}`: The G Suite domain (primary) that represents all the\n   users of that domain. For example, `google.com` or `example.com`.\n\n",
@@ -577,10 +577,6 @@
         "uri": {
           "description": "The uri of the Cloud Storage object. It's the same uri that is used by\ngsutil. For example: \"gs://bucket_name/object_name\". See [Viewing and\nEditing Object\nMetadata](https://cloud.google.com/storage/docs/viewing-editing-metadata)\nfor more information.",
           "type": "string"
-        },
-        "uriPrefix": {
-          "description": "The uri prefix of all generated Cloud Storage objects. For example:\n\"gs://bucket_name/object_name_prefix\". Each object uri is in format:\n\"gs://bucket_name/object_name_prefix/\u003casset type\u003e/\u003cshard number\u003e and only\ncontains assets for that type. \u003cshard number\u003e starts from 0. For example:\n\"gs://bucket_name/object_name_prefix/google.compute.disk/0\" is the first\nshard of output objects containing all google.compute.disk assets.\nAn INVALID_ARGUMENT error will be returned if file with the same name\n\"gs://bucket_name/object_name_prefix\" already exists.",
-          "type": "string"
         }
       },
       "type": "object"
diff --git a/cloudasset/v1beta1/cloudasset-gen.go b/cloudasset/v1beta1/cloudasset-gen.go
index 07326a3..8db9fbf 100644
--- a/cloudasset/v1beta1/cloudasset-gen.go
+++ b/cloudasset/v1beta1/cloudasset-gen.go
@@ -437,7 +437,7 @@
 // Binding: Associates `members` with a `role`.
 type Binding struct {
 	// Condition: The condition that is associated with this binding.
-	// NOTE: An unsatisfied condition will not allow user access via
+	// NOTE: an unsatisfied condition will not allow user access via
 	// current
 	// binding. Different bindings, including their conditions, are
 	// examined
@@ -635,22 +635,6 @@
 	// for more information.
 	Uri string `json:"uri,omitempty"`
 
-	// UriPrefix: The uri prefix of all generated Cloud Storage objects. For
-	// example:
-	// "gs://bucket_name/object_name_prefix". Each object uri is in
-	// format:
-	// "gs://bucket_name/object_name_prefix/<asset type>/<shard number> and
-	// only
-	// contains assets for that type. <shard number> starts from 0. For
-	// example:
-	// "gs://bucket_name/object_name_prefix/google.compute.disk/0" is the
-	// first
-	// shard of output objects containing all google.compute.disk assets.
-	// An INVALID_ARGUMENT error will be returned if file with the same
-	// name
-	// "gs://bucket_name/object_name_prefix" already exists.
-	UriPrefix string `json:"uriPrefix,omitempty"`
-
 	// ForceSendFields is a list of field names (e.g. "Uri") to
 	// unconditionally include in API requests. By default, fields with
 	// empty values are omitted from API requests. However, any non-pointer,
diff --git a/cloudbuild/v1alpha1/cloudbuild-api.json b/cloudbuild/v1alpha1/cloudbuild-api.json
index abb4f85..794cad8 100644
--- a/cloudbuild/v1alpha1/cloudbuild-api.json
+++ b/cloudbuild/v1alpha1/cloudbuild-api.json
@@ -244,7 +244,7 @@
       }
     }
   },
-  "revision": "20190314",
+  "revision": "20190422",
   "rootUrl": "https://cloudbuild.googleapis.com/",
   "schemas": {
     "ArtifactObjects": {
@@ -990,7 +990,7 @@
           "type": "string"
         },
         "projectId": {
-          "description": "The project ID of the GCP project in which the `WorkerPool` is created.",
+          "description": "The project ID of the GCP project for which the `WorkerPool` is created.",
           "type": "string"
         },
         "regions": {
diff --git a/cloudbuild/v1alpha1/cloudbuild-gen.go b/cloudbuild/v1alpha1/cloudbuild-gen.go
index c21f8f9..fbc55a2 100644
--- a/cloudbuild/v1alpha1/cloudbuild-gen.go
+++ b/cloudbuild/v1alpha1/cloudbuild-gen.go
@@ -1451,7 +1451,7 @@
 	// Name: User-defined name of the `WorkerPool`.
 	Name string `json:"name,omitempty"`
 
-	// ProjectId: The project ID of the GCP project in which the
+	// ProjectId: The project ID of the GCP project for which the
 	// `WorkerPool` is created.
 	ProjectId string `json:"projectId,omitempty"`
 
diff --git a/clouderrorreporting/v1beta1/clouderrorreporting-api.json b/clouderrorreporting/v1beta1/clouderrorreporting-api.json
index 159c167..79006af 100644
--- a/clouderrorreporting/v1beta1/clouderrorreporting-api.json
+++ b/clouderrorreporting/v1beta1/clouderrorreporting-api.json
@@ -204,7 +204,7 @@
               ]
             },
             "report": {
-              "description": "Report an individual error event.\n\nThis endpoint accepts **either** an OAuth token,\n**or** an [API key](https://support.google.com/cloud/answer/6158862)\nfor authentication. To use an API key, append it to the URL as the value of\na `key` parameter. For example:\n\n`POST https://clouderrorreporting.googleapis.com/v1beta1/projects/example-project/events:report?key=123ABC456`",
+              "description": "Report an individual error event.\n\nThis endpoint accepts **either** an OAuth token,\n**or** an [API key](https://support.google.com/cloud/answer/6158862)\nfor authentication. To use an API key, append it to the URL as the value of\na `key` parameter. For example:\n\n`POST\nhttps://clouderrorreporting.googleapis.com/v1beta1/projects/example-project/events:report?key=123ABC456`",
               "flatPath": "v1beta1/projects/{projectsId}/events:report",
               "httpMethod": "POST",
               "id": "clouderrorreporting.projects.events.report",
@@ -213,7 +213,7 @@
               ],
               "parameters": {
                 "projectName": {
-                  "description": "[Required] The resource name of the Google Cloud Platform project. Written\nas `projects/` plus the\n[Google Cloud Platform project ID](https://support.google.com/cloud/answer/6158840).\nExample: `projects/my-project-123`.",
+                  "description": "[Required] The resource name of the Google Cloud Platform project. Written\nas `projects/` plus the\n[Google Cloud Platform project\nID](https://support.google.com/cloud/answer/6158840). Example:\n`projects/my-project-123`.",
                   "location": "path",
                   "pattern": "^projects/[^/]+$",
                   "required": true,
@@ -401,7 +401,7 @@
       }
     }
   },
-  "revision": "20180706",
+  "revision": "20190411",
   "rootUrl": "https://clouderrorreporting.googleapis.com/",
   "schemas": {
     "DeleteEventsResponse": {
@@ -634,7 +634,7 @@
           "type": "string"
         },
         "message": {
-          "description": "[Required] The error message.\nIf no `context.reportLocation` is provided, the message must contain a\nheader (typically consisting of the exception type name and an error\nmessage) and an exception stack trace in one of the supported programming\nlanguages and formats.\nSupported languages are Java, Python, JavaScript, Ruby, C#, PHP, and Go.\nSupported stack trace formats are:\n\n* **Java**: Must be the return value of [`Throwable.printStackTrace()`](https://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html#printStackTrace%28%29).\n* **Python**: Must be the return value of [`traceback.format_exc()`](https://docs.python.org/2/library/traceback.html#traceback.format_exc).\n* **JavaScript**: Must be the value of [`error.stack`](https://github.com/v8/v8/wiki/Stack-Trace-API)\nas returned by V8.\n* **Ruby**: Must contain frames returned by [`Exception.backtrace`](https://ruby-doc.org/core-2.2.0/Exception.html#method-i-backtrace).\n* **C#**: Must be the return value of [`Exception.ToString()`](https://msdn.microsoft.com/en-us/library/system.exception.tostring.aspx).\n* **PHP**: Must start with `PHP (Notice|Parse error|Fatal error|Warning)`\nand contain the result of [`(string)$exception`](http://php.net/manual/en/exception.tostring.php).\n* **Go**: Must be the return value of [`runtime.Stack()`](https://golang.org/pkg/runtime/debug/#Stack).",
+          "description": "[Required] The error message.\nIf no `context.reportLocation` is provided, the message must contain a\nheader (typically consisting of the exception type name and an error\nmessage) and an exception stack trace in one of the supported programming\nlanguages and formats.\nSupported languages are Java, Python, JavaScript, Ruby, C#, PHP, and Go.\nSupported stack trace formats are:\n\n* **Java**: Must be the return value of\n[`Throwable.printStackTrace()`](https://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html#printStackTrace%28%29).\n* **Python**: Must be the return value of\n[`traceback.format_exc()`](https://docs.python.org/2/library/traceback.html#traceback.format_exc).\n* **JavaScript**: Must be the value of\n[`error.stack`](https://github.com/v8/v8/wiki/Stack-Trace-API) as returned\nby V8.\n* **Ruby**: Must contain frames returned by\n[`Exception.backtrace`](https://ruby-doc.org/core-2.2.0/Exception.html#method-i-backtrace).\n* **C#**: Must be the return value of\n[`Exception.ToString()`](https://msdn.microsoft.com/en-us/library/system.exception.tostring.aspx).\n* **PHP**: Must start with `PHP (Notice|Parse error|Fatal error|Warning)`\nand contain the result of\n[`(string)$exception`](http://php.net/manual/en/exception.tostring.php).\n* **Go**: Must be the return value of\n[`runtime.Stack()`](https://golang.org/pkg/runtime/debug/#Stack).",
           "type": "string"
         },
         "serviceContext": {
diff --git a/clouderrorreporting/v1beta1/clouderrorreporting-gen.go b/clouderrorreporting/v1beta1/clouderrorreporting-gen.go
index 789deb9..0364372 100644
--- a/clouderrorreporting/v1beta1/clouderrorreporting-gen.go
+++ b/clouderrorreporting/v1beta1/clouderrorreporting-gen.go
@@ -605,27 +605,35 @@
 	// Go.
 	// Supported stack trace formats are:
 	//
-	// * **Java**: Must be the return value of
-	// [`Throwable.printStackTrace()`](https://docs.oracle.com/javase/7/docs/
-	// api/java/lang/Throwable.html#printStackTrace%28%29).
-	// * **Python**: Must be the return value of
-	// [`traceback.format_exc()`](https://docs.python.org/2/library/traceback
-	// .html#traceback.format_exc).
-	// * **JavaScript**: Must be the value of
-	// [`error.stack`](https://github.com/v8/v8/wiki/Stack-Trace-API)
-	// as returned by V8.
-	// * **Ruby**: Must contain frames returned by
-	// [`Exception.backtrace`](https://ruby-doc.org/core-2.2.0/Exception.html
-	// #method-i-backtrace).
-	// * **C#**: Must be the return value of
-	// [`Exception.ToString()`](https://msdn.microsoft.com/en-us/library/syst
-	// em.exception.tostring.aspx).
+	// * **Java**: Must be the return value
+	// of
+	// [`Throwable.printStackTrace()`](https://docs.oracle.com/javase/7/do
+	// cs/api/java/lang/Throwable.html#printStackTrace%28%29).
+	// * **Python**: Must be the return value
+	// of
+	// [`traceback.format_exc()`](https://docs.python.org/2/library/traceb
+	// ack.html#traceback.format_exc).
+	// * **JavaScript**: Must be the value
+	// of
+	// [`error.stack`](https://github.com/v8/v8/wiki/Stack-Trace-API) as
+	// returned
+	// by V8.
+	// * **Ruby**: Must contain frames returned
+	// by
+	// [`Exception.backtrace`](https://ruby-doc.org/core-2.2.0/Exception.h
+	// tml#method-i-backtrace).
+	// * **C#**: Must be the return value
+	// of
+	// [`Exception.ToString()`](https://msdn.microsoft.com/en-us/library/s
+	// ystem.exception.tostring.aspx).
 	// * **PHP**: Must start with `PHP (Notice|Parse error|Fatal
 	// error|Warning)`
-	// and contain the result of
-	// [`(string)$exception`](http://php.net/manual/en/exception.tostring.php
-	// ).
-	// * **Go**: Must be the return value of
+	// and contain the result
+	// of
+	// [`(string)$exception`](http://php.net/manual/en/exception.tostring.
+	// php).
+	// * **Go**: Must be the return value
+	// of
 	// [`runtime.Stack()`](https://golang.org/pkg/runtime/debug/#Stack).
 	Message string `json:"message,omitempty"`
 
@@ -1286,10 +1294,12 @@
 // key](https://support.google.com/cloud/answer/6158862)
 // for authentication. To use an API key, append it to the URL as the
 // value of
-// a `key` parameter. For example:
+// a `key` parameter. For
+// example:
 //
 // `POST
-// https://clouderrorreporting.googleapis.com/v1beta1/projects/example-project/events:report?key=123ABC456`
+// https://clouderrorreporting.googleapis.com/v1beta1/pro
+// jects/example-project/events:report?key=123ABC456`
 func (r *ProjectsEventsService) Report(projectName string, reportederrorevent *ReportedErrorEvent) *ProjectsEventsReportCall {
 	c := &ProjectsEventsReportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.projectName = projectName
@@ -1387,7 +1397,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Report an individual error event.\n\nThis endpoint accepts **either** an OAuth token,\n**or** an [API key](https://support.google.com/cloud/answer/6158862)\nfor authentication. To use an API key, append it to the URL as the value of\na `key` parameter. For example:\n\n`POST https://clouderrorreporting.googleapis.com/v1beta1/projects/example-project/events:report?key=123ABC456`",
+	//   "description": "Report an individual error event.\n\nThis endpoint accepts **either** an OAuth token,\n**or** an [API key](https://support.google.com/cloud/answer/6158862)\nfor authentication. To use an API key, append it to the URL as the value of\na `key` parameter. For example:\n\n`POST\nhttps://clouderrorreporting.googleapis.com/v1beta1/projects/example-project/events:report?key=123ABC456`",
 	//   "flatPath": "v1beta1/projects/{projectsId}/events:report",
 	//   "httpMethod": "POST",
 	//   "id": "clouderrorreporting.projects.events.report",
@@ -1396,7 +1406,7 @@
 	//   ],
 	//   "parameters": {
 	//     "projectName": {
-	//       "description": "[Required] The resource name of the Google Cloud Platform project. Written\nas `projects/` plus the\n[Google Cloud Platform project ID](https://support.google.com/cloud/answer/6158840).\nExample: `projects/my-project-123`.",
+	//       "description": "[Required] The resource name of the Google Cloud Platform project. Written\nas `projects/` plus the\n[Google Cloud Platform project\nID](https://support.google.com/cloud/answer/6158840). Example:\n`projects/my-project-123`.",
 	//       "location": "path",
 	//       "pattern": "^projects/[^/]+$",
 	//       "required": true,
diff --git a/cloudfunctions/v1/cloudfunctions-api.json b/cloudfunctions/v1/cloudfunctions-api.json
index ec59d03..fa46892 100644
--- a/cloudfunctions/v1/cloudfunctions-api.json
+++ b/cloudfunctions/v1/cloudfunctions-api.json
@@ -539,7 +539,7 @@
       }
     }
   },
-  "revision": "20190318",
+  "revision": "20190406",
   "rootUrl": "https://cloudfunctions.googleapis.com/",
   "schemas": {
     "AuditConfig": {
@@ -596,7 +596,7 @@
       "properties": {
         "condition": {
           "$ref": "Expr",
-          "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
+          "description": "The condition that is associated with this binding.\nNOTE: An unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
         },
         "members": {
           "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n   on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n   who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n   account. For example, `alice@gmail.com` .\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n   account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n   For example, `admins@example.com`.\n\n\n* `domain:{domain}`: The G Suite domain (primary) that represents all the\n   users of that domain. For example, `google.com` or `example.com`.\n\n",
@@ -682,7 +682,7 @@
           "type": "object"
         },
         "maxInstances": {
-          "description": "The limit on the maximum number of function instances that may coexist at a\ngiven time. This feature is currently in alpha, available only for\nwhitelisted users.",
+          "description": "The limit on the maximum number of function instances that may coexist at a\ngiven time.",
           "format": "int32",
           "type": "integer"
         },
@@ -695,7 +695,7 @@
           "type": "string"
         },
         "runtime": {
-          "description": "The runtime in which the function is going to run. Example values include:\n`go111`: for Go 1.11\n`nodejs6`: for Node.js 6\n`nodejs8`: for Node.js 8\n`nodejs10`: for Node.js 10\n`python37`: for Python 3.7\n`ruby25`: for Ruby 2.5\n\nIf empty, defaults to `nodejs6`.",
+          "description": "Required. The runtime in which the function is going to run. Choices:\n\n* `nodejs6`: Node.js 6\n* `nodejs8`: Node.js 8\n* `nodejs10`: Node.js 10\n* `python37`: Python 3.7\n* `go111`: Go 1.11",
           "type": "string"
         },
         "serviceAccountEmail": {
diff --git a/cloudfunctions/v1/cloudfunctions-gen.go b/cloudfunctions/v1/cloudfunctions-gen.go
index a313f8c..ac2fe1a 100644
--- a/cloudfunctions/v1/cloudfunctions-gen.go
+++ b/cloudfunctions/v1/cloudfunctions-gen.go
@@ -332,7 +332,7 @@
 // Binding: Associates `members` with a `role`.
 type Binding struct {
 	// Condition: The condition that is associated with this binding.
-	// NOTE: an unsatisfied condition will not allow user access via
+	// NOTE: An unsatisfied condition will not allow user access via
 	// current
 	// binding. Different bindings, including their conditions, are
 	// examined
@@ -515,9 +515,7 @@
 
 	// MaxInstances: The limit on the maximum number of function instances
 	// that may coexist at a
-	// given time. This feature is currently in alpha, available only
-	// for
-	// whitelisted users.
+	// given time.
 	MaxInstances int64 `json:"maxInstances,omitempty"`
 
 	// Name: A user-defined name of the function. Function names must be
@@ -553,16 +551,14 @@
 	// users.
 	Network string `json:"network,omitempty"`
 
-	// Runtime: The runtime in which the function is going to run. Example
-	// values include:
-	// `go111`: for Go 1.11
-	// `nodejs6`: for Node.js 6
-	// `nodejs8`: for Node.js 8
-	// `nodejs10`: for Node.js 10
-	// `python37`: for Python 3.7
-	// `ruby25`: for Ruby 2.5
+	// Runtime: Required. The runtime in which the function is going to run.
+	// Choices:
 	//
-	// If empty, defaults to `nodejs6`.
+	// * `nodejs6`: Node.js 6
+	// * `nodejs8`: Node.js 8
+	// * `nodejs10`: Node.js 10
+	// * `python37`: Python 3.7
+	// * `go111`: Go 1.11
 	Runtime string `json:"runtime,omitempty"`
 
 	// ServiceAccountEmail: The email of the function's service account. If
diff --git a/cloudfunctions/v1beta2/cloudfunctions-api.json b/cloudfunctions/v1beta2/cloudfunctions-api.json
index 320e78a..8bbb08b 100644
--- a/cloudfunctions/v1beta2/cloudfunctions-api.json
+++ b/cloudfunctions/v1beta2/cloudfunctions-api.json
@@ -452,7 +452,7 @@
       }
     }
   },
-  "revision": "20190318",
+  "revision": "20190406",
   "rootUrl": "https://cloudfunctions.googleapis.com/",
   "schemas": {
     "CallFunctionRequest": {
@@ -525,7 +525,7 @@
           "type": "string"
         },
         "maxInstances": {
-          "description": "The limit on the maximum number of function instances that may coexist at a\ngiven time. This feature is currently in alpha, available only for\nwhitelisted users.",
+          "description": "The limit on the maximum number of function instances that may coexist at a\ngiven time.",
           "format": "int32",
           "type": "integer"
         },
@@ -538,7 +538,7 @@
           "type": "string"
         },
         "runtime": {
-          "description": "The runtime in which the function is going to run. If empty, defaults to\nNode.js 6.",
+          "description": "Required. The runtime in which the function is going to run. Choices:\n\n* `nodejs6`: Node.js 6\n* `nodejs8`: Node.js 8\n* `nodejs10`: Node.js 10\n* `python37`: Python 3.7\n* `go111`: Go 1.11",
           "type": "string"
         },
         "serviceAccount": {
diff --git a/cloudfunctions/v1beta2/cloudfunctions-gen.go b/cloudfunctions/v1beta2/cloudfunctions-gen.go
index 327527a..d97b03e 100644
--- a/cloudfunctions/v1beta2/cloudfunctions-gen.go
+++ b/cloudfunctions/v1beta2/cloudfunctions-gen.go
@@ -292,9 +292,7 @@
 
 	// MaxInstances: The limit on the maximum number of function instances
 	// that may coexist at a
-	// given time. This feature is currently in alpha, available only
-	// for
-	// whitelisted users.
+	// given time.
 	MaxInstances int64 `json:"maxInstances,omitempty"`
 
 	// Name: A user-defined name of the function. Function names must be
@@ -330,9 +328,14 @@
 	// users.
 	Network string `json:"network,omitempty"`
 
-	// Runtime: The runtime in which the function is going to run. If empty,
-	// defaults to
-	// Node.js 6.
+	// Runtime: Required. The runtime in which the function is going to run.
+	// Choices:
+	//
+	// * `nodejs6`: Node.js 6
+	// * `nodejs8`: Node.js 8
+	// * `nodejs10`: Node.js 10
+	// * `python37`: Python 3.7
+	// * `go111`: Go 1.11
 	Runtime string `json:"runtime,omitempty"`
 
 	// ServiceAccount: The email of the function's service account. If
diff --git a/cloudresourcemanager/v1/cloudresourcemanager-api.json b/cloudresourcemanager/v1/cloudresourcemanager-api.json
index e59cf95..88f0e01 100644
--- a/cloudresourcemanager/v1/cloudresourcemanager-api.json
+++ b/cloudresourcemanager/v1/cloudresourcemanager-api.json
@@ -947,7 +947,7 @@
           "parameterOrder": [],
           "parameters": {
             "filter": {
-              "description": "An expression for filtering the results of the request.  Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n+ `name`\n+ `id`\n+ \u003ccode\u003elabels.\u003cem\u003ekey\u003c/em\u003e\u003c/code\u003e where *key* is the name of a label\n\nSome examples of using labels as filters:\n\n|Filter|Description|\n|------|-----------|\n|name:how*|The project's name starts with \"how\".|\n|name:Howl|The project's name is `Howl` or `howl`.|\n|name:HOWL|Equivalent to above.|\n|NAME:howl|Equivalent to above.|\n|labels.color:*|The project has the label `color`.|\n|labels.color:red|The project's label `color` has the value `red`.|\n|labels.color:red\u0026nbsp;labels.size:big|The project's label `color` has the value `red` and its label `size` has the value `big`.\n\nIf you specify a filter that has both `parent.type` and `parent.id`, then\nthe `resourcemanager.projects.list` permission is checked on the parent.\nIf the user has this permission, all projects under the parent will be\nreturned after remaining filters have been applied. If the user lacks this\npermission, then all projects for which the user has the\n`resourcemanager.projects.get` permission will be returned after remaining\nfilters have been applied. If no filter is specified, the call will return\nprojects for which the user has `resourcemanager.projects.get` permissions.\n\nOptional.",
+              "description": "An expression for filtering the results of the request.  Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n+ `name`\n+ `id`\n+ \u003ccode\u003elabels.\u003cem\u003ekey\u003c/em\u003e\u003c/code\u003e where *key* is the name of a label\n\nSome examples of using labels as filters:\n\n|Filter|Description|\n|------|-----------|\n|name:how*|The project's name starts with \"how\".|\n|name:Howl|The project's name is `Howl` or `howl`.|\n|name:HOWL|Equivalent to above.|\n|NAME:howl|Equivalent to above.|\n|labels.color:*|The project has the label `color`.|\n|labels.color:red|The project's label `color` has the value `red`.|\n|labels.color:red\u0026nbsp;labels.size:big|The project's label `color` has the\nvalue `red` and its label `size` has the value `big`.\n\nIf you specify a filter that has both `parent.type` and `parent.id`, then\nthe `resourcemanager.projects.list` permission is checked on the parent.\nIf the user has this permission, all projects under the parent will be\nreturned after remaining filters have been applied. If the user lacks this\npermission, then all projects for which the user has the\n`resourcemanager.projects.get` permission will be returned after remaining\nfilters have been applied. If no filter is specified, the call will return\nprojects for which the user has `resourcemanager.projects.get` permissions.\n\nOptional.",
               "location": "query",
               "type": "string"
             },
@@ -1170,7 +1170,7 @@
       }
     }
   },
-  "revision": "20190403",
+  "revision": "20190417",
   "rootUrl": "https://cloudresourcemanager.googleapis.com/",
   "schemas": {
     "Ancestor": {
diff --git a/cloudresourcemanager/v1/cloudresourcemanager-gen.go b/cloudresourcemanager/v1/cloudresourcemanager-gen.go
index f6af076..0e38161 100644
--- a/cloudresourcemanager/v1/cloudresourcemanager-gen.go
+++ b/cloudresourcemanager/v1/cloudresourcemanager-gen.go
@@ -7059,7 +7059,8 @@
 // |labels.color:red|The project's label `color` has the value
 // `red`.|
 // |labels.color:red&nbsp;labels.size:big|The project's label `color`
-// has the value `red` and its label `size` has the value `big`.
+// has the
+// value `red` and its label `size` has the value `big`.
 //
 // If you specify a filter that has both `parent.type` and `parent.id`,
 // then
@@ -7201,7 +7202,7 @@
 	//   "parameterOrder": [],
 	//   "parameters": {
 	//     "filter": {
-	//       "description": "An expression for filtering the results of the request.  Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n+ `name`\n+ `id`\n+ \u003ccode\u003elabels.\u003cem\u003ekey\u003c/em\u003e\u003c/code\u003e where *key* is the name of a label\n\nSome examples of using labels as filters:\n\n|Filter|Description|\n|------|-----------|\n|name:how*|The project's name starts with \"how\".|\n|name:Howl|The project's name is `Howl` or `howl`.|\n|name:HOWL|Equivalent to above.|\n|NAME:howl|Equivalent to above.|\n|labels.color:*|The project has the label `color`.|\n|labels.color:red|The project's label `color` has the value `red`.|\n|labels.color:red\u0026nbsp;labels.size:big|The project's label `color` has the value `red` and its label `size` has the value `big`.\n\nIf you specify a filter that has both `parent.type` and `parent.id`, then\nthe `resourcemanager.projects.list` permission is checked on the parent.\nIf the user has this permission, all projects under the parent will be\nreturned after remaining filters have been applied. If the user lacks this\npermission, then all projects for which the user has the\n`resourcemanager.projects.get` permission will be returned after remaining\nfilters have been applied. If no filter is specified, the call will return\nprojects for which the user has `resourcemanager.projects.get` permissions.\n\nOptional.",
+	//       "description": "An expression for filtering the results of the request.  Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n+ `name`\n+ `id`\n+ \u003ccode\u003elabels.\u003cem\u003ekey\u003c/em\u003e\u003c/code\u003e where *key* is the name of a label\n\nSome examples of using labels as filters:\n\n|Filter|Description|\n|------|-----------|\n|name:how*|The project's name starts with \"how\".|\n|name:Howl|The project's name is `Howl` or `howl`.|\n|name:HOWL|Equivalent to above.|\n|NAME:howl|Equivalent to above.|\n|labels.color:*|The project has the label `color`.|\n|labels.color:red|The project's label `color` has the value `red`.|\n|labels.color:red\u0026nbsp;labels.size:big|The project's label `color` has the\nvalue `red` and its label `size` has the value `big`.\n\nIf you specify a filter that has both `parent.type` and `parent.id`, then\nthe `resourcemanager.projects.list` permission is checked on the parent.\nIf the user has this permission, all projects under the parent will be\nreturned after remaining filters have been applied. If the user lacks this\npermission, then all projects for which the user has the\n`resourcemanager.projects.get` permission will be returned after remaining\nfilters have been applied. If no filter is specified, the call will return\nprojects for which the user has `resourcemanager.projects.get` permissions.\n\nOptional.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
diff --git a/cloudresourcemanager/v1beta1/cloudresourcemanager-api.json b/cloudresourcemanager/v1beta1/cloudresourcemanager-api.json
index 1494a41..9e18079 100644
--- a/cloudresourcemanager/v1beta1/cloudresourcemanager-api.json
+++ b/cloudresourcemanager/v1beta1/cloudresourcemanager-api.json
@@ -177,7 +177,7 @@
           "parameterOrder": [],
           "parameters": {
             "filter": {
-              "description": "An optional query string used to filter the Organizations to return in\nthe response. Filter rules are case-insensitive.\n\n\nOrganizations may be filtered by `owner.directoryCustomerId` or by\n`domain`, where the domain is a G Suite domain, for example:\n\n|Filter|Description|\n|------|-----------|\n|owner.directorycustomerid:123456789|Organizations with `owner.directory_customer_id` equal to `123456789`.|\n|domain:google.com|Organizations corresponding to the domain `google.com`.|\n\nThis field is optional.",
+              "description": "An optional query string used to filter the Organizations to return in\nthe response. Filter rules are case-insensitive.\n\n\nOrganizations may be filtered by `owner.directoryCustomerId` or by\n`domain`, where the domain is a G Suite domain, for example:\n\n|Filter|Description|\n|------|-----------|\n|owner.directorycustomerid:123456789|Organizations with\n`owner.directory_customer_id` equal to `123456789`.|\n|domain:google.com|Organizations corresponding to the domain `google.com`.|\n\nThis field is optional.",
               "location": "query",
               "type": "string"
             },
@@ -316,7 +316,7 @@
           ]
         },
         "delete": {
-          "description": "Marks the Project identified by the specified\n`project_id` (for example, `my-project-123`) for deletion.\nThis method will only affect the Project if it has a lifecycle state of\nACTIVE.\n\nThis method changes the Project's lifecycle state from\nACTIVE\nto DELETE_REQUESTED.\nThe deletion starts at an unspecified time, at which point the project is\nno longer accessible.\n\nUntil the deletion completes, you can check the lifecycle state\nchecked by retrieving the Project with GetProject,\nand the Project remains visible to ListProjects.\nHowever, you cannot update the project.\n\nAfter the deletion completes, the Project is not retrievable by\nthe  GetProject and\nListProjects methods.\n\nThe caller must have modify permissions for this Project.",
+          "description": "Marks the Project identified by the specified\n`project_id` (for example, `my-project-123`) for deletion.\nThis method will only affect the Project if it has a lifecycle state of\nACTIVE.\n\nThis method changes the Project's lifecycle state from\nACTIVE\nto DELETE_REQUESTED.\nThe deletion starts at an unspecified time, at which point the project is\nno longer accessible.\n\nUntil the deletion completes, you can check the lifecycle state\nchecked by retrieving the Project with GetProject,\nand the Project remains visible to ListProjects.\nHowever, you cannot update the project.\n\nAfter the deletion completes, the Project is not retrievable by\nthe  GetProject\nand ListProjects\nmethods.\n\nThe caller must have modify permissions for this Project.",
           "flatPath": "v1beta1/projects/{projectId}",
           "httpMethod": "DELETE",
           "id": "cloudresourcemanager.projects.delete",
@@ -428,7 +428,7 @@
           "parameterOrder": [],
           "parameters": {
             "filter": {
-              "description": "An expression for filtering the results of the request.  Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n+ `name`\n+ `id`\n+ \u003ccode\u003elabels.\u003cem\u003ekey\u003c/em\u003e\u003c/code\u003e where *key* is the name of a label\n\nSome examples of using labels as filters:\n\n|Filter|Description|\n|------|-----------|\n|name:how*|The project's name starts with \"how\".|\n|name:Howl|The project's name is `Howl` or `howl`.|\n|name:HOWL|Equivalent to above.|\n|NAME:howl|Equivalent to above.|\n|labels.color:*|The project has the label `color`.|\n|labels.color:red|The project's label `color` has the value `red`.|\n|labels.color:red\u0026nbsp;labels.size:big|The project's label `color` has the value `red` and its label `size` has the value `big`.\n\nIf you specify a filter that has both `parent.type` and `parent.id`, then\nthe `resourcemanager.projects.list` permission is checked on the parent.\nIf the user has this permission, all projects under the parent will be\nreturned after remaining filters have been applied. If the user lacks this\npermission, then all projects for which the user has the\n`resourcemanager.projects.get` permission will be returned after remaining\nfilters have been applied. If no filter is specified, the call will return\nprojects for which the user has `resourcemanager.projects.get` permissions.\n\nOptional.",
+              "description": "An expression for filtering the results of the request.  Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n+ `name`\n+ `id`\n+ \u003ccode\u003elabels.\u003cem\u003ekey\u003c/em\u003e\u003c/code\u003e where *key* is the name of a label\n\nSome examples of using labels as filters:\n\n|Filter|Description|\n|------|-----------|\n|name:how*|The project's name starts with \"how\".|\n|name:Howl|The project's name is `Howl` or `howl`.|\n|name:HOWL|Equivalent to above.|\n|NAME:howl|Equivalent to above.|\n|labels.color:*|The project has the label `color`.|\n|labels.color:red|The project's label `color` has the value `red`.|\n|labels.color:red\u0026nbsp;labels.size:big|The project's label `color` has the\nvalue `red` and its label `size` has the value `big`.\n\nIf you specify a filter that has both `parent.type` and `parent.id`, then\nthe `resourcemanager.projects.list` permission is checked on the parent.\nIf the user has this permission, all projects under the parent will be\nreturned after remaining filters have been applied. If the user lacks this\npermission, then all projects for which the user has the\n`resourcemanager.projects.get` permission will be returned after remaining\nfilters have been applied. If no filter is specified, the call will return\nprojects for which the user has `resourcemanager.projects.get` permissions.\n\nOptional.",
               "location": "query",
               "type": "string"
             },
@@ -565,7 +565,7 @@
       }
     }
   },
-  "revision": "20190403",
+  "revision": "20190417",
   "rootUrl": "https://cloudresourcemanager.googleapis.com/",
   "schemas": {
     "Ancestor": {
diff --git a/cloudresourcemanager/v1beta1/cloudresourcemanager-gen.go b/cloudresourcemanager/v1beta1/cloudresourcemanager-gen.go
index 01476b8..330631a 100644
--- a/cloudresourcemanager/v1beta1/cloudresourcemanager-gen.go
+++ b/cloudresourcemanager/v1beta1/cloudresourcemanager-gen.go
@@ -1616,8 +1616,9 @@
 // |Filter|Description|
 // |------|-----------|
 // |owner.directorycu
-// stomerid:123456789|Organizations with `owner.directory_customer_id`
-// equal to `123456789`.|
+// stomerid:123456789|Organizations with
+// `owner.directory_customer_id` equal to
+// `123456789`.|
 // |domain:google.com|Organizations corresponding to the domain
 // `google.com`.|
 //
@@ -1746,7 +1747,7 @@
 	//   "parameterOrder": [],
 	//   "parameters": {
 	//     "filter": {
-	//       "description": "An optional query string used to filter the Organizations to return in\nthe response. Filter rules are case-insensitive.\n\n\nOrganizations may be filtered by `owner.directoryCustomerId` or by\n`domain`, where the domain is a G Suite domain, for example:\n\n|Filter|Description|\n|------|-----------|\n|owner.directorycustomerid:123456789|Organizations with `owner.directory_customer_id` equal to `123456789`.|\n|domain:google.com|Organizations corresponding to the domain `google.com`.|\n\nThis field is optional.",
+	//       "description": "An optional query string used to filter the Organizations to return in\nthe response. Filter rules are case-insensitive.\n\n\nOrganizations may be filtered by `owner.directoryCustomerId` or by\n`domain`, where the domain is a G Suite domain, for example:\n\n|Filter|Description|\n|------|-----------|\n|owner.directorycustomerid:123456789|Organizations with\n`owner.directory_customer_id` equal to `123456789`.|\n|domain:google.com|Organizations corresponding to the domain `google.com`.|\n\nThis field is optional.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
@@ -2411,8 +2412,9 @@
 // However, you cannot update the project.
 //
 // After the deletion completes, the Project is not retrievable by
-// the  GetProject and
-// ListProjects methods.
+// the  GetProject
+// and ListProjects
+// methods.
 //
 // The caller must have modify permissions for this Project.
 func (r *ProjectsService) Delete(projectId string) *ProjectsDeleteCall {
@@ -2506,7 +2508,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Marks the Project identified by the specified\n`project_id` (for example, `my-project-123`) for deletion.\nThis method will only affect the Project if it has a lifecycle state of\nACTIVE.\n\nThis method changes the Project's lifecycle state from\nACTIVE\nto DELETE_REQUESTED.\nThe deletion starts at an unspecified time, at which point the project is\nno longer accessible.\n\nUntil the deletion completes, you can check the lifecycle state\nchecked by retrieving the Project with GetProject,\nand the Project remains visible to ListProjects.\nHowever, you cannot update the project.\n\nAfter the deletion completes, the Project is not retrievable by\nthe  GetProject and\nListProjects methods.\n\nThe caller must have modify permissions for this Project.",
+	//   "description": "Marks the Project identified by the specified\n`project_id` (for example, `my-project-123`) for deletion.\nThis method will only affect the Project if it has a lifecycle state of\nACTIVE.\n\nThis method changes the Project's lifecycle state from\nACTIVE\nto DELETE_REQUESTED.\nThe deletion starts at an unspecified time, at which point the project is\nno longer accessible.\n\nUntil the deletion completes, you can check the lifecycle state\nchecked by retrieving the Project with GetProject,\nand the Project remains visible to ListProjects.\nHowever, you cannot update the project.\n\nAfter the deletion completes, the Project is not retrievable by\nthe  GetProject\nand ListProjects\nmethods.\n\nThe caller must have modify permissions for this Project.",
 	//   "flatPath": "v1beta1/projects/{projectId}",
 	//   "httpMethod": "DELETE",
 	//   "id": "cloudresourcemanager.projects.delete",
@@ -3018,7 +3020,8 @@
 // |labels.color:red|The project's label `color` has the value
 // `red`.|
 // |labels.color:red&nbsp;labels.size:big|The project's label `color`
-// has the value `red` and its label `size` has the value `big`.
+// has the
+// value `red` and its label `size` has the value `big`.
 //
 // If you specify a filter that has both `parent.type` and `parent.id`,
 // then
@@ -3160,7 +3163,7 @@
 	//   "parameterOrder": [],
 	//   "parameters": {
 	//     "filter": {
-	//       "description": "An expression for filtering the results of the request.  Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n+ `name`\n+ `id`\n+ \u003ccode\u003elabels.\u003cem\u003ekey\u003c/em\u003e\u003c/code\u003e where *key* is the name of a label\n\nSome examples of using labels as filters:\n\n|Filter|Description|\n|------|-----------|\n|name:how*|The project's name starts with \"how\".|\n|name:Howl|The project's name is `Howl` or `howl`.|\n|name:HOWL|Equivalent to above.|\n|NAME:howl|Equivalent to above.|\n|labels.color:*|The project has the label `color`.|\n|labels.color:red|The project's label `color` has the value `red`.|\n|labels.color:red\u0026nbsp;labels.size:big|The project's label `color` has the value `red` and its label `size` has the value `big`.\n\nIf you specify a filter that has both `parent.type` and `parent.id`, then\nthe `resourcemanager.projects.list` permission is checked on the parent.\nIf the user has this permission, all projects under the parent will be\nreturned after remaining filters have been applied. If the user lacks this\npermission, then all projects for which the user has the\n`resourcemanager.projects.get` permission will be returned after remaining\nfilters have been applied. If no filter is specified, the call will return\nprojects for which the user has `resourcemanager.projects.get` permissions.\n\nOptional.",
+	//       "description": "An expression for filtering the results of the request.  Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n+ `name`\n+ `id`\n+ \u003ccode\u003elabels.\u003cem\u003ekey\u003c/em\u003e\u003c/code\u003e where *key* is the name of a label\n\nSome examples of using labels as filters:\n\n|Filter|Description|\n|------|-----------|\n|name:how*|The project's name starts with \"how\".|\n|name:Howl|The project's name is `Howl` or `howl`.|\n|name:HOWL|Equivalent to above.|\n|NAME:howl|Equivalent to above.|\n|labels.color:*|The project has the label `color`.|\n|labels.color:red|The project's label `color` has the value `red`.|\n|labels.color:red\u0026nbsp;labels.size:big|The project's label `color` has the\nvalue `red` and its label `size` has the value `big`.\n\nIf you specify a filter that has both `parent.type` and `parent.id`, then\nthe `resourcemanager.projects.list` permission is checked on the parent.\nIf the user has this permission, all projects under the parent will be\nreturned after remaining filters have been applied. If the user lacks this\npermission, then all projects for which the user has the\n`resourcemanager.projects.get` permission will be returned after remaining\nfilters have been applied. If no filter is specified, the call will return\nprojects for which the user has `resourcemanager.projects.get` permissions.\n\nOptional.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
diff --git a/cloudtasks/v2/cloudtasks-api.json b/cloudtasks/v2/cloudtasks-api.json
index 9cee5d3..2b0aeb5 100644
--- a/cloudtasks/v2/cloudtasks-api.json
+++ b/cloudtasks/v2/cloudtasks-api.json
@@ -179,7 +179,7 @@
             "queues": {
               "methods": {
                 "create": {
-                  "description": "Creates a queue.\n\nQueues created with this method allow tasks to live for a maximum of 31\ndays. After a task is 31 days old, the task will be deleted regardless of whether\nit was dispatched or not.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and queue.yaml](https://cloud.google.com/tasks/docs/queue-yaml)\nbefore using this method.",
+                  "description": "Creates a queue.\n\nQueues created with this method allow tasks to live for a maximum of 31\ndays. After a task is 31 days old, the task will be deleted regardless of whether\nit was dispatched or not.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and\nqueue.yaml](https://cloud.google.com/tasks/docs/queue-yaml) before using\nthis method.",
                   "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/queues",
                   "httpMethod": "POST",
                   "id": "cloudtasks.projects.locations.queues.create",
@@ -207,7 +207,7 @@
                   ]
                 },
                 "delete": {
-                  "description": "Deletes a queue.\n\nThis command will delete the queue even if it has tasks in it.\n\nNote: If you delete a queue, a queue with the same name can't be created\nfor 7 days.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and queue.yaml](https://cloud.google.com/tasks/docs/queue-yaml)\nbefore using this method.",
+                  "description": "Deletes a queue.\n\nThis command will delete the queue even if it has tasks in it.\n\nNote: If you delete a queue, a queue with the same name can't be created\nfor 7 days.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and\nqueue.yaml](https://cloud.google.com/tasks/docs/queue-yaml) before using\nthis method.",
                   "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}",
                   "httpMethod": "DELETE",
                   "id": "cloudtasks.projects.locations.queues.delete",
@@ -294,7 +294,7 @@
                   ],
                   "parameters": {
                     "filter": {
-                      "description": "`filter` can be used to specify a subset of queues. Any Queue\nfield can be used as a filter and several operators as supported.\nFor example: `\u003c=, \u003c, \u003e=, \u003e, !=, =, :`. The filter syntax is the same as\ndescribed in\n[Stackdriver's Advanced Logs Filters](https://cloud.google.com/logging/docs/view/advanced_filters).\n\nSample filter \"state: PAUSED\".\n\nNote that using filters might cause fewer queues than the\nrequested page_size to be returned.",
+                      "description": "`filter` can be used to specify a subset of queues. Any Queue\nfield can be used as a filter and several operators as supported.\nFor example: `\u003c=, \u003c, \u003e=, \u003e, !=, =, :`. The filter syntax is the same as\ndescribed in\n[Stackdriver's Advanced Logs\nFilters](https://cloud.google.com/logging/docs/view/advanced_filters).\n\nSample filter \"state: PAUSED\".\n\nNote that using filters might cause fewer queues than the\nrequested page_size to be returned.",
                       "location": "query",
                       "type": "string"
                     },
@@ -326,7 +326,7 @@
                   ]
                 },
                 "patch": {
-                  "description": "Updates a queue.\n\nThis method creates the queue if it does not exist and updates\nthe queue if it does exist.\n\nQueues created with this method allow tasks to live for a maximum of 31\ndays. After a task is 31 days old, the task will be deleted regardless of whether\nit was dispatched or not.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and queue.yaml](https://cloud.google.com/tasks/docs/queue-yaml)\nbefore using this method.",
+                  "description": "Updates a queue.\n\nThis method creates the queue if it does not exist and updates\nthe queue if it does exist.\n\nQueues created with this method allow tasks to live for a maximum of 31\ndays. After a task is 31 days old, the task will be deleted regardless of whether\nit was dispatched or not.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and\nqueue.yaml](https://cloud.google.com/tasks/docs/queue-yaml) before using\nthis method.",
                   "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}",
                   "httpMethod": "PATCH",
                   "id": "cloudtasks.projects.locations.queues.patch",
@@ -416,7 +416,7 @@
                   ]
                 },
                 "resume": {
-                  "description": "Resume a queue.\n\nThis method resumes a queue after it has been\nPAUSED or\nDISABLED. The state of a queue is stored\nin the queue's state; after calling this method it\nwill be set to RUNNING.\n\nWARNING: Resuming many high-QPS queues at the same time can\nlead to target overloading. If you are resuming high-QPS\nqueues, follow the 500/50/5 pattern described in\n[Managing Cloud Tasks Scaling Risks](https://cloud.google.com/tasks/docs/manage-cloud-task-scaling).",
+                  "description": "Resume a queue.\n\nThis method resumes a queue after it has been\nPAUSED or\nDISABLED. The state of a queue is stored\nin the queue's state; after calling this method it\nwill be set to RUNNING.\n\nWARNING: Resuming many high-QPS queues at the same time can\nlead to target overloading. If you are resuming high-QPS\nqueues, follow the 500/50/5 pattern described in\n[Managing Cloud Tasks Scaling\nRisks](https://cloud.google.com/tasks/docs/manage-cloud-task-scaling).",
                   "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:resume",
                   "httpMethod": "POST",
                   "id": "cloudtasks.projects.locations.queues.resume",
@@ -674,7 +674,7 @@
       }
     }
   },
-  "revision": "20190326",
+  "revision": "20190412",
   "rootUrl": "https://cloudtasks.googleapis.com/",
   "schemas": {
     "AppEngineHttpRequest": {
@@ -783,7 +783,7 @@
       "properties": {
         "condition": {
           "$ref": "Expr",
-          "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
+          "description": "The condition that is associated with this binding.\nNOTE: An unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
         },
         "members": {
           "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n   on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n   who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n   account. For example, `alice@gmail.com` .\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n   account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n   For example, `admins@example.com`.\n\n\n* `domain:{domain}`: The G Suite domain (primary) that represents all the\n   users of that domain. For example, `google.com` or `example.com`.\n\n",
diff --git a/cloudtasks/v2/cloudtasks-gen.go b/cloudtasks/v2/cloudtasks-gen.go
index d1dfa98..44eaf57 100644
--- a/cloudtasks/v2/cloudtasks-gen.go
+++ b/cloudtasks/v2/cloudtasks-gen.go
@@ -577,7 +577,7 @@
 // Binding: Associates `members` with a `role`.
 type Binding struct {
 	// Condition: The condition that is associated with this binding.
-	// NOTE: an unsatisfied condition will not allow user access via
+	// NOTE: An unsatisfied condition will not allow user access via
 	// current
 	// binding. Different bindings, including their conditions, are
 	// examined
@@ -2413,9 +2413,11 @@
 // using an App Engine `queue.yaml` or `queue.xml` file to manage your
 // queues.
 // Read
-// [Overview of Queue Management and
-// queue.yaml](https://cloud.google.com/tasks/docs/queue-yaml)
-// before using this method.
+// [Overview of Queue Management
+// and
+// queue.yaml](https://cloud.google.com/tasks/docs/queue-yaml) before
+// using
+// this method.
 func (r *ProjectsLocationsQueuesService) Create(parent string, queue *Queue) *ProjectsLocationsQueuesCreateCall {
 	c := &ProjectsLocationsQueuesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.parent = parent
@@ -2513,7 +2515,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Creates a queue.\n\nQueues created with this method allow tasks to live for a maximum of 31\ndays. After a task is 31 days old, the task will be deleted regardless of whether\nit was dispatched or not.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and queue.yaml](https://cloud.google.com/tasks/docs/queue-yaml)\nbefore using this method.",
+	//   "description": "Creates a queue.\n\nQueues created with this method allow tasks to live for a maximum of 31\ndays. After a task is 31 days old, the task will be deleted regardless of whether\nit was dispatched or not.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and\nqueue.yaml](https://cloud.google.com/tasks/docs/queue-yaml) before using\nthis method.",
 	//   "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/queues",
 	//   "httpMethod": "POST",
 	//   "id": "cloudtasks.projects.locations.queues.create",
@@ -2566,9 +2568,11 @@
 // using an App Engine `queue.yaml` or `queue.xml` file to manage your
 // queues.
 // Read
-// [Overview of Queue Management and
-// queue.yaml](https://cloud.google.com/tasks/docs/queue-yaml)
-// before using this method.
+// [Overview of Queue Management
+// and
+// queue.yaml](https://cloud.google.com/tasks/docs/queue-yaml) before
+// using
+// this method.
 func (r *ProjectsLocationsQueuesService) Delete(name string) *ProjectsLocationsQueuesDeleteCall {
 	c := &ProjectsLocationsQueuesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.name = name
@@ -2660,7 +2664,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Deletes a queue.\n\nThis command will delete the queue even if it has tasks in it.\n\nNote: If you delete a queue, a queue with the same name can't be created\nfor 7 days.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and queue.yaml](https://cloud.google.com/tasks/docs/queue-yaml)\nbefore using this method.",
+	//   "description": "Deletes a queue.\n\nThis command will delete the queue even if it has tasks in it.\n\nNote: If you delete a queue, a queue with the same name can't be created\nfor 7 days.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and\nqueue.yaml](https://cloud.google.com/tasks/docs/queue-yaml) before using\nthis method.",
 	//   "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}",
 	//   "httpMethod": "DELETE",
 	//   "id": "cloudtasks.projects.locations.queues.delete",
@@ -3005,9 +3009,10 @@
 // For example: `<=, <, >=, >, !=, =, :`. The filter syntax is the same
 // as
 // described in
-// [Stackdriver's Advanced Logs
-// Filters](https://cloud.google.com/logging/docs/view/advanced_filters).
-//
+// [Stackdriver's Advanced
+// Logs
+// Filters](https://cloud.google.com/logging/docs/view/advanced_filt
+// ers).
 //
 // Sample filter "state: PAUSED".
 //
@@ -3154,7 +3159,7 @@
 	//   ],
 	//   "parameters": {
 	//     "filter": {
-	//       "description": "`filter` can be used to specify a subset of queues. Any Queue\nfield can be used as a filter and several operators as supported.\nFor example: `\u003c=, \u003c, \u003e=, \u003e, !=, =, :`. The filter syntax is the same as\ndescribed in\n[Stackdriver's Advanced Logs Filters](https://cloud.google.com/logging/docs/view/advanced_filters).\n\nSample filter \"state: PAUSED\".\n\nNote that using filters might cause fewer queues than the\nrequested page_size to be returned.",
+	//       "description": "`filter` can be used to specify a subset of queues. Any Queue\nfield can be used as a filter and several operators as supported.\nFor example: `\u003c=, \u003c, \u003e=, \u003e, !=, =, :`. The filter syntax is the same as\ndescribed in\n[Stackdriver's Advanced Logs\nFilters](https://cloud.google.com/logging/docs/view/advanced_filters).\n\nSample filter \"state: PAUSED\".\n\nNote that using filters might cause fewer queues than the\nrequested page_size to be returned.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
@@ -3236,9 +3241,11 @@
 // using an App Engine `queue.yaml` or `queue.xml` file to manage your
 // queues.
 // Read
-// [Overview of Queue Management and
-// queue.yaml](https://cloud.google.com/tasks/docs/queue-yaml)
-// before using this method.
+// [Overview of Queue Management
+// and
+// queue.yaml](https://cloud.google.com/tasks/docs/queue-yaml) before
+// using
+// this method.
 func (r *ProjectsLocationsQueuesService) Patch(name string, queue *Queue) *ProjectsLocationsQueuesPatchCall {
 	c := &ProjectsLocationsQueuesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.name = name
@@ -3345,7 +3352,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Updates a queue.\n\nThis method creates the queue if it does not exist and updates\nthe queue if it does exist.\n\nQueues created with this method allow tasks to live for a maximum of 31\ndays. After a task is 31 days old, the task will be deleted regardless of whether\nit was dispatched or not.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and queue.yaml](https://cloud.google.com/tasks/docs/queue-yaml)\nbefore using this method.",
+	//   "description": "Updates a queue.\n\nThis method creates the queue if it does not exist and updates\nthe queue if it does exist.\n\nQueues created with this method allow tasks to live for a maximum of 31\ndays. After a task is 31 days old, the task will be deleted regardless of whether\nit was dispatched or not.\n\nWARNING: Using this method may have unintended side effects if you are\nusing an App Engine `queue.yaml` or `queue.xml` file to manage your queues.\nRead\n[Overview of Queue Management and\nqueue.yaml](https://cloud.google.com/tasks/docs/queue-yaml) before using\nthis method.",
 	//   "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}",
 	//   "httpMethod": "PATCH",
 	//   "id": "cloudtasks.projects.locations.queues.patch",
@@ -3696,8 +3703,10 @@
 // WARNING: Resuming many high-QPS queues at the same time can
 // lead to target overloading. If you are resuming high-QPS
 // queues, follow the 500/50/5 pattern described in
-// [Managing Cloud Tasks Scaling
-// Risks](https://cloud.google.com/tasks/docs/manage-cloud-task-scaling).
+// [Managing Cloud Tasks
+// Scaling
+// Risks](https://cloud.google.com/tasks/docs/manage-cloud-task-s
+// caling).
 func (r *ProjectsLocationsQueuesService) Resume(name string, resumequeuerequest *ResumeQueueRequest) *ProjectsLocationsQueuesResumeCall {
 	c := &ProjectsLocationsQueuesResumeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.name = name
@@ -3795,7 +3804,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Resume a queue.\n\nThis method resumes a queue after it has been\nPAUSED or\nDISABLED. The state of a queue is stored\nin the queue's state; after calling this method it\nwill be set to RUNNING.\n\nWARNING: Resuming many high-QPS queues at the same time can\nlead to target overloading. If you are resuming high-QPS\nqueues, follow the 500/50/5 pattern described in\n[Managing Cloud Tasks Scaling Risks](https://cloud.google.com/tasks/docs/manage-cloud-task-scaling).",
+	//   "description": "Resume a queue.\n\nThis method resumes a queue after it has been\nPAUSED or\nDISABLED. The state of a queue is stored\nin the queue's state; after calling this method it\nwill be set to RUNNING.\n\nWARNING: Resuming many high-QPS queues at the same time can\nlead to target overloading. If you are resuming high-QPS\nqueues, follow the 500/50/5 pattern described in\n[Managing Cloud Tasks Scaling\nRisks](https://cloud.google.com/tasks/docs/manage-cloud-task-scaling).",
 	//   "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:resume",
 	//   "httpMethod": "POST",
 	//   "id": "cloudtasks.projects.locations.queues.resume",
diff --git a/compute/v0.alpha/compute-api.json b/compute/v0.alpha/compute-api.json
index a6f689a..2c7b19d 100644
--- a/compute/v0.alpha/compute-api.json
+++ b/compute/v0.alpha/compute-api.json
@@ -29,7 +29,7 @@
   "description": "Creates and runs virtual machines on Google Cloud Platform.",
   "discoveryVersion": "v1",
   "documentationLink": "https://developers.google.com/compute/docs/reference/latest/",
-  "etag": "\"VPK3KBfpaEgZ16pozGOoMYfKc0U/9i1yA_EvW_-C7Mkv3GxdonWRg64\"",
+  "etag": "\"VPK3KBfpaEgZ16pozGOoMYfKc0U/aKSq_aUPuAn1vDfZ4ilQirFUTJ4\"",
   "icons": {
     "x16": "https://www.google.com/images/icons/product/compute_engine-16.png",
     "x32": "https://www.google.com/images/icons/product/compute_engine-32.png"
@@ -4124,6 +4124,298 @@
         }
       }
     },
+    "globalNetworkEndpointGroups": {
+      "methods": {
+        "attachNetworkEndpoints": {
+          "description": "Attach a network endpoint to the specified network endpoint group.",
+          "httpMethod": "POST",
+          "id": "compute.globalNetworkEndpointGroups.attachNetworkEndpoints",
+          "parameterOrder": [
+            "project",
+            "networkEndpointGroup"
+          ],
+          "parameters": {
+            "networkEndpointGroup": {
+              "description": "The name of the network endpoint group where you are attaching network endpoints to. It should comply with RFC1035.",
+              "location": "path",
+              "required": true,
+              "type": "string"
+            },
+            "project": {
+              "description": "Project ID for this request.",
+              "location": "path",
+              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
+              "required": true,
+              "type": "string"
+            },
+            "requestId": {
+              "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).",
+              "location": "query",
+              "type": "string"
+            }
+          },
+          "path": "{project}/global/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints",
+          "request": {
+            "$ref": "GlobalNetworkEndpointGroupsAttachEndpointsRequest"
+          },
+          "response": {
+            "$ref": "Operation"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/cloud-platform",
+            "https://www.googleapis.com/auth/compute"
+          ]
+        },
+        "delete": {
+          "description": "Deletes the specified network endpoint group.Note that the NEG cannot be deleted if there are backend services referencing it.",
+          "httpMethod": "DELETE",
+          "id": "compute.globalNetworkEndpointGroups.delete",
+          "parameterOrder": [
+            "project",
+            "networkEndpointGroup"
+          ],
+          "parameters": {
+            "networkEndpointGroup": {
+              "description": "The name of the network endpoint group to delete. It should comply with RFC1035.",
+              "location": "path",
+              "required": true,
+              "type": "string"
+            },
+            "project": {
+              "description": "Project ID for this request.",
+              "location": "path",
+              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
+              "required": true,
+              "type": "string"
+            },
+            "requestId": {
+              "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).",
+              "location": "query",
+              "type": "string"
+            }
+          },
+          "path": "{project}/global/networkEndpointGroups/{networkEndpointGroup}",
+          "response": {
+            "$ref": "Operation"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/cloud-platform",
+            "https://www.googleapis.com/auth/compute"
+          ]
+        },
+        "detachNetworkEndpoints": {
+          "description": "Detach the network endpoint from the specified network endpoint group.",
+          "httpMethod": "POST",
+          "id": "compute.globalNetworkEndpointGroups.detachNetworkEndpoints",
+          "parameterOrder": [
+            "project",
+            "networkEndpointGroup"
+          ],
+          "parameters": {
+            "networkEndpointGroup": {
+              "description": "The name of the network endpoint group where you are removing network endpoints. It should comply with RFC1035.",
+              "location": "path",
+              "required": true,
+              "type": "string"
+            },
+            "project": {
+              "description": "Project ID for this request.",
+              "location": "path",
+              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
+              "required": true,
+              "type": "string"
+            },
+            "requestId": {
+              "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).",
+              "location": "query",
+              "type": "string"
+            }
+          },
+          "path": "{project}/global/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints",
+          "request": {
+            "$ref": "GlobalNetworkEndpointGroupsDetachEndpointsRequest"
+          },
+          "response": {
+            "$ref": "Operation"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/cloud-platform",
+            "https://www.googleapis.com/auth/compute"
+          ]
+        },
+        "get": {
+          "description": "Returns the specified network endpoint group. Gets a list of available network endpoint groups by making a list() request.",
+          "httpMethod": "GET",
+          "id": "compute.globalNetworkEndpointGroups.get",
+          "parameterOrder": [
+            "project",
+            "networkEndpointGroup"
+          ],
+          "parameters": {
+            "networkEndpointGroup": {
+              "description": "The name of the network endpoint group. It should comply with RFC1035.",
+              "location": "path",
+              "required": true,
+              "type": "string"
+            },
+            "project": {
+              "description": "Project ID for this request.",
+              "location": "path",
+              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
+              "required": true,
+              "type": "string"
+            }
+          },
+          "path": "{project}/global/networkEndpointGroups/{networkEndpointGroup}",
+          "response": {
+            "$ref": "NetworkEndpointGroup"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/cloud-platform",
+            "https://www.googleapis.com/auth/compute",
+            "https://www.googleapis.com/auth/compute.readonly"
+          ]
+        },
+        "insert": {
+          "description": "Creates a network endpoint group in the specified project using the parameters that are included in the request.",
+          "httpMethod": "POST",
+          "id": "compute.globalNetworkEndpointGroups.insert",
+          "parameterOrder": [
+            "project"
+          ],
+          "parameters": {
+            "project": {
+              "description": "Project ID for this request.",
+              "location": "path",
+              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
+              "required": true,
+              "type": "string"
+            },
+            "requestId": {
+              "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).",
+              "location": "query",
+              "type": "string"
+            }
+          },
+          "path": "{project}/global/networkEndpointGroups",
+          "request": {
+            "$ref": "NetworkEndpointGroup"
+          },
+          "response": {
+            "$ref": "Operation"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/cloud-platform",
+            "https://www.googleapis.com/auth/compute"
+          ]
+        },
+        "list": {
+          "description": "Retrieves the list of network endpoint groups that are located in the specified project.",
+          "httpMethod": "GET",
+          "id": "compute.globalNetworkEndpointGroups.list",
+          "parameterOrder": [
+            "project"
+          ],
+          "parameters": {
+            "filter": {
+              "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).",
+              "location": "query",
+              "type": "string"
+            },
+            "maxResults": {
+              "default": "500",
+              "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)",
+              "format": "uint32",
+              "location": "query",
+              "minimum": "0",
+              "type": "integer"
+            },
+            "orderBy": {
+              "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.",
+              "location": "query",
+              "type": "string"
+            },
+            "pageToken": {
+              "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.",
+              "location": "query",
+              "type": "string"
+            },
+            "project": {
+              "description": "Project ID for this request.",
+              "location": "path",
+              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
+              "required": true,
+              "type": "string"
+            }
+          },
+          "path": "{project}/global/networkEndpointGroups",
+          "response": {
+            "$ref": "NetworkEndpointGroupList"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/cloud-platform",
+            "https://www.googleapis.com/auth/compute",
+            "https://www.googleapis.com/auth/compute.readonly"
+          ]
+        },
+        "listNetworkEndpoints": {
+          "description": "Lists the network endpoints in the specified network endpoint group.",
+          "httpMethod": "POST",
+          "id": "compute.globalNetworkEndpointGroups.listNetworkEndpoints",
+          "parameterOrder": [
+            "project",
+            "networkEndpointGroup"
+          ],
+          "parameters": {
+            "filter": {
+              "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).",
+              "location": "query",
+              "type": "string"
+            },
+            "maxResults": {
+              "default": "500",
+              "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)",
+              "format": "uint32",
+              "location": "query",
+              "minimum": "0",
+              "type": "integer"
+            },
+            "networkEndpointGroup": {
+              "description": "The name of the network endpoint group from which you want to generate a list of included network endpoints. It should comply with RFC1035.",
+              "location": "path",
+              "required": true,
+              "type": "string"
+            },
+            "orderBy": {
+              "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.",
+              "location": "query",
+              "type": "string"
+            },
+            "pageToken": {
+              "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.",
+              "location": "query",
+              "type": "string"
+            },
+            "project": {
+              "description": "Project ID for this request.",
+              "location": "path",
+              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
+              "required": true,
+              "type": "string"
+            }
+          },
+          "path": "{project}/global/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints",
+          "response": {
+            "$ref": "NetworkEndpointGroupsListNetworkEndpoints"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/cloud-platform",
+            "https://www.googleapis.com/auth/compute",
+            "https://www.googleapis.com/auth/compute.readonly"
+          ]
+        }
+      }
+    },
     "globalOperations": {
       "methods": {
         "aggregatedList": {
@@ -7990,6 +8282,55 @@
             "https://www.googleapis.com/auth/compute.readonly"
           ]
         },
+        "getEffectiveFirewalls": {
+          "description": "Returns effective firewalls applied to an interface of the instance.",
+          "httpMethod": "GET",
+          "id": "compute.instances.getEffectiveFirewalls",
+          "parameterOrder": [
+            "project",
+            "zone",
+            "instance",
+            "networkInterface"
+          ],
+          "parameters": {
+            "instance": {
+              "description": "Name of the instance scoping this request.",
+              "location": "path",
+              "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?",
+              "required": true,
+              "type": "string"
+            },
+            "networkInterface": {
+              "description": "The name of the network interface to get the effective firewalls.",
+              "location": "query",
+              "required": true,
+              "type": "string"
+            },
+            "project": {
+              "description": "Project ID for this request.",
+              "location": "path",
+              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
+              "required": true,
+              "type": "string"
+            },
+            "zone": {
+              "description": "The name of the zone for this request.",
+              "location": "path",
+              "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?",
+              "required": true,
+              "type": "string"
+            }
+          },
+          "path": "{project}/zones/{zone}/instances/{instance}/getEffectiveFirewalls",
+          "response": {
+            "$ref": "InstancesGetEffectiveFirewallsResponse"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/cloud-platform",
+            "https://www.googleapis.com/auth/compute",
+            "https://www.googleapis.com/auth/compute.readonly"
+          ]
+        },
         "getGuestAttributes": {
           "description": "Returns the specified guest attributes entry.",
           "httpMethod": "GET",
@@ -12089,6 +12430,40 @@
             "https://www.googleapis.com/auth/compute.readonly"
           ]
         },
+        "getEffectiveFirewalls": {
+          "description": "Returns the effective firewalls on a given network.",
+          "httpMethod": "GET",
+          "id": "compute.networks.getEffectiveFirewalls",
+          "parameterOrder": [
+            "project",
+            "network"
+          ],
+          "parameters": {
+            "network": {
+              "description": "Name of the network for this request.",
+              "location": "path",
+              "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?",
+              "required": true,
+              "type": "string"
+            },
+            "project": {
+              "description": "Project ID for this request.",
+              "location": "path",
+              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
+              "required": true,
+              "type": "string"
+            }
+          },
+          "path": "{project}/global/networks/{network}/getEffectiveFirewalls",
+          "response": {
+            "$ref": "NetworksGetEffectiveFirewallsResponse"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/cloud-platform",
+            "https://www.googleapis.com/auth/compute",
+            "https://www.googleapis.com/auth/compute.readonly"
+          ]
+        },
         "insert": {
           "description": "Creates a network in the specified project using the data included in the request.",
           "httpMethod": "POST",
@@ -27310,7 +27685,7 @@
       }
     }
   },
-  "revision": "20190320",
+  "revision": "20190403",
   "rootUrl": "https://www.googleapis.com/",
   "schemas": {
     "AcceleratorConfig": {
@@ -28480,6 +28855,13 @@
           },
           "type": "array"
         },
+        "resourcePolicies": {
+          "description": "Resource policies applied to this disk for automatic snapshot creations. Specified using the full or partial URL. For instance template, specify only the resource policy name.",
+          "items": {
+            "type": "string"
+          },
+          "type": "array"
+        },
         "sourceImage": {
           "description": "The source image to create this disk. When creating a new instance, one of initializeParams.sourceImage or disks.source is required except for local SSD.\n\nTo create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-9 to use the latest Debian 9 image:\nprojects/debian-cloud/global/images/family/debian-9\n\n\nAlternatively, use a specific version of a public operating system image:\nprojects/debian-cloud/global/images/debian-9-stretch-vYYYYMMDD\n\n\nTo create a disk with a custom image that you created, specify the image name in the following format:\nglobal/images/my-custom-image\n\n\nYou can also specify a custom image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name:\nglobal/images/family/my-image-family\n\n\nIf the source image is deleted later, this field will not be set.",
           "type": "string"
@@ -30206,7 +30588,7 @@
       "properties": {
         "condition": {
           "$ref": "Expr",
-          "description": "The condition that is associated with this binding. NOTE: an unsatisfied condition will not allow user access via current binding. Different bindings, including their conditions, are examined independently."
+          "description": "The condition that is associated with this binding. NOTE: An unsatisfied condition will not allow user access via current binding. Different bindings, including their conditions, are examined independently."
         },
         "members": {
           "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` .\n\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.\n\n\n\n* `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`.",
@@ -32838,7 +33220,7 @@
       "id": "FixedOrPercent",
       "properties": {
         "calculated": {
-          "description": "[Output Only] Absolute value of VM instances calculated based on the specific mode.\n\n \n- If the value is fixed, then the caculated value is equal to the fixed value. \n- If the value is a percent, then the calculated value is percent/100 * targetSize. For example, the calculated value of a 80% of a managed instance group with 150 instances would be (80/100 * 150) = 120 VM instances. If there is a remainder, the number is rounded up.",
+          "description": "[Output Only] Absolute value of VM instances calculated based on the specific mode.\n\n \n- If the value is fixed, then the calculated value is equal to the fixed value. \n- If the value is a percent, then the calculated value is percent/100 * targetSize. For example, the calculated value of a 80% of a managed instance group with 150 instances would be (80/100 * 150) = 120 VM instances. If there is a remainder, the number is rounded up.",
           "format": "int32",
           "type": "integer"
         },
@@ -33362,6 +33744,32 @@
       },
       "type": "object"
     },
+    "GlobalNetworkEndpointGroupsAttachEndpointsRequest": {
+      "id": "GlobalNetworkEndpointGroupsAttachEndpointsRequest",
+      "properties": {
+        "networkEndpoints": {
+          "description": "The list of network endpoints to be attached.",
+          "items": {
+            "$ref": "NetworkEndpoint"
+          },
+          "type": "array"
+        }
+      },
+      "type": "object"
+    },
+    "GlobalNetworkEndpointGroupsDetachEndpointsRequest": {
+      "id": "GlobalNetworkEndpointGroupsDetachEndpointsRequest",
+      "properties": {
+        "networkEndpoints": {
+          "description": "The list of network endpoints to be detached.",
+          "items": {
+            "$ref": "NetworkEndpoint"
+          },
+          "type": "array"
+        }
+      },
+      "type": "object"
+    },
     "GlobalSetLabelsRequest": {
       "id": "GlobalSetLabelsRequest",
       "properties": {
@@ -33743,7 +34151,7 @@
           "type": "integer"
         },
         "type": {
-          "description": "Specifies the type of the healthCheck, either TCP, SSL, HTTP or HTTPS. If not specified, the default is TCP. Exactly one of the protocol-specific health check field must be specified, which must match type field.",
+          "description": "Specifies the type of the healthCheck, either TCP, SSL, HTTP, HTTPS or HTTP2. If not specified, the default is TCP. Exactly one of the protocol-specific health check field must be specified, which must match type field.",
           "enum": [
             "HTTP",
             "HTTP2",
@@ -36143,7 +36551,7 @@
         },
         "pendingActions": {
           "$ref": "InstanceGroupManagerPendingActionsSummary",
-          "description": "[Output Only] The list of instance actions and the number of instances in this managed instance group that are pending for each of those actions."
+          "description": "[Deprecated] This field is deprecated and will be removed. Prefer using the status field instead. Please contact cloud-updater-feedback@google.com to leave feedback if your workload relies on this field. [Output Only] The list of instance actions and the number of instances in this managed instance group that are pending for each of those actions."
         },
         "region": {
           "description": "[Output Only] The URL of the region where the managed instance group resides (for regional resources).",
@@ -36192,7 +36600,7 @@
           "description": "The update policy for this managed instance group."
         },
         "versions": {
-          "description": "Specifies the instance templates used by this managed instance group to create instances.\n\nEach version is defined by an instanceTemplate. Every template can appear at most once per instance group. This field overrides the top-level instanceTemplate field. Read more about the relationships between these fields. Exactly one version must leave the targetSize field unset. That version will be applied to all remaining instances. For more information, read about canary updates.",
+          "description": "Specifies the instance templates used by this managed instance group to create instances.\n\nEach version is defined by an instanceTemplate and a name. Every version can appear at most once per instance group. This field overrides the top-level instanceTemplate field. Read more about the relationships between these fields. Exactly one version must leave the targetSize field unset. That version will be applied to all remaining instances. For more information, read about canary updates.",
           "items": {
             "$ref": "InstanceGroupManagerVersion"
           },
@@ -36504,22 +36912,22 @@
       "id": "InstanceGroupManagerPendingActionsSummary",
       "properties": {
         "creating": {
-          "description": "[Output Only] The number of instances in the managed instance group that are pending to be created.",
+          "description": "[Deprecated] This field is deprecated and will be removed. Prefer using the status field instead. Please contact cloud-updater-feedback@google.com to leave feedback if your workload relies on this field. [Output Only] The number of instances in the managed instance group that are pending to be created.",
           "format": "int32",
           "type": "integer"
         },
         "deleting": {
-          "description": "[Output Only] The number of instances in the managed instance group that are pending to be deleted.",
+          "description": "[Deprecated] This field is deprecated and will be removed. Prefer using the status field instead. Please contact cloud-updater-feedback@google.com to leave feedback if your workload relies on this field. [Output Only] The number of instances in the managed instance group that are pending to be deleted.",
           "format": "int32",
           "type": "integer"
         },
         "recreating": {
-          "description": "[Output Only] The number of instances in the managed instance group that are pending to be recreated.",
+          "description": "[Deprecated] This field is deprecated and will be removed. Prefer using the status field instead. Please contact cloud-updater-feedback@google.com to leave feedback if your workload relies on this field. [Output Only] The number of instances in the managed instance group that are pending to be recreated.",
           "format": "int32",
           "type": "integer"
         },
         "restarting": {
-          "description": "[Output Only] The number of instances in the managed instance group that are pending to be restarted.",
+          "description": "[Deprecated] This field is deprecated and will be removed. Prefer using the status field instead. Please contact cloud-updater-feedback@google.com to leave feedback if your workload relies on this field. [Output Only] The number of instances in the managed instance group that are pending to be restarted.",
           "format": "int32",
           "type": "integer"
         }
@@ -36623,6 +37031,7 @@
       "id": "InstanceGroupManagerVersion",
       "properties": {
         "instanceTemplate": {
+          "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create new instances in the managed instance group until the `targetSize` for this version is reached.",
           "type": "string"
         },
         "name": {
@@ -37896,6 +38305,45 @@
       },
       "type": "object"
     },
+    "InstancesGetEffectiveFirewallsResponse": {
+      "id": "InstancesGetEffectiveFirewallsResponse",
+      "properties": {
+        "firewalls": {
+          "description": "Effective firewalls on the instance.",
+          "items": {
+            "$ref": "Firewall"
+          },
+          "type": "array"
+        },
+        "organizationFirewalls": {
+          "description": "Effective firewalls from organization policies.",
+          "items": {
+            "$ref": "InstancesGetEffectiveFirewallsResponseOrganizationFirewallPolicy"
+          },
+          "type": "array"
+        }
+      },
+      "type": "object"
+    },
+    "InstancesGetEffectiveFirewallsResponseOrganizationFirewallPolicy": {
+      "description": "A pruned SecurityPolicy containing ID and any applicable firewall rules.",
+      "id": "InstancesGetEffectiveFirewallsResponseOrganizationFirewallPolicy",
+      "properties": {
+        "id": {
+          "description": "The unique identifier for the security policy. This identifier is defined by the server.",
+          "format": "uint64",
+          "type": "string"
+        },
+        "rules": {
+          "description": "The rules that apply to the network.",
+          "items": {
+            "$ref": "SecurityPolicyRule"
+          },
+          "type": "array"
+        }
+      },
+      "type": "object"
+    },
     "InstancesRemoveResourcePoliciesRequest": {
       "id": "InstancesRemoveResourcePoliciesRequest",
       "properties": {
@@ -40026,6 +40474,24 @@
       },
       "type": "object"
     },
+    "LocalDisk": {
+      "id": "LocalDisk",
+      "properties": {
+        "diskCount": {
+          "description": "Specifies the number of such disks.",
+          "type": "string"
+        },
+        "diskSizeGb": {
+          "description": "Specifies the size of the disk in base-2 GB.",
+          "type": "string"
+        },
+        "diskType": {
+          "description": "Specifies the desired disk type on the node. This disk type must be a local storage type (e.g.: local-ssd). Note that for nodeTemplates, this should be the name of the disk type and not its URL.",
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
     "LogConfig": {
       "description": "Specifies what kind of log the caller must write",
       "id": "LogConfig",
@@ -41161,6 +41627,18 @@
           ],
           "type": "string"
         },
+        "multicastMode": {
+          "description": "The multicast mode for this network. If set to ZONAL, multicast is allowed within a zone. If set to DISABLED, multicast is disabled for this network. The default is DISABLED.",
+          "enum": [
+            "DISABLED",
+            "ZONAL"
+          ],
+          "enumDescriptions": [
+            "",
+            ""
+          ],
+          "type": "string"
+        },
         "name": {
           "annotations": {
             "required": [
@@ -41603,6 +42081,13 @@
     "NetworkEndpointGroupsListEndpointsRequest": {
       "id": "NetworkEndpointGroupsListEndpointsRequest",
       "properties": {
+        "endpointFilters": {
+          "description": "Optional list of endpoints to query. This is a more efficient but also limited version of filter parameter. Endpoints in the filter must have ip_address and port fields populated, other fields are not supported.",
+          "items": {
+            "$ref": "NetworkEndpointGroupsListEndpointsRequestNetworkEndpointFilter"
+          },
+          "type": "array"
+        },
         "healthStatus": {
           "description": "Optional query parameter for showing the health status of each network endpoint. Valid options are SKIP or SHOW. If you don't specifiy this parameter, the health status of network endpoints will not be provided.",
           "enum": [
@@ -41618,6 +42103,15 @@
       },
       "type": "object"
     },
+    "NetworkEndpointGroupsListEndpointsRequestNetworkEndpointFilter": {
+      "id": "NetworkEndpointGroupsListEndpointsRequestNetworkEndpointFilter",
+      "properties": {
+        "networkEndpoint": {
+          "$ref": "NetworkEndpoint"
+        }
+      },
+      "type": "object"
+    },
     "NetworkEndpointGroupsListNetworkEndpoints": {
       "id": "NetworkEndpointGroupsListNetworkEndpoints",
       "properties": {
@@ -42112,6 +42606,45 @@
       },
       "type": "object"
     },
+    "NetworksGetEffectiveFirewallsResponse": {
+      "id": "NetworksGetEffectiveFirewallsResponse",
+      "properties": {
+        "firewalls": {
+          "description": "Effective firewalls on the network.",
+          "items": {
+            "$ref": "Firewall"
+          },
+          "type": "array"
+        },
+        "organizationFirewalls": {
+          "description": "Effective firewalls from organization policies.",
+          "items": {
+            "$ref": "NetworksGetEffectiveFirewallsResponseOrganizationFirewallPolicy"
+          },
+          "type": "array"
+        }
+      },
+      "type": "object"
+    },
+    "NetworksGetEffectiveFirewallsResponseOrganizationFirewallPolicy": {
+      "description": "A pruned SecurityPolicy containing ID and any applicable firewall rules.",
+      "id": "NetworksGetEffectiveFirewallsResponseOrganizationFirewallPolicy",
+      "properties": {
+        "id": {
+          "description": "[Output Only] The unique identifier for the security policy. This identifier is defined by the server.",
+          "format": "uint64",
+          "type": "string"
+        },
+        "rules": {
+          "description": "The rules that apply to the network.",
+          "items": {
+            "$ref": "SecurityPolicyRule"
+          },
+          "type": "array"
+        }
+      },
+      "type": "object"
+    },
     "NetworksRemovePeeringRequest": {
       "id": "NetworksRemovePeeringRequest",
       "properties": {
@@ -42132,7 +42665,7 @@
       "type": "object"
     },
     "NodeGroup": {
-      "description": "A NodeGroup resource. (== resource_for beta.nodeGroups ==) (== resource_for v1.nodeGroups ==)",
+      "description": "A NodeGroup resource. To create a node group, you must first create a node templates. To learn more about node groups and sole-tenant nodes, read the Sole-tenant nodes documentation. (== resource_for beta.nodeGroups ==) (== resource_for v1.nodeGroups ==)",
       "id": "NodeGroup",
       "properties": {
         "autoscalingPolicy": {
@@ -42156,6 +42689,19 @@
           "description": "[Output Only] The type of the resource. Always compute#nodeGroup for node group.",
           "type": "string"
         },
+        "managedHoldback": {
+          "enum": [
+            "MANAGED_HOLDBACK_UNSPECIFIED",
+            "OFF",
+            "ON"
+          ],
+          "enumDescriptions": [
+            "",
+            "",
+            ""
+          ],
+          "type": "string"
+        },
         "name": {
           "description": "The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.",
           "type": "string"
@@ -42440,6 +42986,13 @@
     "NodeGroupNode": {
       "id": "NodeGroupNode",
       "properties": {
+        "disks": {
+          "description": "Local disk configurations.",
+          "items": {
+            "$ref": "LocalDisk"
+          },
+          "type": "array"
+        },
         "instances": {
           "description": "Instances scheduled on this node.",
           "items": {
@@ -42727,7 +43280,7 @@
       "type": "object"
     },
     "NodeTemplate": {
-      "description": "A Node Template resource.",
+      "description": "A Node Template resource. To learn more about node templates and sole-tenant nodes, read the Sole-tenant nodes documentation. (== resource_for beta.nodeTemplates ==) (== resource_for v1.nodeTemplates ==)",
       "id": "NodeTemplate",
       "properties": {
         "creationTimestamp": {
@@ -42738,6 +43291,12 @@
           "description": "An optional description of this resource. Provide this property when you create the resource.",
           "type": "string"
         },
+        "disks": {
+          "items": {
+            "$ref": "LocalDisk"
+          },
+          "type": "array"
+        },
         "id": {
           "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.",
           "format": "uint64",
@@ -46937,6 +47496,22 @@
           "$ref": "ResourcePolicySnapshotSchedulePolicy",
           "description": "Resource policy for persistent disks for creating snapshots."
         },
+        "status": {
+          "description": "[Output Only] The status of resource policy creation.",
+          "enum": [
+            "CREATING",
+            "DELETING",
+            "INVALID",
+            "READY"
+          ],
+          "enumDescriptions": [
+            "",
+            "",
+            "",
+            ""
+          ],
+          "type": "string"
+        },
         "vmMaintenancePolicy": {
           "$ref": "ResourcePolicyVmMaintenancePolicy",
           "description": "Resource policy applicable to VMs for infrastructure maintenance."
@@ -47488,6 +48063,10 @@
           "description": "The URL to an instance that should handle matching packets. You can specify this as a full or partial URL. For example:\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/",
           "type": "string"
         },
+        "nextHopInterconnectAttachment": {
+          "description": "[Output Only] The URL to an InterconnectAttachment which is the next hop for the route. This field will only be populated for the dynamic routes generated by Cloud Router with a linked interconnectAttachment.",
+          "type": "string"
+        },
         "nextHopIp": {
           "description": "The network IP address of an instance that should handle matching packets. Only IPv4 is supported.",
           "type": "string"
@@ -48105,7 +48684,7 @@
           "type": "integer"
         },
         "mode": {
-          "description": "The BFD session initiation mode for this BGP peer. If set to ACTIVE, the Cloud Router will initiate the BFD session for this BGP peer. If set to PASSIVE, the Cloud Router will wait for the peer router to initiate the BFD session for this BGP peer. If set to DISABLED, BFD is disabled for this BGP peer. The default is PASSIVE.",
+          "description": "The BFD session initialization mode for this BGP peer. If set to ACTIVE, the Cloud Router will initiate the BFD session for this BGP peer. If set to PASSIVE, the Cloud Router will wait for the peer router to initiate the BFD session for this BGP peer. If set to DISABLED, BFD is disabled for this BGP peer. The default is PASSIVE.",
           "enum": [
             "ACTIVE",
             "DISABLED",
@@ -48958,6 +49537,10 @@
           "description": "Specifies whether the instance should be automatically restarted if it is terminated by Compute Engine (not terminated by a user). You can only set the automatic restart option for standard instances. Preemptible instances cannot be automatically restarted.\n\nBy default, this is set to true so an instance is automatically restarted if it is terminated by Compute Engine.",
           "type": "boolean"
         },
+        "latencyTolerant": {
+          "description": "Defines whether the instance is tolerant of higher cpu latency. This can only be set during instance creation, or when the instance is not currently running. It must not be set if the preemptible option is also set.",
+          "type": "boolean"
+        },
         "minNodeCpus": {
           "description": "The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node.",
           "format": "int32",
@@ -56242,7 +56825,7 @@
       "type": "object"
     },
     "Zone": {
-      "description": "A Zone resource. (== resource_for beta.zones ==) (== resource_for v1.zones ==)",
+      "description": "A Zone resource. (== resource_for beta.zones ==) (== resource_for v1.zones ==) Next ID: 17",
       "id": "Zone",
       "properties": {
         "availableCpuPlatforms": {
diff --git a/compute/v0.alpha/compute-gen.go b/compute/v0.alpha/compute-gen.go
index 9041478..8c336ed 100644
--- a/compute/v0.alpha/compute-gen.go
+++ b/compute/v0.alpha/compute-gen.go
@@ -147,6 +147,7 @@
 	s.ForwardingRules = NewForwardingRulesService(s)
 	s.GlobalAddresses = NewGlobalAddressesService(s)
 	s.GlobalForwardingRules = NewGlobalForwardingRulesService(s)
+	s.GlobalNetworkEndpointGroups = NewGlobalNetworkEndpointGroupsService(s)
 	s.GlobalOperations = NewGlobalOperationsService(s)
 	s.GlobalOrganizationOperations = NewGlobalOrganizationOperationsService(s)
 	s.HealthChecks = NewHealthChecksService(s)
@@ -240,6 +241,8 @@
 
 	GlobalForwardingRules *GlobalForwardingRulesService
 
+	GlobalNetworkEndpointGroups *GlobalNetworkEndpointGroupsService
+
 	GlobalOperations *GlobalOperationsService
 
 	GlobalOrganizationOperations *GlobalOrganizationOperationsService
@@ -478,6 +481,15 @@
 	s *Service
 }
 
+func NewGlobalNetworkEndpointGroupsService(s *Service) *GlobalNetworkEndpointGroupsService {
+	rs := &GlobalNetworkEndpointGroupsService{s: s}
+	return rs
+}
+
+type GlobalNetworkEndpointGroupsService struct {
+	s *Service
+}
+
 func NewGlobalOperationsService(s *Service) *GlobalOperationsService {
 	rs := &GlobalOperationsService{s: s}
 	return rs
@@ -2643,6 +2655,11 @@
 	// to. Only applicable for regional resources.
 	ReplicaZones []string `json:"replicaZones,omitempty"`
 
+	// ResourcePolicies: Resource policies applied to this disk for
+	// automatic snapshot creations. Specified using the full or partial
+	// URL. For instance template, specify only the resource policy name.
+	ResourcePolicies []string `json:"resourcePolicies,omitempty"`
+
 	// SourceImage: The source image to create this disk. When creating a
 	// new instance, one of initializeParams.sourceImage or disks.source is
 	// required except for local SSD.
@@ -5512,7 +5529,7 @@
 // Binding: Associates `members` with a `role`.
 type Binding struct {
 	// Condition: The condition that is associated with this binding. NOTE:
-	// an unsatisfied condition will not allow user access via current
+	// An unsatisfied condition will not allow user access via current
 	// binding. Different bindings, including their conditions, are examined
 	// independently.
 	Condition *Expr `json:"condition,omitempty"`
@@ -9400,7 +9417,7 @@
 	// based on the specific mode.
 	//
 	//
-	// - If the value is fixed, then the caculated value is equal to the
+	// - If the value is fixed, then the calculated value is equal to the
 	// fixed value.
 	// - If the value is a percent, then the calculated value is percent/100
 	// * targetSize. For example, the calculated value of a 80% of a managed
@@ -10229,6 +10246,62 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+type GlobalNetworkEndpointGroupsAttachEndpointsRequest struct {
+	// NetworkEndpoints: The list of network endpoints to be attached.
+	NetworkEndpoints []*NetworkEndpoint `json:"networkEndpoints,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "NetworkEndpoints") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "NetworkEndpoints") to
+	// include in API requests with the JSON null value. By default, fields
+	// with empty values are omitted from API requests. However, any field
+	// with an empty value appearing in NullFields will be sent to the
+	// server as null. It is an error if a field in this list has a
+	// non-empty value. This may be used to include null fields in Patch
+	// requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *GlobalNetworkEndpointGroupsAttachEndpointsRequest) MarshalJSON() ([]byte, error) {
+	type NoMethod GlobalNetworkEndpointGroupsAttachEndpointsRequest
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+type GlobalNetworkEndpointGroupsDetachEndpointsRequest struct {
+	// NetworkEndpoints: The list of network endpoints to be detached.
+	NetworkEndpoints []*NetworkEndpoint `json:"networkEndpoints,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "NetworkEndpoints") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "NetworkEndpoints") to
+	// include in API requests with the JSON null value. By default, fields
+	// with empty values are omitted from API requests. However, any field
+	// with an empty value appearing in NullFields will be sent to the
+	// server as null. It is an error if a field in this list has a
+	// non-empty value. This may be used to include null fields in Patch
+	// requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *GlobalNetworkEndpointGroupsDetachEndpointsRequest) MarshalJSON() ([]byte, error) {
+	type NoMethod GlobalNetworkEndpointGroupsDetachEndpointsRequest
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
 type GlobalSetLabelsRequest struct {
 	// LabelFingerprint: The fingerprint of the previous set of labels for
 	// this resource, used to detect conflicts. The fingerprint is initially
@@ -10803,10 +10876,10 @@
 	// greater value than checkIntervalSec.
 	TimeoutSec int64 `json:"timeoutSec,omitempty"`
 
-	// Type: Specifies the type of the healthCheck, either TCP, SSL, HTTP or
-	// HTTPS. If not specified, the default is TCP. Exactly one of the
-	// protocol-specific health check field must be specified, which must
-	// match type field.
+	// Type: Specifies the type of the healthCheck, either TCP, SSL, HTTP,
+	// HTTPS or HTTP2. If not specified, the default is TCP. Exactly one of
+	// the protocol-specific health check field must be specified, which
+	// must match type field.
 	//
 	// Possible values:
 	//   "HTTP"
@@ -14241,9 +14314,12 @@
 	// complementary to this Instance Group Manager.
 	NamedPorts []*NamedPort `json:"namedPorts,omitempty"`
 
-	// PendingActions: [Output Only] The list of instance actions and the
-	// number of instances in this managed instance group that are pending
-	// for each of those actions.
+	// PendingActions: [Deprecated] This field is deprecated and will be
+	// removed. Prefer using the status field instead. Please contact
+	// cloud-updater-feedback@google.com to leave feedback if your workload
+	// relies on this field. [Output Only] The list of instance actions and
+	// the number of instances in this managed instance group that are
+	// pending for each of those actions.
 	PendingActions *InstanceGroupManagerPendingActionsSummary `json:"pendingActions,omitempty"`
 
 	// Region: [Output Only] The URL of the region where the managed
@@ -14288,12 +14364,12 @@
 	// Versions: Specifies the instance templates used by this managed
 	// instance group to create instances.
 	//
-	// Each version is defined by an instanceTemplate. Every template can
-	// appear at most once per instance group. This field overrides the
-	// top-level instanceTemplate field. Read more about the relationships
-	// between these fields. Exactly one version must leave the targetSize
-	// field unset. That version will be applied to all remaining instances.
-	// For more information, read about canary updates.
+	// Each version is defined by an instanceTemplate and a name. Every
+	// version can appear at most once per instance group. This field
+	// overrides the top-level instanceTemplate field. Read more about the
+	// relationships between these fields. Exactly one version must leave
+	// the targetSize field unset. That version will be applied to all
+	// remaining instances. For more information, read about canary updates.
 	Versions []*InstanceGroupManagerVersion `json:"versions,omitempty"`
 
 	// Zone: [Output Only] The URL of the zone where the managed instance
@@ -14775,20 +14851,32 @@
 }
 
 type InstanceGroupManagerPendingActionsSummary struct {
-	// Creating: [Output Only] The number of instances in the managed
-	// instance group that are pending to be created.
+	// Creating: [Deprecated] This field is deprecated and will be removed.
+	// Prefer using the status field instead. Please contact
+	// cloud-updater-feedback@google.com to leave feedback if your workload
+	// relies on this field. [Output Only] The number of instances in the
+	// managed instance group that are pending to be created.
 	Creating int64 `json:"creating,omitempty"`
 
-	// Deleting: [Output Only] The number of instances in the managed
-	// instance group that are pending to be deleted.
+	// Deleting: [Deprecated] This field is deprecated and will be removed.
+	// Prefer using the status field instead. Please contact
+	// cloud-updater-feedback@google.com to leave feedback if your workload
+	// relies on this field. [Output Only] The number of instances in the
+	// managed instance group that are pending to be deleted.
 	Deleting int64 `json:"deleting,omitempty"`
 
-	// Recreating: [Output Only] The number of instances in the managed
-	// instance group that are pending to be recreated.
+	// Recreating: [Deprecated] This field is deprecated and will be
+	// removed. Prefer using the status field instead. Please contact
+	// cloud-updater-feedback@google.com to leave feedback if your workload
+	// relies on this field. [Output Only] The number of instances in the
+	// managed instance group that are pending to be recreated.
 	Recreating int64 `json:"recreating,omitempty"`
 
-	// Restarting: [Output Only] The number of instances in the managed
-	// instance group that are pending to be restarted.
+	// Restarting: [Deprecated] This field is deprecated and will be
+	// removed. Prefer using the status field instead. Please contact
+	// cloud-updater-feedback@google.com to leave feedback if your workload
+	// relies on this field. [Output Only] The number of instances in the
+	// managed instance group that are pending to be restarted.
 	Restarting int64 `json:"restarting,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "Creating") to
@@ -14976,6 +15064,10 @@
 }
 
 type InstanceGroupManagerVersion struct {
+	// InstanceTemplate: The URL of the instance template that is specified
+	// for this managed instance group. The group uses this template to
+	// create new instances in the managed instance group until the
+	// `targetSize` for this version is reached.
 	InstanceTemplate string `json:"instanceTemplate,omitempty"`
 
 	// Name: Name of the version. Unique among all versions in the scope of
@@ -16977,6 +17069,75 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+type InstancesGetEffectiveFirewallsResponse struct {
+	// Firewalls: Effective firewalls on the instance.
+	Firewalls []*Firewall `json:"firewalls,omitempty"`
+
+	// OrganizationFirewalls: Effective firewalls from organization
+	// policies.
+	OrganizationFirewalls []*InstancesGetEffectiveFirewallsResponseOrganizationFirewallPolicy `json:"organizationFirewalls,omitempty"`
+
+	// ServerResponse contains the HTTP response code and headers from the
+	// server.
+	googleapi.ServerResponse `json:"-"`
+
+	// ForceSendFields is a list of field names (e.g. "Firewalls") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "Firewalls") to include in
+	// API requests with the JSON null value. By default, fields with empty
+	// values are omitted from API requests. However, any field with an
+	// empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *InstancesGetEffectiveFirewallsResponse) MarshalJSON() ([]byte, error) {
+	type NoMethod InstancesGetEffectiveFirewallsResponse
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// InstancesGetEffectiveFirewallsResponseOrganizationFirewallPolicy: A
+// pruned SecurityPolicy containing ID and any applicable firewall
+// rules.
+type InstancesGetEffectiveFirewallsResponseOrganizationFirewallPolicy struct {
+	// Id: The unique identifier for the security policy. This identifier is
+	// defined by the server.
+	Id uint64 `json:"id,omitempty,string"`
+
+	// Rules: The rules that apply to the network.
+	Rules []*SecurityPolicyRule `json:"rules,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "Id") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "Id") to include in API
+	// requests with the JSON null value. By default, fields with empty
+	// values are omitted from API requests. However, any field with an
+	// empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *InstancesGetEffectiveFirewallsResponseOrganizationFirewallPolicy) MarshalJSON() ([]byte, error) {
+	type NoMethod InstancesGetEffectiveFirewallsResponseOrganizationFirewallPolicy
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
 type InstancesRemoveResourcePoliciesRequest struct {
 	// ResourcePolicies: Resource policies to be removed from this instance.
 	ResourcePolicies []string `json:"resourcePolicies,omitempty"`
@@ -20000,6 +20161,42 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+type LocalDisk struct {
+	// DiskCount: Specifies the number of such disks.
+	DiskCount string `json:"diskCount,omitempty"`
+
+	// DiskSizeGb: Specifies the size of the disk in base-2 GB.
+	DiskSizeGb string `json:"diskSizeGb,omitempty"`
+
+	// DiskType: Specifies the desired disk type on the node. This disk type
+	// must be a local storage type (e.g.: local-ssd). Note that for
+	// nodeTemplates, this should be the name of the disk type and not its
+	// URL.
+	DiskType string `json:"diskType,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "DiskCount") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "DiskCount") to include in
+	// API requests with the JSON null value. By default, fields with empty
+	// values are omitted from API requests. However, any field with an
+	// empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *LocalDisk) MarshalJSON() ([]byte, error) {
+	type NoMethod LocalDisk
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
 // LogConfig: Specifies what kind of log the caller must write
 type LogConfig struct {
 	// CloudAudit: Cloud audit options.
@@ -21692,6 +21889,15 @@
 	//   "UNENCRYPTED"
 	LoadBalancerVmEncryption string `json:"loadBalancerVmEncryption,omitempty"`
 
+	// MulticastMode: The multicast mode for this network. If set to ZONAL,
+	// multicast is allowed within a zone. If set to DISABLED, multicast is
+	// disabled for this network. The default is DISABLED.
+	//
+	// Possible values:
+	//   "DISABLED"
+	//   "ZONAL"
+	MulticastMode string `json:"multicastMode,omitempty"`
+
 	// Name: Name of the resource. Provided by the client when the resource
 	// is created. The name must be 1-63 characters long, and comply with
 	// RFC1035. Specifically, the name must be 1-63 characters long and
@@ -22319,6 +22525,12 @@
 }
 
 type NetworkEndpointGroupsListEndpointsRequest struct {
+	// EndpointFilters: Optional list of endpoints to query. This is a more
+	// efficient but also limited version of filter parameter. Endpoints in
+	// the filter must have ip_address and port fields populated, other
+	// fields are not supported.
+	EndpointFilters []*NetworkEndpointGroupsListEndpointsRequestNetworkEndpointFilter `json:"endpointFilters,omitempty"`
+
 	// HealthStatus: Optional query parameter for showing the health status
 	// of each network endpoint. Valid options are SKIP or SHOW. If you
 	// don't specifiy this parameter, the health status of network endpoints
@@ -22329,7 +22541,7 @@
 	//   "SKIP"
 	HealthStatus string `json:"healthStatus,omitempty"`
 
-	// ForceSendFields is a list of field names (e.g. "HealthStatus") to
+	// ForceSendFields is a list of field names (e.g. "EndpointFilters") to
 	// unconditionally include in API requests. By default, fields with
 	// empty values are omitted from API requests. However, any non-pointer,
 	// non-interface field appearing in ForceSendFields will be sent to the
@@ -22337,12 +22549,13 @@
 	// used to include empty fields in Patch requests.
 	ForceSendFields []string `json:"-"`
 
-	// NullFields is a list of field names (e.g. "HealthStatus") to include
-	// in API requests with the JSON null value. By default, fields with
-	// empty values are omitted from API requests. However, any field with
-	// an empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
+	// NullFields is a list of field names (e.g. "EndpointFilters") to
+	// include in API requests with the JSON null value. By default, fields
+	// with empty values are omitted from API requests. However, any field
+	// with an empty value appearing in NullFields will be sent to the
+	// server as null. It is an error if a field in this list has a
+	// non-empty value. This may be used to include null fields in Patch
+	// requests.
 	NullFields []string `json:"-"`
 }
 
@@ -22352,6 +22565,33 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+type NetworkEndpointGroupsListEndpointsRequestNetworkEndpointFilter struct {
+	NetworkEndpoint *NetworkEndpoint `json:"networkEndpoint,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "NetworkEndpoint") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "NetworkEndpoint") to
+	// include in API requests with the JSON null value. By default, fields
+	// with empty values are omitted from API requests. However, any field
+	// with an empty value appearing in NullFields will be sent to the
+	// server as null. It is an error if a field in this list has a
+	// non-empty value. This may be used to include null fields in Patch
+	// requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *NetworkEndpointGroupsListEndpointsRequestNetworkEndpointFilter) MarshalJSON() ([]byte, error) {
+	type NoMethod NetworkEndpointGroupsListEndpointsRequestNetworkEndpointFilter
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
 type NetworkEndpointGroupsListNetworkEndpoints struct {
 	// Id: [Output Only] Unique identifier for the resource; defined by the
 	// server.
@@ -23109,6 +23349,75 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+type NetworksGetEffectiveFirewallsResponse struct {
+	// Firewalls: Effective firewalls on the network.
+	Firewalls []*Firewall `json:"firewalls,omitempty"`
+
+	// OrganizationFirewalls: Effective firewalls from organization
+	// policies.
+	OrganizationFirewalls []*NetworksGetEffectiveFirewallsResponseOrganizationFirewallPolicy `json:"organizationFirewalls,omitempty"`
+
+	// ServerResponse contains the HTTP response code and headers from the
+	// server.
+	googleapi.ServerResponse `json:"-"`
+
+	// ForceSendFields is a list of field names (e.g. "Firewalls") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "Firewalls") to include in
+	// API requests with the JSON null value. By default, fields with empty
+	// values are omitted from API requests. However, any field with an
+	// empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *NetworksGetEffectiveFirewallsResponse) MarshalJSON() ([]byte, error) {
+	type NoMethod NetworksGetEffectiveFirewallsResponse
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// NetworksGetEffectiveFirewallsResponseOrganizationFirewallPolicy: A
+// pruned SecurityPolicy containing ID and any applicable firewall
+// rules.
+type NetworksGetEffectiveFirewallsResponseOrganizationFirewallPolicy struct {
+	// Id: [Output Only] The unique identifier for the security policy. This
+	// identifier is defined by the server.
+	Id uint64 `json:"id,omitempty,string"`
+
+	// Rules: The rules that apply to the network.
+	Rules []*SecurityPolicyRule `json:"rules,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "Id") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "Id") to include in API
+	// requests with the JSON null value. By default, fields with empty
+	// values are omitted from API requests. However, any field with an
+	// empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *NetworksGetEffectiveFirewallsResponseOrganizationFirewallPolicy) MarshalJSON() ([]byte, error) {
+	type NoMethod NetworksGetEffectiveFirewallsResponseOrganizationFirewallPolicy
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
 type NetworksRemovePeeringRequest struct {
 	// Name: Name of the peering, which should conform to RFC1035.
 	Name string `json:"name,omitempty"`
@@ -23163,8 +23472,10 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
-// NodeGroup: A NodeGroup resource. (== resource_for beta.nodeGroups ==)
-// (== resource_for v1.nodeGroups ==)
+// NodeGroup: A NodeGroup resource. To create a node group, you must
+// first create a node templates. To learn more about node groups and
+// sole-tenant nodes, read the Sole-tenant nodes documentation. (==
+// resource_for beta.nodeGroups ==) (== resource_for v1.nodeGroups ==)
 type NodeGroup struct {
 	AutoscalingPolicy *NodeGroupAutoscalingPolicy `json:"autoscalingPolicy,omitempty"`
 
@@ -23184,6 +23495,12 @@
 	// compute#nodeGroup for node group.
 	Kind string `json:"kind,omitempty"`
 
+	// Possible values:
+	//   "MANAGED_HOLDBACK_UNSPECIFIED"
+	//   "OFF"
+	//   "ON"
+	ManagedHoldback string `json:"managedHoldback,omitempty"`
+
 	// Name: The name of the resource, provided by the client when initially
 	// creating the resource. The resource name must be 1-63 characters
 	// long, and comply with RFC1035. Specifically, the name must be 1-63
@@ -23586,6 +23903,9 @@
 }
 
 type NodeGroupNode struct {
+	// Disks: Local disk configurations.
+	Disks []*LocalDisk `json:"disks,omitempty"`
+
 	// Instances: Instances scheduled on this node.
 	Instances []string `json:"instances,omitempty"`
 
@@ -23606,7 +23926,7 @@
 	//   "REPAIRING"
 	Status string `json:"status,omitempty"`
 
-	// ForceSendFields is a list of field names (e.g. "Instances") to
+	// ForceSendFields is a list of field names (e.g. "Disks") to
 	// unconditionally include in API requests. By default, fields with
 	// empty values are omitted from API requests. However, any non-pointer,
 	// non-interface field appearing in ForceSendFields will be sent to the
@@ -23614,8 +23934,8 @@
 	// used to include empty fields in Patch requests.
 	ForceSendFields []string `json:"-"`
 
-	// NullFields is a list of field names (e.g. "Instances") to include in
-	// API requests with the JSON null value. By default, fields with empty
+	// NullFields is a list of field names (e.g. "Disks") to include in API
+	// requests with the JSON null value. By default, fields with empty
 	// values are omitted from API requests. However, any field with an
 	// empty value appearing in NullFields will be sent to the server as
 	// null. It is an error if a field in this list has a non-empty value.
@@ -24029,7 +24349,10 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
-// NodeTemplate: A Node Template resource.
+// NodeTemplate: A Node Template resource. To learn more about node
+// templates and sole-tenant nodes, read the Sole-tenant nodes
+// documentation. (== resource_for beta.nodeTemplates ==) (==
+// resource_for v1.nodeTemplates ==)
 type NodeTemplate struct {
 	// CreationTimestamp: [Output Only] Creation timestamp in RFC3339 text
 	// format.
@@ -24039,6 +24362,8 @@
 	// property when you create the resource.
 	Description string `json:"description,omitempty"`
 
+	Disks []*LocalDisk `json:"disks,omitempty"`
+
 	// Id: [Output Only] The unique identifier for the resource. This
 	// identifier is defined by the server.
 	Id uint64 `json:"id,omitempty,string"`
@@ -30132,6 +30457,15 @@
 	// creating snapshots.
 	SnapshotSchedulePolicy *ResourcePolicySnapshotSchedulePolicy `json:"snapshotSchedulePolicy,omitempty"`
 
+	// Status: [Output Only] The status of resource policy creation.
+	//
+	// Possible values:
+	//   "CREATING"
+	//   "DELETING"
+	//   "INVALID"
+	//   "READY"
+	Status string `json:"status,omitempty"`
+
 	// VmMaintenancePolicy: Resource policy applicable to VMs for
 	// infrastructure maintenance.
 	VmMaintenancePolicy *ResourcePolicyVmMaintenancePolicy `json:"vmMaintenancePolicy,omitempty"`
@@ -30970,6 +31304,12 @@
 	// zone/instances/
 	NextHopInstance string `json:"nextHopInstance,omitempty"`
 
+	// NextHopInterconnectAttachment: [Output Only] The URL to an
+	// InterconnectAttachment which is the next hop for the route. This
+	// field will only be populated for the dynamic routes generated by
+	// Cloud Router with a linked interconnectAttachment.
+	NextHopInterconnectAttachment string `json:"nextHopInterconnectAttachment,omitempty"`
+
 	// NextHopIp: The network IP address of an instance that should handle
 	// matching packets. Only IPv4 is supported.
 	NextHopIp string `json:"nextHopIp,omitempty"`
@@ -31757,9 +32097,9 @@
 	// value must be between 33 and 30000. The default is 300.
 	MinTransmitInterval int64 `json:"minTransmitInterval,omitempty"`
 
-	// Mode: The BFD session initiation mode for this BGP peer. If set to
-	// ACTIVE, the Cloud Router will initiate the BFD session for this BGP
-	// peer. If set to PASSIVE, the Cloud Router will wait for the peer
+	// Mode: The BFD session initialization mode for this BGP peer. If set
+	// to ACTIVE, the Cloud Router will initiate the BFD session for this
+	// BGP peer. If set to PASSIVE, the Cloud Router will wait for the peer
 	// router to initiate the BFD session for this BGP peer. If set to
 	// DISABLED, BFD is disabled for this BGP peer. The default is PASSIVE.
 	//
@@ -32892,6 +33232,12 @@
 	// restarted if it is terminated by Compute Engine.
 	AutomaticRestart *bool `json:"automaticRestart,omitempty"`
 
+	// LatencyTolerant: Defines whether the instance is tolerant of higher
+	// cpu latency. This can only be set during instance creation, or when
+	// the instance is not currently running. It must not be set if the
+	// preemptible option is also set.
+	LatencyTolerant bool `json:"latencyTolerant,omitempty"`
+
 	// MinNodeCpus: The minimum number of virtual CPUs this instance will
 	// consume when running on a sole-tenant node.
 	MinNodeCpus int64 `json:"minNodeCpus,omitempty"`
@@ -43812,7 +44158,7 @@
 }
 
 // Zone: A Zone resource. (== resource_for beta.zones ==) (==
-// resource_for v1.zones ==)
+// resource_for v1.zones ==) Next ID: 17
 type Zone struct {
 	// AvailableCpuPlatforms: [Output Only] Available cpu/platform
 	// selections for the zone.
@@ -61465,6 +61811,1339 @@
 
 }
 
+// method id "compute.globalNetworkEndpointGroups.attachNetworkEndpoints":
+
+type GlobalNetworkEndpointGroupsAttachNetworkEndpointsCall struct {
+	s                                                 *Service
+	project                                           string
+	networkEndpointGroup                              string
+	globalnetworkendpointgroupsattachendpointsrequest *GlobalNetworkEndpointGroupsAttachEndpointsRequest
+	urlParams_                                        gensupport.URLParams
+	ctx_                                              context.Context
+	header_                                           http.Header
+}
+
+// AttachNetworkEndpoints: Attach a network endpoint to the specified
+// network endpoint group.
+func (r *GlobalNetworkEndpointGroupsService) AttachNetworkEndpoints(project string, networkEndpointGroup string, globalnetworkendpointgroupsattachendpointsrequest *GlobalNetworkEndpointGroupsAttachEndpointsRequest) *GlobalNetworkEndpointGroupsAttachNetworkEndpointsCall {
+	c := &GlobalNetworkEndpointGroupsAttachNetworkEndpointsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.project = project
+	c.networkEndpointGroup = networkEndpointGroup
+	c.globalnetworkendpointgroupsattachendpointsrequest = globalnetworkendpointgroupsattachendpointsrequest
+	return c
+}
+
+// RequestId sets the optional parameter "requestId": An optional
+// request ID to identify requests. Specify a unique request ID so that
+// if you must retry your request, the server will know to ignore the
+// request if it has already been completed.
+//
+// For example, consider a situation where you make an initial request
+// and the request times out. If you make the request again with the
+// same request ID, the server can check if original operation with the
+// same request ID was received, and if so, will ignore the second
+// request. This prevents clients from accidentally creating duplicate
+// commitments.
+//
+// The request ID must be a valid UUID with the exception that zero UUID
+// is not supported (00000000-0000-0000-0000-000000000000).
+func (c *GlobalNetworkEndpointGroupsAttachNetworkEndpointsCall) RequestId(requestId string) *GlobalNetworkEndpointGroupsAttachNetworkEndpointsCall {
+	c.urlParams_.Set("requestId", requestId)
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *GlobalNetworkEndpointGroupsAttachNetworkEndpointsCall) Fields(s ...googleapi.Field) *GlobalNetworkEndpointGroupsAttachNetworkEndpointsCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *GlobalNetworkEndpointGroupsAttachNetworkEndpointsCall) Context(ctx context.Context) *GlobalNetworkEndpointGroupsAttachNetworkEndpointsCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *GlobalNetworkEndpointGroupsAttachNetworkEndpointsCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *GlobalNetworkEndpointGroupsAttachNetworkEndpointsCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	var body io.Reader = nil
+	body, err := googleapi.WithoutDataWrapper.JSONReader(c.globalnetworkendpointgroupsattachendpointsrequest)
+	if err != nil {
+		return nil, err
+	}
+	reqHeaders.Set("Content-Type", "application/json")
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("POST", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	googleapi.Expand(req.URL, map[string]string{
+		"project":              c.project,
+		"networkEndpointGroup": c.networkEndpointGroup,
+	})
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "compute.globalNetworkEndpointGroups.attachNetworkEndpoints" call.
+// Exactly one of *Operation or error will be non-nil. Any non-2xx
+// status code is an error. Response headers are in either
+// *Operation.ServerResponse.Header or (if a response was returned at
+// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
+// to check whether the returned error was because
+// http.StatusNotModified was returned.
+func (c *GlobalNetworkEndpointGroupsAttachNetworkEndpointsCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &Operation{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Attach a network endpoint to the specified network endpoint group.",
+	//   "httpMethod": "POST",
+	//   "id": "compute.globalNetworkEndpointGroups.attachNetworkEndpoints",
+	//   "parameterOrder": [
+	//     "project",
+	//     "networkEndpointGroup"
+	//   ],
+	//   "parameters": {
+	//     "networkEndpointGroup": {
+	//       "description": "The name of the network endpoint group where you are attaching network endpoints to. It should comply with RFC1035.",
+	//       "location": "path",
+	//       "required": true,
+	//       "type": "string"
+	//     },
+	//     "project": {
+	//       "description": "Project ID for this request.",
+	//       "location": "path",
+	//       "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
+	//       "required": true,
+	//       "type": "string"
+	//     },
+	//     "requestId": {
+	//       "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).",
+	//       "location": "query",
+	//       "type": "string"
+	//     }
+	//   },
+	//   "path": "{project}/global/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints",
+	//   "request": {
+	//     "$ref": "GlobalNetworkEndpointGroupsAttachEndpointsRequest"
+	//   },
+	//   "response": {
+	//     "$ref": "Operation"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/cloud-platform",
+	//     "https://www.googleapis.com/auth/compute"
+	//   ]
+	// }
+
+}
+
+// method id "compute.globalNetworkEndpointGroups.delete":
+
+type GlobalNetworkEndpointGroupsDeleteCall struct {
+	s                    *Service
+	project              string
+	networkEndpointGroup string
+	urlParams_           gensupport.URLParams
+	ctx_                 context.Context
+	header_              http.Header
+}
+
+// Delete: Deletes the specified network endpoint group.Note that the
+// NEG cannot be deleted if there are backend services referencing it.
+func (r *GlobalNetworkEndpointGroupsService) Delete(project string, networkEndpointGroup string) *GlobalNetworkEndpointGroupsDeleteCall {
+	c := &GlobalNetworkEndpointGroupsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.project = project
+	c.networkEndpointGroup = networkEndpointGroup
+	return c
+}
+
+// RequestId sets the optional parameter "requestId": An optional
+// request ID to identify requests. Specify a unique request ID so that
+// if you must retry your request, the server will know to ignore the
+// request if it has already been completed.
+//
+// For example, consider a situation where you make an initial request
+// and the request times out. If you make the request again with the
+// same request ID, the server can check if original operation with the
+// same request ID was received, and if so, will ignore the second
+// request. This prevents clients from accidentally creating duplicate
+// commitments.
+//
+// The request ID must be a valid UUID with the exception that zero UUID
+// is not supported (00000000-0000-0000-0000-000000000000).
+func (c *GlobalNetworkEndpointGroupsDeleteCall) RequestId(requestId string) *GlobalNetworkEndpointGroupsDeleteCall {
+	c.urlParams_.Set("requestId", requestId)
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *GlobalNetworkEndpointGroupsDeleteCall) Fields(s ...googleapi.Field) *GlobalNetworkEndpointGroupsDeleteCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *GlobalNetworkEndpointGroupsDeleteCall) Context(ctx context.Context) *GlobalNetworkEndpointGroupsDeleteCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *GlobalNetworkEndpointGroupsDeleteCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *GlobalNetworkEndpointGroupsDeleteCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	var body io.Reader = nil
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/networkEndpointGroups/{networkEndpointGroup}")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("DELETE", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	googleapi.Expand(req.URL, map[string]string{
+		"project":              c.project,
+		"networkEndpointGroup": c.networkEndpointGroup,
+	})
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "compute.globalNetworkEndpointGroups.delete" call.
+// Exactly one of *Operation or error will be non-nil. Any non-2xx
+// status code is an error. Response headers are in either
+// *Operation.ServerResponse.Header or (if a response was returned at
+// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
+// to check whether the returned error was because
+// http.StatusNotModified was returned.
+func (c *GlobalNetworkEndpointGroupsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &Operation{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Deletes the specified network endpoint group.Note that the NEG cannot be deleted if there are backend services referencing it.",
+	//   "httpMethod": "DELETE",
+	//   "id": "compute.globalNetworkEndpointGroups.delete",
+	//   "parameterOrder": [
+	//     "project",
+	//     "networkEndpointGroup"
+	//   ],
+	//   "parameters": {
+	//     "networkEndpointGroup": {
+	//       "description": "The name of the network endpoint group to delete. It should comply with RFC1035.",
+	//       "location": "path",
+	//       "required": true,
+	//       "type": "string"
+	//     },
+	//     "project": {
+	//       "description": "Project ID for this request.",
+	//       "location": "path",
+	//       "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
+	//       "required": true,
+	//       "type": "string"
+	//     },
+	//     "requestId": {
+	//       "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).",
+	//       "location": "query",
+	//       "type": "string"
+	//     }
+	//   },
+	//   "path": "{project}/global/networkEndpointGroups/{networkEndpointGroup}",
+	//   "response": {
+	//     "$ref": "Operation"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/cloud-platform",
+	//     "https://www.googleapis.com/auth/compute"
+	//   ]
+	// }
+
+}
+
+// method id "compute.globalNetworkEndpointGroups.detachNetworkEndpoints":
+
+type GlobalNetworkEndpointGroupsDetachNetworkEndpointsCall struct {
+	s                                                 *Service
+	project                                           string
+	networkEndpointGroup                              string
+	globalnetworkendpointgroupsdetachendpointsrequest *GlobalNetworkEndpointGroupsDetachEndpointsRequest
+	urlParams_                                        gensupport.URLParams
+	ctx_                                              context.Context
+	header_                                           http.Header
+}
+
+// DetachNetworkEndpoints: Detach the network endpoint from the
+// specified network endpoint group.
+func (r *GlobalNetworkEndpointGroupsService) DetachNetworkEndpoints(project string, networkEndpointGroup string, globalnetworkendpointgroupsdetachendpointsrequest *GlobalNetworkEndpointGroupsDetachEndpointsRequest) *GlobalNetworkEndpointGroupsDetachNetworkEndpointsCall {
+	c := &GlobalNetworkEndpointGroupsDetachNetworkEndpointsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.project = project
+	c.networkEndpointGroup = networkEndpointGroup
+	c.globalnetworkendpointgroupsdetachendpointsrequest = globalnetworkendpointgroupsdetachendpointsrequest
+	return c
+}
+
+// RequestId sets the optional parameter "requestId": An optional
+// request ID to identify requests. Specify a unique request ID so that
+// if you must retry your request, the server will know to ignore the
+// request if it has already been completed.
+//
+// For example, consider a situation where you make an initial request
+// and the request times out. If you make the request again with the
+// same request ID, the server can check if original operation with the
+// same request ID was received, and if so, will ignore the second
+// request. This prevents clients from accidentally creating duplicate
+// commitments.
+//
+// The request ID must be a valid UUID with the exception that zero UUID
+// is not supported (00000000-0000-0000-0000-000000000000).
+func (c *GlobalNetworkEndpointGroupsDetachNetworkEndpointsCall) RequestId(requestId string) *GlobalNetworkEndpointGroupsDetachNetworkEndpointsCall {
+	c.urlParams_.Set("requestId", requestId)
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *GlobalNetworkEndpointGroupsDetachNetworkEndpointsCall) Fields(s ...googleapi.Field) *GlobalNetworkEndpointGroupsDetachNetworkEndpointsCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *GlobalNetworkEndpointGroupsDetachNetworkEndpointsCall) Context(ctx context.Context) *GlobalNetworkEndpointGroupsDetachNetworkEndpointsCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *GlobalNetworkEndpointGroupsDetachNetworkEndpointsCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *GlobalNetworkEndpointGroupsDetachNetworkEndpointsCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	var body io.Reader = nil
+	body, err := googleapi.WithoutDataWrapper.JSONReader(c.globalnetworkendpointgroupsdetachendpointsrequest)
+	if err != nil {
+		return nil, err
+	}
+	reqHeaders.Set("Content-Type", "application/json")
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("POST", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	googleapi.Expand(req.URL, map[string]string{
+		"project":              c.project,
+		"networkEndpointGroup": c.networkEndpointGroup,
+	})
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "compute.globalNetworkEndpointGroups.detachNetworkEndpoints" call.
+// Exactly one of *Operation or error will be non-nil. Any non-2xx
+// status code is an error. Response headers are in either
+// *Operation.ServerResponse.Header or (if a response was returned at
+// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
+// to check whether the returned error was because
+// http.StatusNotModified was returned.
+func (c *GlobalNetworkEndpointGroupsDetachNetworkEndpointsCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &Operation{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Detach the network endpoint from the specified network endpoint group.",
+	//   "httpMethod": "POST",
+	//   "id": "compute.globalNetworkEndpointGroups.detachNetworkEndpoints",
+	//   "parameterOrder": [
+	//     "project",
+	//     "networkEndpointGroup"
+	//   ],
+	//   "parameters": {
+	//     "networkEndpointGroup": {
+	//       "description": "The name of the network endpoint group where you are removing network endpoints. It should comply with RFC1035.",
+	//       "location": "path",
+	//       "required": true,
+	//       "type": "string"
+	//     },
+	//     "project": {
+	//       "description": "Project ID for this request.",
+	//       "location": "path",
+	//       "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
+	//       "required": true,
+	//       "type": "string"
+	//     },
+	//     "requestId": {
+	//       "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).",
+	//       "location": "query",
+	//       "type": "string"
+	//     }
+	//   },
+	//   "path": "{project}/global/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints",
+	//   "request": {
+	//     "$ref": "GlobalNetworkEndpointGroupsDetachEndpointsRequest"
+	//   },
+	//   "response": {
+	//     "$ref": "Operation"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/cloud-platform",
+	//     "https://www.googleapis.com/auth/compute"
+	//   ]
+	// }
+
+}
+
+// method id "compute.globalNetworkEndpointGroups.get":
+
+type GlobalNetworkEndpointGroupsGetCall struct {
+	s                    *Service
+	project              string
+	networkEndpointGroup string
+	urlParams_           gensupport.URLParams
+	ifNoneMatch_         string
+	ctx_                 context.Context
+	header_              http.Header
+}
+
+// Get: Returns the specified network endpoint group. Gets a list of
+// available network endpoint groups by making a list() request.
+func (r *GlobalNetworkEndpointGroupsService) Get(project string, networkEndpointGroup string) *GlobalNetworkEndpointGroupsGetCall {
+	c := &GlobalNetworkEndpointGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.project = project
+	c.networkEndpointGroup = networkEndpointGroup
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *GlobalNetworkEndpointGroupsGetCall) Fields(s ...googleapi.Field) *GlobalNetworkEndpointGroupsGetCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// IfNoneMatch sets the optional parameter which makes the operation
+// fail if the object's ETag matches the given value. This is useful for
+// getting updates only after the object has changed since the last
+// request. Use googleapi.IsNotModified to check whether the response
+// error from Do is the result of In-None-Match.
+func (c *GlobalNetworkEndpointGroupsGetCall) IfNoneMatch(entityTag string) *GlobalNetworkEndpointGroupsGetCall {
+	c.ifNoneMatch_ = entityTag
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *GlobalNetworkEndpointGroupsGetCall) Context(ctx context.Context) *GlobalNetworkEndpointGroupsGetCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *GlobalNetworkEndpointGroupsGetCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *GlobalNetworkEndpointGroupsGetCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	if c.ifNoneMatch_ != "" {
+		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
+	}
+	var body io.Reader = nil
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/networkEndpointGroups/{networkEndpointGroup}")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("GET", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	googleapi.Expand(req.URL, map[string]string{
+		"project":              c.project,
+		"networkEndpointGroup": c.networkEndpointGroup,
+	})
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "compute.globalNetworkEndpointGroups.get" call.
+// Exactly one of *NetworkEndpointGroup or error will be non-nil. Any
+// non-2xx status code is an error. Response headers are in either
+// *NetworkEndpointGroup.ServerResponse.Header or (if a response was
+// returned at all) in error.(*googleapi.Error).Header. Use
+// googleapi.IsNotModified to check whether the returned error was
+// because http.StatusNotModified was returned.
+func (c *GlobalNetworkEndpointGroupsGetCall) Do(opts ...googleapi.CallOption) (*NetworkEndpointGroup, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &NetworkEndpointGroup{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Returns the specified network endpoint group. Gets a list of available network endpoint groups by making a list() request.",
+	//   "httpMethod": "GET",
+	//   "id": "compute.globalNetworkEndpointGroups.get",
+	//   "parameterOrder": [
+	//     "project",
+	//     "networkEndpointGroup"
+	//   ],
+	//   "parameters": {
+	//     "networkEndpointGroup": {
+	//       "description": "The name of the network endpoint group. It should comply with RFC1035.",
+	//       "location": "path",
+	//       "required": true,
+	//       "type": "string"
+	//     },
+	//     "project": {
+	//       "description": "Project ID for this request.",
+	//       "location": "path",
+	//       "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
+	//       "required": true,
+	//       "type": "string"
+	//     }
+	//   },
+	//   "path": "{project}/global/networkEndpointGroups/{networkEndpointGroup}",
+	//   "response": {
+	//     "$ref": "NetworkEndpointGroup"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/cloud-platform",
+	//     "https://www.googleapis.com/auth/compute",
+	//     "https://www.googleapis.com/auth/compute.readonly"
+	//   ]
+	// }
+
+}
+
+// method id "compute.globalNetworkEndpointGroups.insert":
+
+type GlobalNetworkEndpointGroupsInsertCall struct {
+	s                    *Service
+	project              string
+	networkendpointgroup *NetworkEndpointGroup
+	urlParams_           gensupport.URLParams
+	ctx_                 context.Context
+	header_              http.Header
+}
+
+// Insert: Creates a network endpoint group in the specified project
+// using the parameters that are included in the request.
+func (r *GlobalNetworkEndpointGroupsService) Insert(project string, networkendpointgroup *NetworkEndpointGroup) *GlobalNetworkEndpointGroupsInsertCall {
+	c := &GlobalNetworkEndpointGroupsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.project = project
+	c.networkendpointgroup = networkendpointgroup
+	return c
+}
+
+// RequestId sets the optional parameter "requestId": An optional
+// request ID to identify requests. Specify a unique request ID so that
+// if you must retry your request, the server will know to ignore the
+// request if it has already been completed.
+//
+// For example, consider a situation where you make an initial request
+// and the request times out. If you make the request again with the
+// same request ID, the server can check if original operation with the
+// same request ID was received, and if so, will ignore the second
+// request. This prevents clients from accidentally creating duplicate
+// commitments.
+//
+// The request ID must be a valid UUID with the exception that zero UUID
+// is not supported (00000000-0000-0000-0000-000000000000).
+func (c *GlobalNetworkEndpointGroupsInsertCall) RequestId(requestId string) *GlobalNetworkEndpointGroupsInsertCall {
+	c.urlParams_.Set("requestId", requestId)
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *GlobalNetworkEndpointGroupsInsertCall) Fields(s ...googleapi.Field) *GlobalNetworkEndpointGroupsInsertCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *GlobalNetworkEndpointGroupsInsertCall) Context(ctx context.Context) *GlobalNetworkEndpointGroupsInsertCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *GlobalNetworkEndpointGroupsInsertCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *GlobalNetworkEndpointGroupsInsertCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	var body io.Reader = nil
+	body, err := googleapi.WithoutDataWrapper.JSONReader(c.networkendpointgroup)
+	if err != nil {
+		return nil, err
+	}
+	reqHeaders.Set("Content-Type", "application/json")
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/networkEndpointGroups")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("POST", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	googleapi.Expand(req.URL, map[string]string{
+		"project": c.project,
+	})
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "compute.globalNetworkEndpointGroups.insert" call.
+// Exactly one of *Operation or error will be non-nil. Any non-2xx
+// status code is an error. Response headers are in either
+// *Operation.ServerResponse.Header or (if a response was returned at
+// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
+// to check whether the returned error was because
+// http.StatusNotModified was returned.
+func (c *GlobalNetworkEndpointGroupsInsertCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &Operation{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Creates a network endpoint group in the specified project using the parameters that are included in the request.",
+	//   "httpMethod": "POST",
+	//   "id": "compute.globalNetworkEndpointGroups.insert",
+	//   "parameterOrder": [
+	//     "project"
+	//   ],
+	//   "parameters": {
+	//     "project": {
+	//       "description": "Project ID for this request.",
+	//       "location": "path",
+	//       "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
+	//       "required": true,
+	//       "type": "string"
+	//     },
+	//     "requestId": {
+	//       "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).",
+	//       "location": "query",
+	//       "type": "string"
+	//     }
+	//   },
+	//   "path": "{project}/global/networkEndpointGroups",
+	//   "request": {
+	//     "$ref": "NetworkEndpointGroup"
+	//   },
+	//   "response": {
+	//     "$ref": "Operation"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/cloud-platform",
+	//     "https://www.googleapis.com/auth/compute"
+	//   ]
+	// }
+
+}
+
+// method id "compute.globalNetworkEndpointGroups.list":
+
+type GlobalNetworkEndpointGroupsListCall struct {
+	s            *Service
+	project      string
+	urlParams_   gensupport.URLParams
+	ifNoneMatch_ string
+	ctx_         context.Context
+	header_      http.Header
+}
+
+// List: Retrieves the list of network endpoint groups that are located
+// in the specified project.
+func (r *GlobalNetworkEndpointGroupsService) List(project string) *GlobalNetworkEndpointGroupsListCall {
+	c := &GlobalNetworkEndpointGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.project = project
+	return c
+}
+
+// Filter sets the optional parameter "filter": A filter expression that
+// filters resources listed in the response. The expression must specify
+// the field name, a comparison operator, and the value that you want to
+// use for filtering. The value must be a string, a number, or a
+// boolean. The comparison operator must be either =, !=, >, or <.
+//
+// For example, if you are filtering Compute Engine instances, you can
+// exclude instances named example-instance by specifying name !=
+// example-instance.
+//
+// You can also filter nested fields. For example, you could specify
+// scheduling.automaticRestart = false to include instances only if they
+// are not scheduled for automatic restarts. You can use filtering on
+// nested fields to filter based on resource labels.
+//
+// To filter on multiple expressions, provide each separate expression
+// within parentheses. For example, (scheduling.automaticRestart = true)
+// (cpuPlatform = "Intel Skylake"). By default, each expression is an
+// AND expression. However, you can include AND and OR expressions
+// explicitly. For example, (cpuPlatform = "Intel Skylake") OR
+// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart =
+// true).
+func (c *GlobalNetworkEndpointGroupsListCall) Filter(filter string) *GlobalNetworkEndpointGroupsListCall {
+	c.urlParams_.Set("filter", filter)
+	return c
+}
+
+// MaxResults sets the optional parameter "maxResults": The maximum
+// number of results per page that should be returned. If the number of
+// available results is larger than maxResults, Compute Engine returns a
+// nextPageToken that can be used to get the next page of results in
+// subsequent list requests. Acceptable values are 0 to 500, inclusive.
+// (Default: 500)
+func (c *GlobalNetworkEndpointGroupsListCall) MaxResults(maxResults int64) *GlobalNetworkEndpointGroupsListCall {
+	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
+	return c
+}
+
+// OrderBy sets the optional parameter "orderBy": Sorts list results by
+// a certain order. By default, results are returned in alphanumerical
+// order based on the resource name.
+//
+// You can also sort results in descending order based on the creation
+// timestamp using orderBy="creationTimestamp desc". This sorts results
+// based on the creationTimestamp field in reverse chronological order
+// (newest result first). Use this to sort resources like operations so
+// that the newest operation is returned first.
+//
+// Currently, only sorting by name or creationTimestamp desc is
+// supported.
+func (c *GlobalNetworkEndpointGroupsListCall) OrderBy(orderBy string) *GlobalNetworkEndpointGroupsListCall {
+	c.urlParams_.Set("orderBy", orderBy)
+	return c
+}
+
+// PageToken sets the optional parameter "pageToken": Specifies a page
+// token to use. Set pageToken to the nextPageToken returned by a
+// previous list request to get the next page of results.
+func (c *GlobalNetworkEndpointGroupsListCall) PageToken(pageToken string) *GlobalNetworkEndpointGroupsListCall {
+	c.urlParams_.Set("pageToken", pageToken)
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *GlobalNetworkEndpointGroupsListCall) Fields(s ...googleapi.Field) *GlobalNetworkEndpointGroupsListCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// IfNoneMatch sets the optional parameter which makes the operation
+// fail if the object's ETag matches the given value. This is useful for
+// getting updates only after the object has changed since the last
+// request. Use googleapi.IsNotModified to check whether the response
+// error from Do is the result of In-None-Match.
+func (c *GlobalNetworkEndpointGroupsListCall) IfNoneMatch(entityTag string) *GlobalNetworkEndpointGroupsListCall {
+	c.ifNoneMatch_ = entityTag
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *GlobalNetworkEndpointGroupsListCall) Context(ctx context.Context) *GlobalNetworkEndpointGroupsListCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *GlobalNetworkEndpointGroupsListCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *GlobalNetworkEndpointGroupsListCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	if c.ifNoneMatch_ != "" {
+		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
+	}
+	var body io.Reader = nil
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/networkEndpointGroups")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("GET", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	googleapi.Expand(req.URL, map[string]string{
+		"project": c.project,
+	})
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "compute.globalNetworkEndpointGroups.list" call.
+// Exactly one of *NetworkEndpointGroupList or error will be non-nil.
+// Any non-2xx status code is an error. Response headers are in either
+// *NetworkEndpointGroupList.ServerResponse.Header or (if a response was
+// returned at all) in error.(*googleapi.Error).Header. Use
+// googleapi.IsNotModified to check whether the returned error was
+// because http.StatusNotModified was returned.
+func (c *GlobalNetworkEndpointGroupsListCall) Do(opts ...googleapi.CallOption) (*NetworkEndpointGroupList, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &NetworkEndpointGroupList{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Retrieves the list of network endpoint groups that are located in the specified project.",
+	//   "httpMethod": "GET",
+	//   "id": "compute.globalNetworkEndpointGroups.list",
+	//   "parameterOrder": [
+	//     "project"
+	//   ],
+	//   "parameters": {
+	//     "filter": {
+	//       "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).",
+	//       "location": "query",
+	//       "type": "string"
+	//     },
+	//     "maxResults": {
+	//       "default": "500",
+	//       "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)",
+	//       "format": "uint32",
+	//       "location": "query",
+	//       "minimum": "0",
+	//       "type": "integer"
+	//     },
+	//     "orderBy": {
+	//       "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.",
+	//       "location": "query",
+	//       "type": "string"
+	//     },
+	//     "pageToken": {
+	//       "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.",
+	//       "location": "query",
+	//       "type": "string"
+	//     },
+	//     "project": {
+	//       "description": "Project ID for this request.",
+	//       "location": "path",
+	//       "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
+	//       "required": true,
+	//       "type": "string"
+	//     }
+	//   },
+	//   "path": "{project}/global/networkEndpointGroups",
+	//   "response": {
+	//     "$ref": "NetworkEndpointGroupList"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/cloud-platform",
+	//     "https://www.googleapis.com/auth/compute",
+	//     "https://www.googleapis.com/auth/compute.readonly"
+	//   ]
+	// }
+
+}
+
+// Pages invokes f for each page of results.
+// A non-nil error returned from f will halt the iteration.
+// The provided context supersedes any context provided to the Context method.
+func (c *GlobalNetworkEndpointGroupsListCall) Pages(ctx context.Context, f func(*NetworkEndpointGroupList) error) error {
+	c.ctx_ = ctx
+	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
+	for {
+		x, err := c.Do()
+		if err != nil {
+			return err
+		}
+		if err := f(x); err != nil {
+			return err
+		}
+		if x.NextPageToken == "" {
+			return nil
+		}
+		c.PageToken(x.NextPageToken)
+	}
+}
+
+// method id "compute.globalNetworkEndpointGroups.listNetworkEndpoints":
+
+type GlobalNetworkEndpointGroupsListNetworkEndpointsCall struct {
+	s                    *Service
+	project              string
+	networkEndpointGroup string
+	urlParams_           gensupport.URLParams
+	ctx_                 context.Context
+	header_              http.Header
+}
+
+// ListNetworkEndpoints: Lists the network endpoints in the specified
+// network endpoint group.
+func (r *GlobalNetworkEndpointGroupsService) ListNetworkEndpoints(project string, networkEndpointGroup string) *GlobalNetworkEndpointGroupsListNetworkEndpointsCall {
+	c := &GlobalNetworkEndpointGroupsListNetworkEndpointsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.project = project
+	c.networkEndpointGroup = networkEndpointGroup
+	return c
+}
+
+// Filter sets the optional parameter "filter": A filter expression that
+// filters resources listed in the response. The expression must specify
+// the field name, a comparison operator, and the value that you want to
+// use for filtering. The value must be a string, a number, or a
+// boolean. The comparison operator must be either =, !=, >, or <.
+//
+// For example, if you are filtering Compute Engine instances, you can
+// exclude instances named example-instance by specifying name !=
+// example-instance.
+//
+// You can also filter nested fields. For example, you could specify
+// scheduling.automaticRestart = false to include instances only if they
+// are not scheduled for automatic restarts. You can use filtering on
+// nested fields to filter based on resource labels.
+//
+// To filter on multiple expressions, provide each separate expression
+// within parentheses. For example, (scheduling.automaticRestart = true)
+// (cpuPlatform = "Intel Skylake"). By default, each expression is an
+// AND expression. However, you can include AND and OR expressions
+// explicitly. For example, (cpuPlatform = "Intel Skylake") OR
+// (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart =
+// true).
+func (c *GlobalNetworkEndpointGroupsListNetworkEndpointsCall) Filter(filter string) *GlobalNetworkEndpointGroupsListNetworkEndpointsCall {
+	c.urlParams_.Set("filter", filter)
+	return c
+}
+
+// MaxResults sets the optional parameter "maxResults": The maximum
+// number of results per page that should be returned. If the number of
+// available results is larger than maxResults, Compute Engine returns a
+// nextPageToken that can be used to get the next page of results in
+// subsequent list requests. Acceptable values are 0 to 500, inclusive.
+// (Default: 500)
+func (c *GlobalNetworkEndpointGroupsListNetworkEndpointsCall) MaxResults(maxResults int64) *GlobalNetworkEndpointGroupsListNetworkEndpointsCall {
+	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
+	return c
+}
+
+// OrderBy sets the optional parameter "orderBy": Sorts list results by
+// a certain order. By default, results are returned in alphanumerical
+// order based on the resource name.
+//
+// You can also sort results in descending order based on the creation
+// timestamp using orderBy="creationTimestamp desc". This sorts results
+// based on the creationTimestamp field in reverse chronological order
+// (newest result first). Use this to sort resources like operations so
+// that the newest operation is returned first.
+//
+// Currently, only sorting by name or creationTimestamp desc is
+// supported.
+func (c *GlobalNetworkEndpointGroupsListNetworkEndpointsCall) OrderBy(orderBy string) *GlobalNetworkEndpointGroupsListNetworkEndpointsCall {
+	c.urlParams_.Set("orderBy", orderBy)
+	return c
+}
+
+// PageToken sets the optional parameter "pageToken": Specifies a page
+// token to use. Set pageToken to the nextPageToken returned by a
+// previous list request to get the next page of results.
+func (c *GlobalNetworkEndpointGroupsListNetworkEndpointsCall) PageToken(pageToken string) *GlobalNetworkEndpointGroupsListNetworkEndpointsCall {
+	c.urlParams_.Set("pageToken", pageToken)
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *GlobalNetworkEndpointGroupsListNetworkEndpointsCall) Fields(s ...googleapi.Field) *GlobalNetworkEndpointGroupsListNetworkEndpointsCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *GlobalNetworkEndpointGroupsListNetworkEndpointsCall) Context(ctx context.Context) *GlobalNetworkEndpointGroupsListNetworkEndpointsCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *GlobalNetworkEndpointGroupsListNetworkEndpointsCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *GlobalNetworkEndpointGroupsListNetworkEndpointsCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	var body io.Reader = nil
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("POST", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	googleapi.Expand(req.URL, map[string]string{
+		"project":              c.project,
+		"networkEndpointGroup": c.networkEndpointGroup,
+	})
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "compute.globalNetworkEndpointGroups.listNetworkEndpoints" call.
+// Exactly one of *NetworkEndpointGroupsListNetworkEndpoints or error
+// will be non-nil. Any non-2xx status code is an error. Response
+// headers are in either
+// *NetworkEndpointGroupsListNetworkEndpoints.ServerResponse.Header or
+// (if a response was returned at all) in
+// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
+// whether the returned error was because http.StatusNotModified was
+// returned.
+func (c *GlobalNetworkEndpointGroupsListNetworkEndpointsCall) Do(opts ...googleapi.CallOption) (*NetworkEndpointGroupsListNetworkEndpoints, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &NetworkEndpointGroupsListNetworkEndpoints{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Lists the network endpoints in the specified network endpoint group.",
+	//   "httpMethod": "POST",
+	//   "id": "compute.globalNetworkEndpointGroups.listNetworkEndpoints",
+	//   "parameterOrder": [
+	//     "project",
+	//     "networkEndpointGroup"
+	//   ],
+	//   "parameters": {
+	//     "filter": {
+	//       "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).",
+	//       "location": "query",
+	//       "type": "string"
+	//     },
+	//     "maxResults": {
+	//       "default": "500",
+	//       "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)",
+	//       "format": "uint32",
+	//       "location": "query",
+	//       "minimum": "0",
+	//       "type": "integer"
+	//     },
+	//     "networkEndpointGroup": {
+	//       "description": "The name of the network endpoint group from which you want to generate a list of included network endpoints. It should comply with RFC1035.",
+	//       "location": "path",
+	//       "required": true,
+	//       "type": "string"
+	//     },
+	//     "orderBy": {
+	//       "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.",
+	//       "location": "query",
+	//       "type": "string"
+	//     },
+	//     "pageToken": {
+	//       "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.",
+	//       "location": "query",
+	//       "type": "string"
+	//     },
+	//     "project": {
+	//       "description": "Project ID for this request.",
+	//       "location": "path",
+	//       "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
+	//       "required": true,
+	//       "type": "string"
+	//     }
+	//   },
+	//   "path": "{project}/global/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints",
+	//   "response": {
+	//     "$ref": "NetworkEndpointGroupsListNetworkEndpoints"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/cloud-platform",
+	//     "https://www.googleapis.com/auth/compute",
+	//     "https://www.googleapis.com/auth/compute.readonly"
+	//   ]
+	// }
+
+}
+
+// Pages invokes f for each page of results.
+// A non-nil error returned from f will halt the iteration.
+// The provided context supersedes any context provided to the Context method.
+func (c *GlobalNetworkEndpointGroupsListNetworkEndpointsCall) Pages(ctx context.Context, f func(*NetworkEndpointGroupsListNetworkEndpoints) error) error {
+	c.ctx_ = ctx
+	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
+	for {
+		x, err := c.Do()
+		if err != nil {
+			return err
+		}
+		if err := f(x); err != nil {
+			return err
+		}
+		if x.NextPageToken == "" {
+			return nil
+		}
+		c.PageToken(x.NextPageToken)
+	}
+}
+
 // method id "compute.globalOperations.aggregatedList":
 
 type GlobalOperationsAggregatedListCall struct {
@@ -78050,6 +79729,182 @@
 
 }
 
+// method id "compute.instances.getEffectiveFirewalls":
+
+type InstancesGetEffectiveFirewallsCall struct {
+	s            *Service
+	project      string
+	zone         string
+	instance     string
+	urlParams_   gensupport.URLParams
+	ifNoneMatch_ string
+	ctx_         context.Context
+	header_      http.Header
+}
+
+// GetEffectiveFirewalls: Returns effective firewalls applied to an
+// interface of the instance.
+func (r *InstancesService) GetEffectiveFirewalls(project string, zone string, instance string, networkInterface string) *InstancesGetEffectiveFirewallsCall {
+	c := &InstancesGetEffectiveFirewallsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.project = project
+	c.zone = zone
+	c.instance = instance
+	c.urlParams_.Set("networkInterface", networkInterface)
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *InstancesGetEffectiveFirewallsCall) Fields(s ...googleapi.Field) *InstancesGetEffectiveFirewallsCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// IfNoneMatch sets the optional parameter which makes the operation
+// fail if the object's ETag matches the given value. This is useful for
+// getting updates only after the object has changed since the last
+// request. Use googleapi.IsNotModified to check whether the response
+// error from Do is the result of In-None-Match.
+func (c *InstancesGetEffectiveFirewallsCall) IfNoneMatch(entityTag string) *InstancesGetEffectiveFirewallsCall {
+	c.ifNoneMatch_ = entityTag
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *InstancesGetEffectiveFirewallsCall) Context(ctx context.Context) *InstancesGetEffectiveFirewallsCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *InstancesGetEffectiveFirewallsCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *InstancesGetEffectiveFirewallsCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	if c.ifNoneMatch_ != "" {
+		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
+	}
+	var body io.Reader = nil
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/zones/{zone}/instances/{instance}/getEffectiveFirewalls")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("GET", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	googleapi.Expand(req.URL, map[string]string{
+		"project":  c.project,
+		"zone":     c.zone,
+		"instance": c.instance,
+	})
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "compute.instances.getEffectiveFirewalls" call.
+// Exactly one of *InstancesGetEffectiveFirewallsResponse or error will
+// be non-nil. Any non-2xx status code is an error. Response headers are
+// in either
+// *InstancesGetEffectiveFirewallsResponse.ServerResponse.Header or (if
+// a response was returned at all) in error.(*googleapi.Error).Header.
+// Use googleapi.IsNotModified to check whether the returned error was
+// because http.StatusNotModified was returned.
+func (c *InstancesGetEffectiveFirewallsCall) Do(opts ...googleapi.CallOption) (*InstancesGetEffectiveFirewallsResponse, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &InstancesGetEffectiveFirewallsResponse{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Returns effective firewalls applied to an interface of the instance.",
+	//   "httpMethod": "GET",
+	//   "id": "compute.instances.getEffectiveFirewalls",
+	//   "parameterOrder": [
+	//     "project",
+	//     "zone",
+	//     "instance",
+	//     "networkInterface"
+	//   ],
+	//   "parameters": {
+	//     "instance": {
+	//       "description": "Name of the instance scoping this request.",
+	//       "location": "path",
+	//       "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?",
+	//       "required": true,
+	//       "type": "string"
+	//     },
+	//     "networkInterface": {
+	//       "description": "The name of the network interface to get the effective firewalls.",
+	//       "location": "query",
+	//       "required": true,
+	//       "type": "string"
+	//     },
+	//     "project": {
+	//       "description": "Project ID for this request.",
+	//       "location": "path",
+	//       "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
+	//       "required": true,
+	//       "type": "string"
+	//     },
+	//     "zone": {
+	//       "description": "The name of the zone for this request.",
+	//       "location": "path",
+	//       "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?",
+	//       "required": true,
+	//       "type": "string"
+	//     }
+	//   },
+	//   "path": "{project}/zones/{zone}/instances/{instance}/getEffectiveFirewalls",
+	//   "response": {
+	//     "$ref": "InstancesGetEffectiveFirewallsResponse"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/cloud-platform",
+	//     "https://www.googleapis.com/auth/compute",
+	//     "https://www.googleapis.com/auth/compute.readonly"
+	//   ]
+	// }
+
+}
+
 // method id "compute.instances.getGuestAttributes":
 
 type InstancesGetGuestAttributesCall struct {
@@ -94854,6 +96709,163 @@
 
 }
 
+// method id "compute.networks.getEffectiveFirewalls":
+
+type NetworksGetEffectiveFirewallsCall struct {
+	s            *Service
+	project      string
+	network      string
+	urlParams_   gensupport.URLParams
+	ifNoneMatch_ string
+	ctx_         context.Context
+	header_      http.Header
+}
+
+// GetEffectiveFirewalls: Returns the effective firewalls on a given
+// network.
+func (r *NetworksService) GetEffectiveFirewalls(project string, network string) *NetworksGetEffectiveFirewallsCall {
+	c := &NetworksGetEffectiveFirewallsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.project = project
+	c.network = network
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *NetworksGetEffectiveFirewallsCall) Fields(s ...googleapi.Field) *NetworksGetEffectiveFirewallsCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// IfNoneMatch sets the optional parameter which makes the operation
+// fail if the object's ETag matches the given value. This is useful for
+// getting updates only after the object has changed since the last
+// request. Use googleapi.IsNotModified to check whether the response
+// error from Do is the result of In-None-Match.
+func (c *NetworksGetEffectiveFirewallsCall) IfNoneMatch(entityTag string) *NetworksGetEffectiveFirewallsCall {
+	c.ifNoneMatch_ = entityTag
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *NetworksGetEffectiveFirewallsCall) Context(ctx context.Context) *NetworksGetEffectiveFirewallsCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *NetworksGetEffectiveFirewallsCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *NetworksGetEffectiveFirewallsCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	if c.ifNoneMatch_ != "" {
+		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
+	}
+	var body io.Reader = nil
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/global/networks/{network}/getEffectiveFirewalls")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("GET", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	googleapi.Expand(req.URL, map[string]string{
+		"project": c.project,
+		"network": c.network,
+	})
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "compute.networks.getEffectiveFirewalls" call.
+// Exactly one of *NetworksGetEffectiveFirewallsResponse or error will
+// be non-nil. Any non-2xx status code is an error. Response headers are
+// in either
+// *NetworksGetEffectiveFirewallsResponse.ServerResponse.Header or (if a
+// response was returned at all) in error.(*googleapi.Error).Header. Use
+// googleapi.IsNotModified to check whether the returned error was
+// because http.StatusNotModified was returned.
+func (c *NetworksGetEffectiveFirewallsCall) Do(opts ...googleapi.CallOption) (*NetworksGetEffectiveFirewallsResponse, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &NetworksGetEffectiveFirewallsResponse{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Returns the effective firewalls on a given network.",
+	//   "httpMethod": "GET",
+	//   "id": "compute.networks.getEffectiveFirewalls",
+	//   "parameterOrder": [
+	//     "project",
+	//     "network"
+	//   ],
+	//   "parameters": {
+	//     "network": {
+	//       "description": "Name of the network for this request.",
+	//       "location": "path",
+	//       "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?",
+	//       "required": true,
+	//       "type": "string"
+	//     },
+	//     "project": {
+	//       "description": "Project ID for this request.",
+	//       "location": "path",
+	//       "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
+	//       "required": true,
+	//       "type": "string"
+	//     }
+	//   },
+	//   "path": "{project}/global/networks/{network}/getEffectiveFirewalls",
+	//   "response": {
+	//     "$ref": "NetworksGetEffectiveFirewallsResponse"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/cloud-platform",
+	//     "https://www.googleapis.com/auth/compute",
+	//     "https://www.googleapis.com/auth/compute.readonly"
+	//   ]
+	// }
+
+}
+
 // method id "compute.networks.insert":
 
 type NetworksInsertCall struct {
diff --git a/compute/v0.beta/compute-api.json b/compute/v0.beta/compute-api.json
index 6f9abad..d8ab327 100644
--- a/compute/v0.beta/compute-api.json
+++ b/compute/v0.beta/compute-api.json
@@ -29,7 +29,7 @@
   "description": "Creates and runs virtual machines on Google Cloud Platform.",
   "discoveryVersion": "v1",
   "documentationLink": "https://developers.google.com/compute/docs/reference/latest/",
-  "etag": "\"VPK3KBfpaEgZ16pozGOoMYfKc0U/xrkdcXHl_qVsPViapaT_mzdZ57Y\"",
+  "etag": "\"VPK3KBfpaEgZ16pozGOoMYfKc0U/FcIdq7K0sVtzHMLqHzM5hbg05bw\"",
   "icons": {
     "x16": "https://www.google.com/images/icons/product/compute_engine-16.png",
     "x32": "https://www.google.com/images/icons/product/compute_engine-32.png"
@@ -22462,7 +22462,7 @@
       }
     }
   },
-  "revision": "20190320",
+  "revision": "20190403",
   "rootUrl": "https://www.googleapis.com/",
   "schemas": {
     "AcceleratorConfig": {
@@ -23578,6 +23578,13 @@
           "description": "Labels to apply to this disk. These can be later modified by the disks.setLabels method. This field is only applicable for persistent disks.",
           "type": "object"
         },
+        "resourcePolicies": {
+          "description": "Resource policies applied to this disk for automatic snapshot creations. Specified using the full or partial URL. For instance template, specify only the resource policy name.",
+          "items": {
+            "type": "string"
+          },
+          "type": "array"
+        },
         "sourceImage": {
           "description": "The source image to create this disk. When creating a new instance, one of initializeParams.sourceImage or disks.source is required except for local SSD.\n\nTo create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-9 to use the latest Debian 9 image:\nprojects/debian-cloud/global/images/family/debian-9\n\n\nAlternatively, use a specific version of a public operating system image:\nprojects/debian-cloud/global/images/debian-9-stretch-vYYYYMMDD\n\n\nTo create a disk with a custom image that you created, specify the image name in the following format:\nglobal/images/my-custom-image\n\n\nYou can also specify a custom image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name:\nglobal/images/family/my-image-family\n\n\nIf the source image is deleted later, this field will not be set.",
           "type": "string"
@@ -23585,6 +23592,14 @@
         "sourceImageEncryptionKey": {
           "$ref": "CustomerEncryptionKey",
           "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot create disks for instances in a managed instance group if the source images are encrypted with your own keys."
+        },
+        "sourceSnapshot": {
+          "description": "The source snapshot to create this disk. When creating a new instance, one of initializeParams.sourceSnapshot or disks.source is required except for local SSD.\n\nTo create a disk with a snapshot that you created, specify the snapshot name in the following format:\nglobal/snapshots/my-backup\n\n\nIf the source snapshot is deleted later, this field will not be set.",
+          "type": "string"
+        },
+        "sourceSnapshotEncryptionKey": {
+          "$ref": "CustomerEncryptionKey",
+          "description": "The customer-supplied encryption key of the source snapshot."
         }
       },
       "type": "object"
@@ -25055,7 +25070,7 @@
       "properties": {
         "condition": {
           "$ref": "Expr",
-          "description": "The condition that is associated with this binding. NOTE: an unsatisfied condition will not allow user access via current binding. Different bindings, including their conditions, are examined independently."
+          "description": "The condition that is associated with this binding. NOTE: An unsatisfied condition will not allow user access via current binding. Different bindings, including their conditions, are examined independently."
         },
         "members": {
           "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` .\n\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.\n\n\n\n* `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`.",
@@ -27361,7 +27376,7 @@
       "id": "FixedOrPercent",
       "properties": {
         "calculated": {
-          "description": "[Output Only] Absolute value of VM instances calculated based on the specific mode.\n\n \n- If the value is fixed, then the caculated value is equal to the fixed value. \n- If the value is a percent, then the calculated value is percent/100 * targetSize. For example, the calculated value of a 80% of a managed instance group with 150 instances would be (80/100 * 150) = 120 VM instances. If there is a remainder, the number is rounded up.",
+          "description": "[Output Only] Absolute value of VM instances calculated based on the specific mode.\n\n \n- If the value is fixed, then the calculated value is equal to the fixed value. \n- If the value is a percent, then the calculated value is percent/100 * targetSize. For example, the calculated value of a 80% of a managed instance group with 150 instances would be (80/100 * 150) = 120 VM instances. If there is a remainder, the number is rounded up.",
           "format": "int32",
           "type": "integer"
         },
@@ -28222,7 +28237,7 @@
           "type": "integer"
         },
         "type": {
-          "description": "Specifies the type of the healthCheck, either TCP, SSL, HTTP or HTTPS. If not specified, the default is TCP. Exactly one of the protocol-specific health check field must be specified, which must match type field.",
+          "description": "Specifies the type of the healthCheck, either TCP, SSL, HTTP, HTTPS or HTTP2. If not specified, the default is TCP. Exactly one of the protocol-specific health check field must be specified, which must match type field.",
           "enum": [
             "HTTP",
             "HTTP2",
@@ -29793,7 +29808,7 @@
         },
         "pendingActions": {
           "$ref": "InstanceGroupManagerPendingActionsSummary",
-          "description": "[Output Only] The list of instance actions and the number of instances in this managed instance group that are pending for each of those actions."
+          "description": "[Deprecated] This field is deprecated and will be removed. Prefer using the status field instead. Please contact cloud-updater-feedback@google.com to leave feedback if your workload relies on this field. [Output Only] The list of instance actions and the number of instances in this managed instance group that are pending for each of those actions."
         },
         "region": {
           "description": "[Output Only] The URL of the region where the managed instance group resides (for regional resources).",
@@ -29834,7 +29849,7 @@
           "description": "The update policy for this managed instance group."
         },
         "versions": {
-          "description": "Specifies the instance templates used by this managed instance group to create instances.\n\nEach version is defined by an instanceTemplate. Every template can appear at most once per instance group. This field overrides the top-level instanceTemplate field. Read more about the relationships between these fields. Exactly one version must leave the targetSize field unset. That version will be applied to all remaining instances. For more information, read about canary updates.",
+          "description": "Specifies the instance templates used by this managed instance group to create instances.\n\nEach version is defined by an instanceTemplate and a name. Every version can appear at most once per instance group. This field overrides the top-level instanceTemplate field. Read more about the relationships between these fields. Exactly one version must leave the targetSize field unset. That version will be applied to all remaining instances. For more information, read about canary updates.",
           "items": {
             "$ref": "InstanceGroupManagerVersion"
           },
@@ -30142,22 +30157,22 @@
       "id": "InstanceGroupManagerPendingActionsSummary",
       "properties": {
         "creating": {
-          "description": "[Output Only] The number of instances in the managed instance group that are pending to be created.",
+          "description": "[Deprecated] This field is deprecated and will be removed. Prefer using the status field instead. Please contact cloud-updater-feedback@google.com to leave feedback if your workload relies on this field. [Output Only] The number of instances in the managed instance group that are pending to be created.",
           "format": "int32",
           "type": "integer"
         },
         "deleting": {
-          "description": "[Output Only] The number of instances in the managed instance group that are pending to be deleted.",
+          "description": "[Deprecated] This field is deprecated and will be removed. Prefer using the status field instead. Please contact cloud-updater-feedback@google.com to leave feedback if your workload relies on this field. [Output Only] The number of instances in the managed instance group that are pending to be deleted.",
           "format": "int32",
           "type": "integer"
         },
         "recreating": {
-          "description": "[Output Only] The number of instances in the managed instance group that are pending to be recreated.",
+          "description": "[Deprecated] This field is deprecated and will be removed. Prefer using the status field instead. Please contact cloud-updater-feedback@google.com to leave feedback if your workload relies on this field. [Output Only] The number of instances in the managed instance group that are pending to be recreated.",
           "format": "int32",
           "type": "integer"
         },
         "restarting": {
-          "description": "[Output Only] The number of instances in the managed instance group that are pending to be restarted.",
+          "description": "[Deprecated] This field is deprecated and will be removed. Prefer using the status field instead. Please contact cloud-updater-feedback@google.com to leave feedback if your workload relies on this field. [Output Only] The number of instances in the managed instance group that are pending to be restarted.",
           "format": "int32",
           "type": "integer"
         }
@@ -30191,6 +30206,17 @@
     "InstanceGroupManagerUpdatePolicy": {
       "id": "InstanceGroupManagerUpdatePolicy",
       "properties": {
+        "instanceRedistributionType": {
+          "enum": [
+            "NONE",
+            "PROACTIVE"
+          ],
+          "enumDescriptions": [
+            "",
+            ""
+          ],
+          "type": "string"
+        },
         "maxSurge": {
           "$ref": "FixedOrPercent",
           "description": "The maximum number of instances that can be created above the specified targetSize during the update process. By default, a fixed value of 1 is used. This value can be either a fixed number or a percentage if the instance group has 10 or more instances. If you set a percentage, the number of instances will be rounded up if necessary.\n\nAt least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxSurge."
@@ -30234,6 +30260,7 @@
       "id": "InstanceGroupManagerVersion",
       "properties": {
         "instanceTemplate": {
+          "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create new instances in the managed instance group until the `targetSize` for this version is reached.",
           "type": "string"
         },
         "name": {
@@ -34631,7 +34658,7 @@
       "type": "object"
     },
     "NodeGroup": {
-      "description": "A NodeGroup resource. (== resource_for beta.nodeGroups ==) (== resource_for v1.nodeGroups ==)",
+      "description": "A NodeGroup resource. To create a node group, you must first create a node templates. To learn more about node groups and sole-tenant nodes, read the Sole-tenant nodes documentation. (== resource_for beta.nodeGroups ==) (== resource_for v1.nodeGroups ==)",
       "id": "NodeGroup",
       "properties": {
         "creationTimestamp": {
@@ -35196,7 +35223,7 @@
       "type": "object"
     },
     "NodeTemplate": {
-      "description": "A Node Template resource.",
+      "description": "A Node Template resource. To learn more about node templates and sole-tenant nodes, read the Sole-tenant nodes documentation. (== resource_for beta.nodeTemplates ==) (== resource_for v1.nodeTemplates ==)",
       "id": "NodeTemplate",
       "properties": {
         "creationTimestamp": {
@@ -38552,6 +38579,22 @@
         "snapshotSchedulePolicy": {
           "$ref": "ResourcePolicySnapshotSchedulePolicy",
           "description": "Resource policy for persistent disks for creating snapshots."
+        },
+        "status": {
+          "description": "[Output Only] The status of resource policy creation.",
+          "enum": [
+            "CREATING",
+            "DELETING",
+            "INVALID",
+            "READY"
+          ],
+          "enumDescriptions": [
+            "",
+            "",
+            "",
+            ""
+          ],
+          "type": "string"
         }
       },
       "type": "object"
@@ -39026,6 +39069,10 @@
           "description": "The URL to an instance that should handle matching packets. You can specify this as a full or partial URL. For example:\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/",
           "type": "string"
         },
+        "nextHopInterconnectAttachment": {
+          "description": "[Output Only] The URL to an InterconnectAttachment which is the next hop for the route. This field will only be populated for the dynamic routes generated by Cloud Router with a linked interconnectAttachment.",
+          "type": "string"
+        },
         "nextHopIp": {
           "description": "The network IP address of an instance that should handle matching packets. Only IPv4 is supported.",
           "type": "string"
@@ -45936,7 +45983,7 @@
       "type": "object"
     },
     "Zone": {
-      "description": "A Zone resource. (== resource_for beta.zones ==) (== resource_for v1.zones ==)",
+      "description": "A Zone resource. (== resource_for beta.zones ==) (== resource_for v1.zones ==) Next ID: 17",
       "id": "Zone",
       "properties": {
         "availableCpuPlatforms": {
diff --git a/compute/v0.beta/compute-gen.go b/compute/v0.beta/compute-gen.go
index f1e376e..5686d6c 100644
--- a/compute/v0.beta/compute-gen.go
+++ b/compute/v0.beta/compute-gen.go
@@ -2480,6 +2480,11 @@
 	// persistent disks.
 	Labels map[string]string `json:"labels,omitempty"`
 
+	// ResourcePolicies: Resource policies applied to this disk for
+	// automatic snapshot creations. Specified using the full or partial
+	// URL. For instance template, specify only the resource policy name.
+	ResourcePolicies []string `json:"resourcePolicies,omitempty"`
+
 	// SourceImage: The source image to create this disk. When creating a
 	// new instance, one of initializeParams.sourceImage or disks.source is
 	// required except for local SSD.
@@ -2523,6 +2528,23 @@
 	// the source images are encrypted with your own keys.
 	SourceImageEncryptionKey *CustomerEncryptionKey `json:"sourceImageEncryptionKey,omitempty"`
 
+	// SourceSnapshot: The source snapshot to create this disk. When
+	// creating a new instance, one of initializeParams.sourceSnapshot or
+	// disks.source is required except for local SSD.
+	//
+	// To create a disk with a snapshot that you created, specify the
+	// snapshot name in the following
+	// format:
+	// global/snapshots/my-backup
+	//
+	//
+	// If the source snapshot is deleted later, this field will not be set.
+	SourceSnapshot string `json:"sourceSnapshot,omitempty"`
+
+	// SourceSnapshotEncryptionKey: The customer-supplied encryption key of
+	// the source snapshot.
+	SourceSnapshotEncryptionKey *CustomerEncryptionKey `json:"sourceSnapshotEncryptionKey,omitempty"`
+
 	// ForceSendFields is a list of field names (e.g. "Description") to
 	// unconditionally include in API requests. By default, fields with
 	// empty values are omitted from API requests. However, any non-pointer,
@@ -4899,7 +4921,7 @@
 // Binding: Associates `members` with a `role`.
 type Binding struct {
 	// Condition: The condition that is associated with this binding. NOTE:
-	// an unsatisfied condition will not allow user access via current
+	// An unsatisfied condition will not allow user access via current
 	// binding. Different bindings, including their conditions, are examined
 	// independently.
 	Condition *Expr `json:"condition,omitempty"`
@@ -8307,7 +8329,7 @@
 	// based on the specific mode.
 	//
 	//
-	// - If the value is fixed, then the caculated value is equal to the
+	// - If the value is fixed, then the calculated value is equal to the
 	// fixed value.
 	// - If the value is a percent, then the calculated value is percent/100
 	// * targetSize. For example, the calculated value of a 80% of a managed
@@ -9643,10 +9665,10 @@
 	// greater value than checkIntervalSec.
 	TimeoutSec int64 `json:"timeoutSec,omitempty"`
 
-	// Type: Specifies the type of the healthCheck, either TCP, SSL, HTTP or
-	// HTTPS. If not specified, the default is TCP. Exactly one of the
-	// protocol-specific health check field must be specified, which must
-	// match type field.
+	// Type: Specifies the type of the healthCheck, either TCP, SSL, HTTP,
+	// HTTPS or HTTP2. If not specified, the default is TCP. Exactly one of
+	// the protocol-specific health check field must be specified, which
+	// must match type field.
 	//
 	// Possible values:
 	//   "HTTP"
@@ -11726,9 +11748,12 @@
 	// complementary to this Instance Group Manager.
 	NamedPorts []*NamedPort `json:"namedPorts,omitempty"`
 
-	// PendingActions: [Output Only] The list of instance actions and the
-	// number of instances in this managed instance group that are pending
-	// for each of those actions.
+	// PendingActions: [Deprecated] This field is deprecated and will be
+	// removed. Prefer using the status field instead. Please contact
+	// cloud-updater-feedback@google.com to leave feedback if your workload
+	// relies on this field. [Output Only] The list of instance actions and
+	// the number of instances in this managed instance group that are
+	// pending for each of those actions.
 	PendingActions *InstanceGroupManagerPendingActionsSummary `json:"pendingActions,omitempty"`
 
 	// Region: [Output Only] The URL of the region where the managed
@@ -11765,12 +11790,12 @@
 	// Versions: Specifies the instance templates used by this managed
 	// instance group to create instances.
 	//
-	// Each version is defined by an instanceTemplate. Every template can
-	// appear at most once per instance group. This field overrides the
-	// top-level instanceTemplate field. Read more about the relationships
-	// between these fields. Exactly one version must leave the targetSize
-	// field unset. That version will be applied to all remaining instances.
-	// For more information, read about canary updates.
+	// Each version is defined by an instanceTemplate and a name. Every
+	// version can appear at most once per instance group. This field
+	// overrides the top-level instanceTemplate field. Read more about the
+	// relationships between these fields. Exactly one version must leave
+	// the targetSize field unset. That version will be applied to all
+	// remaining instances. For more information, read about canary updates.
 	Versions []*InstanceGroupManagerVersion `json:"versions,omitempty"`
 
 	// Zone: [Output Only] The URL of the zone where the managed instance
@@ -12236,20 +12261,32 @@
 }
 
 type InstanceGroupManagerPendingActionsSummary struct {
-	// Creating: [Output Only] The number of instances in the managed
-	// instance group that are pending to be created.
+	// Creating: [Deprecated] This field is deprecated and will be removed.
+	// Prefer using the status field instead. Please contact
+	// cloud-updater-feedback@google.com to leave feedback if your workload
+	// relies on this field. [Output Only] The number of instances in the
+	// managed instance group that are pending to be created.
 	Creating int64 `json:"creating,omitempty"`
 
-	// Deleting: [Output Only] The number of instances in the managed
-	// instance group that are pending to be deleted.
+	// Deleting: [Deprecated] This field is deprecated and will be removed.
+	// Prefer using the status field instead. Please contact
+	// cloud-updater-feedback@google.com to leave feedback if your workload
+	// relies on this field. [Output Only] The number of instances in the
+	// managed instance group that are pending to be deleted.
 	Deleting int64 `json:"deleting,omitempty"`
 
-	// Recreating: [Output Only] The number of instances in the managed
-	// instance group that are pending to be recreated.
+	// Recreating: [Deprecated] This field is deprecated and will be
+	// removed. Prefer using the status field instead. Please contact
+	// cloud-updater-feedback@google.com to leave feedback if your workload
+	// relies on this field. [Output Only] The number of instances in the
+	// managed instance group that are pending to be recreated.
 	Recreating int64 `json:"recreating,omitempty"`
 
-	// Restarting: [Output Only] The number of instances in the managed
-	// instance group that are pending to be restarted.
+	// Restarting: [Deprecated] This field is deprecated and will be
+	// removed. Prefer using the status field instead. Please contact
+	// cloud-updater-feedback@google.com to leave feedback if your workload
+	// relies on this field. [Output Only] The number of instances in the
+	// managed instance group that are pending to be restarted.
 	Restarting int64 `json:"restarting,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "Creating") to
@@ -12343,6 +12380,11 @@
 }
 
 type InstanceGroupManagerUpdatePolicy struct {
+	// Possible values:
+	//   "NONE"
+	//   "PROACTIVE"
+	InstanceRedistributionType string `json:"instanceRedistributionType,omitempty"`
+
 	// MaxSurge: The maximum number of instances that can be created above
 	// the specified targetSize during the update process. By default, a
 	// fixed value of 1 is used. This value can be either a fixed number or
@@ -12396,20 +12438,22 @@
 	//   "PROACTIVE"
 	Type string `json:"type,omitempty"`
 
-	// ForceSendFields is a list of field names (e.g. "MaxSurge") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
+	// ForceSendFields is a list of field names (e.g.
+	// "InstanceRedistributionType") to unconditionally include in API
+	// requests. By default, fields with empty values are omitted from API
+	// requests. However, any non-pointer, non-interface field appearing in
+	// ForceSendFields will be sent to the server regardless of whether the
+	// field is empty or not. This may be used to include empty fields in
+	// Patch requests.
 	ForceSendFields []string `json:"-"`
 
-	// NullFields is a list of field names (e.g. "MaxSurge") to include in
-	// API requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
+	// NullFields is a list of field names (e.g.
+	// "InstanceRedistributionType") to include in API requests with the
+	// JSON null value. By default, fields with empty values are omitted
+	// from API requests. However, any field with an empty value appearing
+	// in NullFields will be sent to the server as null. It is an error if a
+	// field in this list has a non-empty value. This may be used to include
+	// null fields in Patch requests.
 	NullFields []string `json:"-"`
 }
 
@@ -12420,6 +12464,10 @@
 }
 
 type InstanceGroupManagerVersion struct {
+	// InstanceTemplate: The URL of the instance template that is specified
+	// for this managed instance group. The group uses this template to
+	// create new instances in the managed instance group until the
+	// `targetSize` for this version is reached.
 	InstanceTemplate string `json:"instanceTemplate,omitempty"`
 
 	// Name: Name of the version. Unique among all versions in the scope of
@@ -19023,8 +19071,10 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
-// NodeGroup: A NodeGroup resource. (== resource_for beta.nodeGroups ==)
-// (== resource_for v1.nodeGroups ==)
+// NodeGroup: A NodeGroup resource. To create a node group, you must
+// first create a node templates. To learn more about node groups and
+// sole-tenant nodes, read the Sole-tenant nodes documentation. (==
+// resource_for beta.nodeGroups ==) (== resource_for v1.nodeGroups ==)
 type NodeGroup struct {
 	// CreationTimestamp: [Output Only] Creation timestamp in RFC3339 text
 	// format.
@@ -19828,7 +19878,10 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
-// NodeTemplate: A Node Template resource.
+// NodeTemplate: A Node Template resource. To learn more about node
+// templates and sole-tenant nodes, read the Sole-tenant nodes
+// documentation. (== resource_for beta.nodeTemplates ==) (==
+// resource_for v1.nodeTemplates ==)
 type NodeTemplate struct {
 	// CreationTimestamp: [Output Only] Creation timestamp in RFC3339 text
 	// format.
@@ -24672,6 +24725,15 @@
 	// creating snapshots.
 	SnapshotSchedulePolicy *ResourcePolicySnapshotSchedulePolicy `json:"snapshotSchedulePolicy,omitempty"`
 
+	// Status: [Output Only] The status of resource policy creation.
+	//
+	// Possible values:
+	//   "CREATING"
+	//   "DELETING"
+	//   "INVALID"
+	//   "READY"
+	Status string `json:"status,omitempty"`
+
 	// ServerResponse contains the HTTP response code and headers from the
 	// server.
 	googleapi.ServerResponse `json:"-"`
@@ -25391,6 +25453,12 @@
 	// zone/instances/
 	NextHopInstance string `json:"nextHopInstance,omitempty"`
 
+	// NextHopInterconnectAttachment: [Output Only] The URL to an
+	// InterconnectAttachment which is the next hop for the route. This
+	// field will only be populated for the dynamic routes generated by
+	// Cloud Router with a linked interconnectAttachment.
+	NextHopInterconnectAttachment string `json:"nextHopInterconnectAttachment,omitempty"`
+
 	// NextHopIp: The network IP address of an instance that should handle
 	// matching packets. Only IPv4 is supported.
 	NextHopIp string `json:"nextHopIp,omitempty"`
@@ -35588,7 +35656,7 @@
 }
 
 // Zone: A Zone resource. (== resource_for beta.zones ==) (==
-// resource_for v1.zones ==)
+// resource_for v1.zones ==) Next ID: 17
 type Zone struct {
 	// AvailableCpuPlatforms: [Output Only] Available cpu/platform
 	// selections for the zone.
diff --git a/compute/v1/compute-api.json b/compute/v1/compute-api.json
index 34c253a..9de328d 100644
--- a/compute/v1/compute-api.json
+++ b/compute/v1/compute-api.json
@@ -29,7 +29,7 @@
   "description": "Creates and runs virtual machines on Google Cloud Platform.",
   "discoveryVersion": "v1",
   "documentationLink": "https://developers.google.com/compute/docs/reference/latest/",
-  "etag": "\"VPK3KBfpaEgZ16pozGOoMYfKc0U/tWhhqPM3LuAtFmJlbBMA8m8TfaA\"",
+  "etag": "\"VPK3KBfpaEgZ16pozGOoMYfKc0U/L7OHwc6Gh2BR8n3__eQkZu5iQsE\"",
   "icons": {
     "x16": "https://www.google.com/images/icons/product/compute_engine-16.png",
     "x32": "https://www.google.com/images/icons/product/compute_engine-32.png"
@@ -18314,7 +18314,7 @@
       }
     }
   },
-  "revision": "20190320",
+  "revision": "20190403",
   "rootUrl": "https://www.googleapis.com/",
   "schemas": {
     "AcceleratorConfig": {
@@ -20758,7 +20758,7 @@
       "properties": {
         "condition": {
           "$ref": "Expr",
-          "description": "The condition that is associated with this binding. NOTE: an unsatisfied condition will not allow user access via current binding. Different bindings, including their conditions, are examined independently."
+          "description": "The condition that is associated with this binding. NOTE: An unsatisfied condition will not allow user access via current binding. Different bindings, including their conditions, are examined independently."
         },
         "members": {
           "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` .\n\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.\n\n\n\n* `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`.",
@@ -22641,7 +22641,7 @@
       "id": "FixedOrPercent",
       "properties": {
         "calculated": {
-          "description": "[Output Only] Absolute value of VM instances calculated based on the specific mode.\n\n \n- If the value is fixed, then the caculated value is equal to the fixed value. \n- If the value is a percent, then the calculated value is percent/100 * targetSize. For example, the calculated value of a 80% of a managed instance group with 150 instances would be (80/100 * 150) = 120 VM instances. If there is a remainder, the number is rounded up.",
+          "description": "[Output Only] Absolute value of VM instances calculated based on the specific mode.\n\n \n- If the value is fixed, then the calculated value is equal to the fixed value. \n- If the value is a percent, then the calculated value is percent/100 * targetSize. For example, the calculated value of a 80% of a managed instance group with 150 instances would be (80/100 * 150) = 120 VM instances. If there is a remainder, the number is rounded up.",
           "format": "int32",
           "type": "integer"
         },
@@ -23415,7 +23415,7 @@
           "type": "integer"
         },
         "type": {
-          "description": "Specifies the type of the healthCheck, either TCP, SSL, HTTP or HTTPS. If not specified, the default is TCP. Exactly one of the protocol-specific health check field must be specified, which must match type field.",
+          "description": "Specifies the type of the healthCheck, either TCP, SSL, HTTP, HTTPS or HTTP2. If not specified, the default is TCP. Exactly one of the protocol-specific health check field must be specified, which must match type field.",
           "enum": [
             "HTTP",
             "HTTP2",
@@ -24993,7 +24993,7 @@
           "description": "The update policy for this managed instance group."
         },
         "versions": {
-          "description": "Specifies the instance templates used by this managed instance group to create instances.\n\nEach version is defined by an instanceTemplate. Every template can appear at most once per instance group. This field overrides the top-level instanceTemplate field. Read more about the relationships between these fields. Exactly one version must leave the targetSize field unset. That version will be applied to all remaining instances. For more information, read about canary updates.",
+          "description": "Specifies the instance templates used by this managed instance group to create instances.\n\nEach version is defined by an instanceTemplate and a name. Every version can appear at most once per instance group. This field overrides the top-level instanceTemplate field. Read more about the relationships between these fields. Exactly one version must leave the targetSize field unset. That version will be applied to all remaining instances. For more information, read about canary updates.",
           "items": {
             "$ref": "InstanceGroupManagerVersion"
           },
@@ -25348,6 +25348,7 @@
       "id": "InstanceGroupManagerVersion",
       "properties": {
         "instanceTemplate": {
+          "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create new instances in the managed instance group until the `targetSize` for this version is reached.",
           "type": "string"
         },
         "name": {
@@ -29595,7 +29596,7 @@
       "type": "object"
     },
     "NodeGroup": {
-      "description": "A NodeGroup resource. (== resource_for beta.nodeGroups ==) (== resource_for v1.nodeGroups ==)",
+      "description": "A NodeGroup resource. To create a node group, you must first create a node templates. To learn more about node groups and sole-tenant nodes, read the Sole-tenant nodes documentation. (== resource_for beta.nodeGroups ==) (== resource_for v1.nodeGroups ==)",
       "id": "NodeGroup",
       "properties": {
         "creationTimestamp": {
@@ -30156,7 +30157,7 @@
       "type": "object"
     },
     "NodeTemplate": {
-      "description": "A Node Template resource.",
+      "description": "A Node Template resource. To learn more about node templates and sole-tenant nodes, read the Sole-tenant nodes documentation. (== resource_for beta.nodeTemplates ==) (== resource_for v1.nodeTemplates ==)",
       "id": "NodeTemplate",
       "properties": {
         "creationTimestamp": {
@@ -38914,7 +38915,7 @@
       "type": "object"
     },
     "Zone": {
-      "description": "A Zone resource. (== resource_for beta.zones ==) (== resource_for v1.zones ==)",
+      "description": "A Zone resource. (== resource_for beta.zones ==) (== resource_for v1.zones ==) Next ID: 17",
       "id": "Zone",
       "properties": {
         "availableCpuPlatforms": {
diff --git a/compute/v1/compute-gen.go b/compute/v1/compute-gen.go
index ae45594..a8d3b1a 100644
--- a/compute/v1/compute-gen.go
+++ b/compute/v1/compute-gen.go
@@ -4518,7 +4518,7 @@
 // Binding: Associates `members` with a `role`.
 type Binding struct {
 	// Condition: The condition that is associated with this binding. NOTE:
-	// an unsatisfied condition will not allow user access via current
+	// An unsatisfied condition will not allow user access via current
 	// binding. Different bindings, including their conditions, are examined
 	// independently.
 	Condition *Expr `json:"condition,omitempty"`
@@ -7316,7 +7316,7 @@
 	// based on the specific mode.
 	//
 	//
-	// - If the value is fixed, then the caculated value is equal to the
+	// - If the value is fixed, then the calculated value is equal to the
 	// fixed value.
 	// - If the value is a percent, then the calculated value is percent/100
 	// * targetSize. For example, the calculated value of a 80% of a managed
@@ -8506,10 +8506,10 @@
 	// greater value than checkIntervalSec.
 	TimeoutSec int64 `json:"timeoutSec,omitempty"`
 
-	// Type: Specifies the type of the healthCheck, either TCP, SSL, HTTP or
-	// HTTPS. If not specified, the default is TCP. Exactly one of the
-	// protocol-specific health check field must be specified, which must
-	// match type field.
+	// Type: Specifies the type of the healthCheck, either TCP, SSL, HTTP,
+	// HTTPS or HTTP2. If not specified, the default is TCP. Exactly one of
+	// the protocol-specific health check field must be specified, which
+	// must match type field.
 	//
 	// Possible values:
 	//   "HTTP"
@@ -10597,12 +10597,12 @@
 	// Versions: Specifies the instance templates used by this managed
 	// instance group to create instances.
 	//
-	// Each version is defined by an instanceTemplate. Every template can
-	// appear at most once per instance group. This field overrides the
-	// top-level instanceTemplate field. Read more about the relationships
-	// between these fields. Exactly one version must leave the targetSize
-	// field unset. That version will be applied to all remaining instances.
-	// For more information, read about canary updates.
+	// Each version is defined by an instanceTemplate and a name. Every
+	// version can appear at most once per instance group. This field
+	// overrides the top-level instanceTemplate field. Read more about the
+	// relationships between these fields. Exactly one version must leave
+	// the targetSize field unset. That version will be applied to all
+	// remaining instances. For more information, read about canary updates.
 	Versions []*InstanceGroupManagerVersion `json:"versions,omitempty"`
 
 	// Zone: [Output Only] The URL of the zone where the managed instance
@@ -11172,6 +11172,10 @@
 }
 
 type InstanceGroupManagerVersion struct {
+	// InstanceTemplate: The URL of the instance template that is specified
+	// for this managed instance group. The group uses this template to
+	// create new instances in the managed instance group until the
+	// `targetSize` for this version is reached.
 	InstanceTemplate string `json:"instanceTemplate,omitempty"`
 
 	// Name: Name of the version. Unique among all versions in the scope of
@@ -17500,8 +17504,10 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
-// NodeGroup: A NodeGroup resource. (== resource_for beta.nodeGroups ==)
-// (== resource_for v1.nodeGroups ==)
+// NodeGroup: A NodeGroup resource. To create a node group, you must
+// first create a node templates. To learn more about node groups and
+// sole-tenant nodes, read the Sole-tenant nodes documentation. (==
+// resource_for beta.nodeGroups ==) (== resource_for v1.nodeGroups ==)
 type NodeGroup struct {
 	// CreationTimestamp: [Output Only] Creation timestamp in RFC3339 text
 	// format.
@@ -18302,7 +18308,10 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
-// NodeTemplate: A Node Template resource.
+// NodeTemplate: A Node Template resource. To learn more about node
+// templates and sole-tenant nodes, read the Sole-tenant nodes
+// documentation. (== resource_for beta.nodeTemplates ==) (==
+// resource_for v1.nodeTemplates ==)
 type NodeTemplate struct {
 	// CreationTimestamp: [Output Only] Creation timestamp in RFC3339 text
 	// format.
@@ -31065,7 +31074,7 @@
 }
 
 // Zone: A Zone resource. (== resource_for beta.zones ==) (==
-// resource_for v1.zones ==)
+// resource_for v1.zones ==) Next ID: 17
 type Zone struct {
 	// AvailableCpuPlatforms: [Output Only] Available cpu/platform
 	// selections for the zone.
diff --git a/container/v1beta1/container-api.json b/container/v1beta1/container-api.json
index b76117f..14962d5 100644
--- a/container/v1beta1/container-api.json
+++ b/container/v1beta1/container-api.json
@@ -111,7 +111,7 @@
             "usableSubnetworks": {
               "methods": {
                 "list": {
-                  "description": "Lists subnetworks that are usable for creating clusters in a project.",
+                  "description": "Lists subnetworks that can be used for creating clusters in a project.",
                   "flatPath": "v1beta1/projects/{projectsId}/aggregated/usableSubnetworks",
                   "httpMethod": "GET",
                   "id": "container.projects.aggregated.usableSubnetworks.list",
@@ -158,7 +158,7 @@
         "locations": {
           "methods": {
             "getServerConfig": {
-              "description": "Returns configuration info about the Kubernetes Engine service.",
+              "description": "Returns configuration info about the Google Kubernetes Engine service.",
               "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/serverConfig",
               "httpMethod": "GET",
               "id": "container.projects.locations.getServerConfig",
@@ -193,7 +193,7 @@
               ]
             },
             "list": {
-              "description": "Used to fetch locations that offer GKE.",
+              "description": "Fetches locations that offer Google Kubernetes Engine.",
               "flatPath": "v1beta1/projects/{projectsId}/locations",
               "httpMethod": "GET",
               "id": "container.projects.locations.list",
@@ -250,7 +250,7 @@
                   ]
                 },
                 "create": {
-                  "description": "Creates a cluster, consisting of the specified number and type of Google\nCompute Engine instances.\n\nBy default, the cluster is created in the project's\n[default network](/compute/docs/networks-and-firewalls#networks).\n\nOne firewall is added for the cluster. After cluster creation,\nthe cluster creates routes for each node to allow the containers\non that node to communicate with all other instances in the\ncluster.\n\nFinally, an entry is added to the project's global metadata indicating\nwhich CIDR range is being used by the cluster.",
+                  "description": "Creates a cluster, consisting of the specified number and type of Google\nCompute Engine instances.\n\nBy default, the cluster is created in the project's\n[default network](/compute/docs/networks-and-firewalls#networks).\n\nOne firewall is added for the cluster. After cluster creation,\nthe Kubelet creates routes for each node to allow the containers\non that node to communicate with all other instances in the\ncluster.\n\nFinally, an entry is added to the project's global metadata indicating\nwhich CIDR range the cluster is using.",
                   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters",
                   "httpMethod": "POST",
                   "id": "container.projects.locations.clusters.create",
@@ -278,7 +278,7 @@
                   ]
                 },
                 "delete": {
-                  "description": "Deletes the cluster, including the Kubernetes endpoint and all worker\nnodes.\n\nFirewalls and routes that were configured during cluster creation\nare also deleted.\n\nOther Google Compute Engine resources that might be in use by the cluster\n(e.g. load balancer resources) will not be deleted if they weren't present\nat the initial create time.",
+                  "description": "Deletes the cluster, including the Kubernetes endpoint and all worker\nnodes.\n\nFirewalls and routes that were configured during cluster creation\nare also deleted.\n\nOther Google Compute Engine resources that might be in use by the cluster,\nsuch as load balancer resources, are not deleted if they weren't present\nwhen the cluster was initially created.",
                   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}",
                   "httpMethod": "DELETE",
                   "id": "container.projects.locations.clusters.delete",
@@ -358,7 +358,7 @@
                   ]
                 },
                 "getJwks": {
-                  "description": "GetJSONWebKeys gets the public component of the cluster signing keys in\nJSON Web Key format.\nThis API is not yet intended for general use, and is not available for all\nclusters.",
+                  "description": "Gets the public component of the cluster signing keys in\nJSON Web Key format.\nThis API is not yet intended for general use, and is not available for all\nclusters.",
                   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/jwks",
                   "httpMethod": "GET",
                   "id": "container.projects.locations.clusters.getJwks",
@@ -558,7 +558,7 @@
                   ]
                 },
                 "setMasterAuth": {
-                  "description": "Used to set master auth materials. Currently supports :-\nChanging the admin password for a specific cluster.\nThis can be either via password generation or explicitly set.\nModify basic_auth.csv and reset the K8S API server.",
+                  "description": "Sets master auth materials. Currently supports changing the admin password\nor a specific cluster, either via password generation or explicitly setting\nthe password.",
                   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMasterAuth",
                   "httpMethod": "POST",
                   "id": "container.projects.locations.clusters.setMasterAuth",
@@ -614,7 +614,7 @@
                   ]
                 },
                 "setNetworkPolicy": {
-                  "description": "Enables/Disables Network Policy for a cluster.",
+                  "description": "Enables or disables Network Policy for a cluster.",
                   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setNetworkPolicy",
                   "httpMethod": "POST",
                   "id": "container.projects.locations.clusters.setNetworkPolicy",
@@ -670,7 +670,7 @@
                   ]
                 },
                 "startIpRotation": {
-                  "description": "Start master IP rotation.",
+                  "description": "Starts master IP rotation.",
                   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:startIpRotation",
                   "httpMethod": "POST",
                   "id": "container.projects.locations.clusters.startIpRotation",
@@ -831,7 +831,7 @@
                       ]
                     },
                     "get": {
-                      "description": "Retrieves the node pool requested.",
+                      "description": "Retrieves the requested node pool.",
                       "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}",
                       "httpMethod": "GET",
                       "id": "container.projects.locations.clusters.nodePools.get",
@@ -916,7 +916,7 @@
                       ]
                     },
                     "rollback": {
-                      "description": "Roll back the previously Aborted or Failed NodePool upgrade.\nThis will be an no-op if the last upgrade successfully completed.",
+                      "description": "Rolls back a previously Aborted or Failed NodePool upgrade.\nThis makes no changes if the last upgrade successfully completed.",
                       "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:rollback",
                       "httpMethod": "POST",
                       "id": "container.projects.locations.clusters.nodePools.rollback",
@@ -1060,7 +1060,7 @@
                 "well-known": {
                   "methods": {
                     "getOpenid-configuration": {
-                      "description": "GetOpenIDConfig gets the OIDC discovery document for the cluster.\nSee the OpenID Connect Discovery 1.0 specification for details.\nhttps://openid.net/specs/openid-connect-discovery-1_0.html\nThis API is not yet intended for general use, and is not available for all\nclusters.",
+                      "description": "Gets the OIDC discovery document for the cluster.\nSee the\n[OpenID Connect Discovery 1.0\nspecification](https://openid.net/specs/openid-connect-discovery-1_0.html)\nfor details.\nThis API is not yet intended for general use, and is not available for all\nclusters.",
                       "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/.well-known/openid-configuration",
                       "httpMethod": "GET",
                       "id": "container.projects.locations.clusters.well-known.getOpenid-configuration",
@@ -1159,7 +1159,7 @@
                   ]
                 },
                 "list": {
-                  "description": "Lists all operations in a project in a specific zone or all zones.",
+                  "description": "Lists all operations in a project in the specified zone or all zones.",
                   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations",
                   "httpMethod": "GET",
                   "id": "container.projects.locations.operations.list",
@@ -1200,7 +1200,7 @@
         "zones": {
           "methods": {
             "getServerconfig": {
-              "description": "Returns configuration info about the Kubernetes Engine service.",
+              "description": "Returns configuration info about the Google Kubernetes Engine service.",
               "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/serverconfig",
               "httpMethod": "GET",
               "id": "container.projects.zones.getServerconfig",
@@ -1322,7 +1322,7 @@
                   ]
                 },
                 "create": {
-                  "description": "Creates a cluster, consisting of the specified number and type of Google\nCompute Engine instances.\n\nBy default, the cluster is created in the project's\n[default network](/compute/docs/networks-and-firewalls#networks).\n\nOne firewall is added for the cluster. After cluster creation,\nthe cluster creates routes for each node to allow the containers\non that node to communicate with all other instances in the\ncluster.\n\nFinally, an entry is added to the project's global metadata indicating\nwhich CIDR range is being used by the cluster.",
+                  "description": "Creates a cluster, consisting of the specified number and type of Google\nCompute Engine instances.\n\nBy default, the cluster is created in the project's\n[default network](/compute/docs/networks-and-firewalls#networks).\n\nOne firewall is added for the cluster. After cluster creation,\nthe Kubelet creates routes for each node to allow the containers\non that node to communicate with all other instances in the\ncluster.\n\nFinally, an entry is added to the project's global metadata indicating\nwhich CIDR range the cluster is using.",
                   "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters",
                   "httpMethod": "POST",
                   "id": "container.projects.zones.clusters.create",
@@ -1356,7 +1356,7 @@
                   ]
                 },
                 "delete": {
-                  "description": "Deletes the cluster, including the Kubernetes endpoint and all worker\nnodes.\n\nFirewalls and routes that were configured during cluster creation\nare also deleted.\n\nOther Google Compute Engine resources that might be in use by the cluster\n(e.g. load balancer resources) will not be deleted if they weren't present\nat the initial create time.",
+                  "description": "Deletes the cluster, including the Kubernetes endpoint and all worker\nnodes.\n\nFirewalls and routes that were configured during cluster creation\nare also deleted.\n\nOther Google Compute Engine resources that might be in use by the cluster,\nsuch as load balancer resources, are not deleted if they weren't present\nwhen the cluster was initially created.",
                   "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}",
                   "httpMethod": "DELETE",
                   "id": "container.projects.zones.clusters.delete",
@@ -1765,7 +1765,7 @@
                   ]
                 },
                 "setMasterAuth": {
-                  "description": "Used to set master auth materials. Currently supports :-\nChanging the admin password for a specific cluster.\nThis can be either via password generation or explicitly set.\nModify basic_auth.csv and reset the K8S API server.",
+                  "description": "Sets master auth materials. Currently supports changing the admin password\nor a specific cluster, either via password generation or explicitly setting\nthe password.",
                   "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMasterAuth",
                   "httpMethod": "POST",
                   "id": "container.projects.zones.clusters.setMasterAuth",
@@ -1806,7 +1806,7 @@
                   ]
                 },
                 "setNetworkPolicy": {
-                  "description": "Enables/Disables Network Policy for a cluster.",
+                  "description": "Enables or disables Network Policy for a cluster.",
                   "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setNetworkPolicy",
                   "httpMethod": "POST",
                   "id": "container.projects.zones.clusters.setNetworkPolicy",
@@ -1847,7 +1847,7 @@
                   ]
                 },
                 "startIpRotation": {
-                  "description": "Start master IP rotation.",
+                  "description": "Starts master IP rotation.",
                   "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:startIpRotation",
                   "httpMethod": "POST",
                   "id": "container.projects.zones.clusters.startIpRotation",
@@ -2072,7 +2072,7 @@
                       ]
                     },
                     "get": {
-                      "description": "Retrieves the node pool requested.",
+                      "description": "Retrieves the requested node pool.",
                       "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}",
                       "httpMethod": "GET",
                       "id": "container.projects.zones.clusters.nodePools.get",
@@ -2165,7 +2165,7 @@
                       ]
                     },
                     "rollback": {
-                      "description": "Roll back the previously Aborted or Failed NodePool upgrade.\nThis will be an no-op if the last upgrade successfully completed.",
+                      "description": "Rolls back a previously Aborted or Failed NodePool upgrade.\nThis makes no changes if the last upgrade successfully completed.",
                       "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}:rollback",
                       "httpMethod": "POST",
                       "id": "container.projects.zones.clusters.nodePools.rollback",
@@ -2447,7 +2447,7 @@
                   ]
                 },
                 "list": {
-                  "description": "Lists all operations in a project in a specific zone or all zones.",
+                  "description": "Lists all operations in a project in the specified zone or all zones.",
                   "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/operations",
                   "httpMethod": "GET",
                   "id": "container.projects.zones.operations.list",
@@ -2489,7 +2489,7 @@
       }
     }
   },
-  "revision": "20190316",
+  "revision": "20190319",
   "rootUrl": "https://container.googleapis.com/",
   "schemas": {
     "AcceleratorConfig": {
@@ -3100,7 +3100,7 @@
           "enumDescriptions": [
             "Should never be set",
             "Secrets in etcd are encrypted.",
-            "Secrets in etcd are stored in plain text (at etcd level) - this is\nunrelated to GCE level full disk encryption."
+            "Secrets in etcd are stored in plain text (at etcd level) - this is\nunrelated to Google Compute Engine level full disk encryption."
           ],
           "type": "string"
         }
@@ -4769,16 +4769,18 @@
       "id": "WorkloadMetadataConfig",
       "properties": {
         "nodeMetadata": {
-          "description": "NodeMetadata is the configuration for how to expose the node metadata to\nthe workload running on the node.",
+          "description": "NodeMetadata is the configuration for how to expose metadata to the\nworkloads running on the node.",
           "enum": [
             "UNSPECIFIED",
             "SECURE",
-            "EXPOSE"
+            "EXPOSE",
+            "GKE_METADATA_SERVER"
           ],
           "enumDescriptions": [
             "Not set.",
             "Prevent workloads not in hostNetwork from accessing certain VM metadata,\nspecifically kube-env, which contains Kubelet credentials, and the\ninstance identity token.\n\nMetadata concealment is a temporary security solution available while the\nbootstrapping process for cluster nodes is being redesigned with\nsignificant security improvements.  This feature is scheduled to be\ndeprecated in the future and later removed.",
-            "Expose all VM metadata to pods."
+            "Expose all VM metadata to pods.",
+            "Run the GKE Metadata Server on this node. The GKE Metadata Server exposes\na metadata API to workloads that is compatible with the V1 Compute\nMetadata APIs exposed by the Compute Engine and App Engine Metadata\nServers. This feature can only be enabled if Workload Identity is enabled\nat the cluster level."
           ],
           "type": "string"
         }
diff --git a/container/v1beta1/container-gen.go b/container/v1beta1/container-gen.go
index b068712..d931bb2 100644
--- a/container/v1beta1/container-gen.go
+++ b/container/v1beta1/container-gen.go
@@ -1435,7 +1435,7 @@
 	//   "ENCRYPTED" - Secrets in etcd are encrypted.
 	//   "DECRYPTED" - Secrets in etcd are stored in plain text (at etcd
 	// level) - this is
-	// unrelated to GCE level full disk encryption.
+	// unrelated to Google Compute Engine level full disk encryption.
 	State string `json:"state,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "KeyName") to
@@ -4633,9 +4633,9 @@
 // configuration to expose to
 // workloads on the node pool.
 type WorkloadMetadataConfig struct {
-	// NodeMetadata: NodeMetadata is the configuration for how to expose the
-	// node metadata to
-	// the workload running on the node.
+	// NodeMetadata: NodeMetadata is the configuration for how to expose
+	// metadata to the
+	// workloads running on the node.
 	//
 	// Possible values:
 	//   "UNSPECIFIED" - Not set.
@@ -4653,6 +4653,15 @@
 	// be
 	// deprecated in the future and later removed.
 	//   "EXPOSE" - Expose all VM metadata to pods.
+	//   "GKE_METADATA_SERVER" - Run the GKE Metadata Server on this node.
+	// The GKE Metadata Server exposes
+	// a metadata API to workloads that is compatible with the V1
+	// Compute
+	// Metadata APIs exposed by the Compute Engine and App Engine
+	// Metadata
+	// Servers. This feature can only be enabled if Workload Identity is
+	// enabled
+	// at the cluster level.
 	NodeMetadata string `json:"nodeMetadata,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "NodeMetadata") to
@@ -4689,7 +4698,7 @@
 	header_      http.Header
 }
 
-// List: Lists subnetworks that are usable for creating clusters in a
+// List: Lists subnetworks that can be used for creating clusters in a
 // project.
 func (r *ProjectsAggregatedUsableSubnetworksService) List(parent string) *ProjectsAggregatedUsableSubnetworksListCall {
 	c := &ProjectsAggregatedUsableSubnetworksListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
@@ -4827,7 +4836,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Lists subnetworks that are usable for creating clusters in a project.",
+	//   "description": "Lists subnetworks that can be used for creating clusters in a project.",
 	//   "flatPath": "v1beta1/projects/{projectsId}/aggregated/usableSubnetworks",
 	//   "httpMethod": "GET",
 	//   "id": "container.projects.aggregated.usableSubnetworks.list",
@@ -4902,8 +4911,8 @@
 	header_      http.Header
 }
 
-// GetServerConfig: Returns configuration info about the Kubernetes
-// Engine service.
+// GetServerConfig: Returns configuration info about the Google
+// Kubernetes Engine service.
 func (r *ProjectsLocationsService) GetServerConfig(name string) *ProjectsLocationsGetServerConfigCall {
 	c := &ProjectsLocationsGetServerConfigCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.name = name
@@ -5028,7 +5037,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Returns configuration info about the Kubernetes Engine service.",
+	//   "description": "Returns configuration info about the Google Kubernetes Engine service.",
 	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/serverConfig",
 	//   "httpMethod": "GET",
 	//   "id": "container.projects.locations.getServerConfig",
@@ -5076,7 +5085,7 @@
 	header_      http.Header
 }
 
-// List: Used to fetch locations that offer GKE.
+// List: Fetches locations that offer Google Kubernetes Engine.
 func (r *ProjectsLocationsService) List(parent string) *ProjectsLocationsListCall {
 	c := &ProjectsLocationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.parent = parent
@@ -5181,7 +5190,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Used to fetch locations that offer GKE.",
+	//   "description": "Fetches locations that offer Google Kubernetes Engine.",
 	//   "flatPath": "v1beta1/projects/{projectsId}/locations",
 	//   "httpMethod": "GET",
 	//   "id": "container.projects.locations.list",
@@ -5367,14 +5376,14 @@
 // network](/compute/docs/networks-and-firewalls#networks).
 //
 // One firewall is added for the cluster. After cluster creation,
-// the cluster creates routes for each node to allow the containers
+// the Kubelet creates routes for each node to allow the containers
 // on that node to communicate with all other instances in
 // the
 // cluster.
 //
 // Finally, an entry is added to the project's global metadata
 // indicating
-// which CIDR range is being used by the cluster.
+// which CIDR range the cluster is using.
 func (r *ProjectsLocationsClustersService) Create(parent string, createclusterrequest *CreateClusterRequest) *ProjectsLocationsClustersCreateCall {
 	c := &ProjectsLocationsClustersCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.parent = parent
@@ -5472,7 +5481,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Creates a cluster, consisting of the specified number and type of Google\nCompute Engine instances.\n\nBy default, the cluster is created in the project's\n[default network](/compute/docs/networks-and-firewalls#networks).\n\nOne firewall is added for the cluster. After cluster creation,\nthe cluster creates routes for each node to allow the containers\non that node to communicate with all other instances in the\ncluster.\n\nFinally, an entry is added to the project's global metadata indicating\nwhich CIDR range is being used by the cluster.",
+	//   "description": "Creates a cluster, consisting of the specified number and type of Google\nCompute Engine instances.\n\nBy default, the cluster is created in the project's\n[default network](/compute/docs/networks-and-firewalls#networks).\n\nOne firewall is added for the cluster. After cluster creation,\nthe Kubelet creates routes for each node to allow the containers\non that node to communicate with all other instances in the\ncluster.\n\nFinally, an entry is added to the project's global metadata indicating\nwhich CIDR range the cluster is using.",
 	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters",
 	//   "httpMethod": "POST",
 	//   "id": "container.projects.locations.clusters.create",
@@ -5520,10 +5529,10 @@
 // are also deleted.
 //
 // Other Google Compute Engine resources that might be in use by the
-// cluster
-// (e.g. load balancer resources) will not be deleted if they weren't
+// cluster,
+// such as load balancer resources, are not deleted if they weren't
 // present
-// at the initial create time.
+// when the cluster was initially created.
 func (r *ProjectsLocationsClustersService) Delete(name string) *ProjectsLocationsClustersDeleteCall {
 	c := &ProjectsLocationsClustersDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.name = name
@@ -5645,7 +5654,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Deletes the cluster, including the Kubernetes endpoint and all worker\nnodes.\n\nFirewalls and routes that were configured during cluster creation\nare also deleted.\n\nOther Google Compute Engine resources that might be in use by the cluster\n(e.g. load balancer resources) will not be deleted if they weren't present\nat the initial create time.",
+	//   "description": "Deletes the cluster, including the Kubernetes endpoint and all worker\nnodes.\n\nFirewalls and routes that were configured during cluster creation\nare also deleted.\n\nOther Google Compute Engine resources that might be in use by the cluster,\nsuch as load balancer resources, are not deleted if they weren't present\nwhen the cluster was initially created.",
 	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}",
 	//   "httpMethod": "DELETE",
 	//   "id": "container.projects.locations.clusters.delete",
@@ -5886,8 +5895,8 @@
 	header_      http.Header
 }
 
-// GetJwks: GetJSONWebKeys gets the public component of the cluster
-// signing keys in
+// GetJwks: Gets the public component of the cluster signing keys
+// in
 // JSON Web Key format.
 // This API is not yet intended for general use, and is not available
 // for all
@@ -5996,7 +6005,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "GetJSONWebKeys gets the public component of the cluster signing keys in\nJSON Web Key format.\nThis API is not yet intended for general use, and is not available for all\nclusters.",
+	//   "description": "Gets the public component of the cluster signing keys in\nJSON Web Key format.\nThis API is not yet intended for general use, and is not available for all\nclusters.",
 	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/jwks",
 	//   "httpMethod": "GET",
 	//   "id": "container.projects.locations.clusters.getJwks",
@@ -6906,11 +6915,11 @@
 	header_              http.Header
 }
 
-// SetMasterAuth: Used to set master auth materials. Currently supports
-// :-
-// Changing the admin password for a specific cluster.
-// This can be either via password generation or explicitly set.
-// Modify basic_auth.csv and reset the K8S API server.
+// SetMasterAuth: Sets master auth materials. Currently supports
+// changing the admin password
+// or a specific cluster, either via password generation or explicitly
+// setting
+// the password.
 func (r *ProjectsLocationsClustersService) SetMasterAuth(name string, setmasterauthrequest *SetMasterAuthRequest) *ProjectsLocationsClustersSetMasterAuthCall {
 	c := &ProjectsLocationsClustersSetMasterAuthCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.name = name
@@ -7008,7 +7017,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Used to set master auth materials. Currently supports :-\nChanging the admin password for a specific cluster.\nThis can be either via password generation or explicitly set.\nModify basic_auth.csv and reset the K8S API server.",
+	//   "description": "Sets master auth materials. Currently supports changing the admin password\nor a specific cluster, either via password generation or explicitly setting\nthe password.",
 	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMasterAuth",
 	//   "httpMethod": "POST",
 	//   "id": "container.projects.locations.clusters.setMasterAuth",
@@ -7188,7 +7197,7 @@
 	header_                 http.Header
 }
 
-// SetNetworkPolicy: Enables/Disables Network Policy for a cluster.
+// SetNetworkPolicy: Enables or disables Network Policy for a cluster.
 func (r *ProjectsLocationsClustersService) SetNetworkPolicy(name string, setnetworkpolicyrequest *SetNetworkPolicyRequest) *ProjectsLocationsClustersSetNetworkPolicyCall {
 	c := &ProjectsLocationsClustersSetNetworkPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.name = name
@@ -7286,7 +7295,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Enables/Disables Network Policy for a cluster.",
+	//   "description": "Enables or disables Network Policy for a cluster.",
 	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setNetworkPolicy",
 	//   "httpMethod": "POST",
 	//   "id": "container.projects.locations.clusters.setNetworkPolicy",
@@ -7466,7 +7475,7 @@
 	header_                http.Header
 }
 
-// StartIpRotation: Start master IP rotation.
+// StartIpRotation: Starts master IP rotation.
 func (r *ProjectsLocationsClustersService) StartIpRotation(name string, startiprotationrequest *StartIPRotationRequest) *ProjectsLocationsClustersStartIpRotationCall {
 	c := &ProjectsLocationsClustersStartIpRotationCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.name = name
@@ -7564,7 +7573,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Start master IP rotation.",
+	//   "description": "Starts master IP rotation.",
 	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:startIpRotation",
 	//   "httpMethod": "POST",
 	//   "id": "container.projects.locations.clusters.startIpRotation",
@@ -8209,7 +8218,7 @@
 	header_      http.Header
 }
 
-// Get: Retrieves the node pool requested.
+// Get: Retrieves the requested node pool.
 func (r *ProjectsLocationsClustersNodePoolsService) Get(name string) *ProjectsLocationsClustersNodePoolsGetCall {
 	c := &ProjectsLocationsClustersNodePoolsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.name = name
@@ -8352,7 +8361,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Retrieves the node pool requested.",
+	//   "description": "Retrieves the requested node pool.",
 	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}",
 	//   "httpMethod": "GET",
 	//   "id": "container.projects.locations.clusters.nodePools.get",
@@ -8598,9 +8607,9 @@
 	header_                        http.Header
 }
 
-// Rollback: Roll back the previously Aborted or Failed NodePool
+// Rollback: Rolls back a previously Aborted or Failed NodePool
 // upgrade.
-// This will be an no-op if the last upgrade successfully completed.
+// This makes no changes if the last upgrade successfully completed.
 func (r *ProjectsLocationsClustersNodePoolsService) Rollback(name string, rollbacknodepoolupgraderequest *RollbackNodePoolUpgradeRequest) *ProjectsLocationsClustersNodePoolsRollbackCall {
 	c := &ProjectsLocationsClustersNodePoolsRollbackCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.name = name
@@ -8698,7 +8707,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Roll back the previously Aborted or Failed NodePool upgrade.\nThis will be an no-op if the last upgrade successfully completed.",
+	//   "description": "Rolls back a previously Aborted or Failed NodePool upgrade.\nThis makes no changes if the last upgrade successfully completed.",
 	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:rollback",
 	//   "httpMethod": "POST",
 	//   "id": "container.projects.locations.clusters.nodePools.rollback",
@@ -9297,14 +9306,16 @@
 	header_      http.Header
 }
 
-// GetOpenidConfiguration: GetOpenIDConfig gets the OIDC discovery
-// document for the cluster.
-// See the OpenID Connect Discovery 1.0 specification for
-// details.
-// https://openid.net/specs/openid-connect-discovery-1_0.html
-// Th
-// is API is not yet intended for general use, and is not available for
-// all
+// GetOpenidConfiguration: Gets the OIDC discovery document for the
+// cluster.
+// See the
+// [OpenID Connect Discovery
+// 1.0
+// specification](https://openid.net/specs/openid-connect-discovery-1
+// _0.html)
+// for details.
+// This API is not yet intended for general use, and is not available
+// for all
 // clusters.
 func (r *ProjectsLocationsClustersWellKnownService) GetOpenidConfiguration(parent string) *ProjectsLocationsClustersWellKnownGetOpenidConfigurationCall {
 	c := &ProjectsLocationsClustersWellKnownGetOpenidConfigurationCall{s: r.s, urlParams_: make(gensupport.URLParams)}
@@ -9410,7 +9421,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "GetOpenIDConfig gets the OIDC discovery document for the cluster.\nSee the OpenID Connect Discovery 1.0 specification for details.\nhttps://openid.net/specs/openid-connect-discovery-1_0.html\nThis API is not yet intended for general use, and is not available for all\nclusters.",
+	//   "description": "Gets the OIDC discovery document for the cluster.\nSee the\n[OpenID Connect Discovery 1.0\nspecification](https://openid.net/specs/openid-connect-discovery-1_0.html)\nfor details.\nThis API is not yet intended for general use, and is not available for all\nclusters.",
 	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/.well-known/openid-configuration",
 	//   "httpMethod": "GET",
 	//   "id": "container.projects.locations.clusters.well-known.getOpenid-configuration",
@@ -9775,7 +9786,7 @@
 	header_      http.Header
 }
 
-// List: Lists all operations in a project in a specific zone or all
+// List: Lists all operations in a project in the specified zone or all
 // zones.
 func (r *ProjectsLocationsOperationsService) List(parent string) *ProjectsLocationsOperationsListCall {
 	c := &ProjectsLocationsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
@@ -9903,7 +9914,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Lists all operations in a project in a specific zone or all zones.",
+	//   "description": "Lists all operations in a project in the specified zone or all zones.",
 	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations",
 	//   "httpMethod": "GET",
 	//   "id": "container.projects.locations.operations.list",
@@ -9952,8 +9963,8 @@
 	header_      http.Header
 }
 
-// GetServerconfig: Returns configuration info about the Kubernetes
-// Engine service.
+// GetServerconfig: Returns configuration info about the Google
+// Kubernetes Engine service.
 func (r *ProjectsZonesService) GetServerconfig(projectId string, zone string) *ProjectsZonesGetServerconfigCall {
 	c := &ProjectsZonesGetServerconfigCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.projectId = projectId
@@ -10068,7 +10079,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Returns configuration info about the Kubernetes Engine service.",
+	//   "description": "Returns configuration info about the Google Kubernetes Engine service.",
 	//   "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/serverconfig",
 	//   "httpMethod": "GET",
 	//   "id": "container.projects.zones.getServerconfig",
@@ -10443,14 +10454,14 @@
 // network](/compute/docs/networks-and-firewalls#networks).
 //
 // One firewall is added for the cluster. After cluster creation,
-// the cluster creates routes for each node to allow the containers
+// the Kubelet creates routes for each node to allow the containers
 // on that node to communicate with all other instances in
 // the
 // cluster.
 //
 // Finally, an entry is added to the project's global metadata
 // indicating
-// which CIDR range is being used by the cluster.
+// which CIDR range the cluster is using.
 func (r *ProjectsZonesClustersService) Create(projectId string, zone string, createclusterrequest *CreateClusterRequest) *ProjectsZonesClustersCreateCall {
 	c := &ProjectsZonesClustersCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.projectId = projectId
@@ -10550,7 +10561,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Creates a cluster, consisting of the specified number and type of Google\nCompute Engine instances.\n\nBy default, the cluster is created in the project's\n[default network](/compute/docs/networks-and-firewalls#networks).\n\nOne firewall is added for the cluster. After cluster creation,\nthe cluster creates routes for each node to allow the containers\non that node to communicate with all other instances in the\ncluster.\n\nFinally, an entry is added to the project's global metadata indicating\nwhich CIDR range is being used by the cluster.",
+	//   "description": "Creates a cluster, consisting of the specified number and type of Google\nCompute Engine instances.\n\nBy default, the cluster is created in the project's\n[default network](/compute/docs/networks-and-firewalls#networks).\n\nOne firewall is added for the cluster. After cluster creation,\nthe Kubelet creates routes for each node to allow the containers\non that node to communicate with all other instances in the\ncluster.\n\nFinally, an entry is added to the project's global metadata indicating\nwhich CIDR range the cluster is using.",
 	//   "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters",
 	//   "httpMethod": "POST",
 	//   "id": "container.projects.zones.clusters.create",
@@ -10606,10 +10617,10 @@
 // are also deleted.
 //
 // Other Google Compute Engine resources that might be in use by the
-// cluster
-// (e.g. load balancer resources) will not be deleted if they weren't
+// cluster,
+// such as load balancer resources, are not deleted if they weren't
 // present
-// at the initial create time.
+// when the cluster was initially created.
 func (r *ProjectsZonesClustersService) Delete(projectId string, zone string, clusterId string) *ProjectsZonesClustersDeleteCall {
 	c := &ProjectsZonesClustersDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.projectId = projectId
@@ -10713,7 +10724,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Deletes the cluster, including the Kubernetes endpoint and all worker\nnodes.\n\nFirewalls and routes that were configured during cluster creation\nare also deleted.\n\nOther Google Compute Engine resources that might be in use by the cluster\n(e.g. load balancer resources) will not be deleted if they weren't present\nat the initial create time.",
+	//   "description": "Deletes the cluster, including the Kubernetes endpoint and all worker\nnodes.\n\nFirewalls and routes that were configured during cluster creation\nare also deleted.\n\nOther Google Compute Engine resources that might be in use by the cluster,\nsuch as load balancer resources, are not deleted if they weren't present\nwhen the cluster was initially created.",
 	//   "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}",
 	//   "httpMethod": "DELETE",
 	//   "id": "container.projects.zones.clusters.delete",
@@ -12221,11 +12232,11 @@
 	header_              http.Header
 }
 
-// SetMasterAuth: Used to set master auth materials. Currently supports
-// :-
-// Changing the admin password for a specific cluster.
-// This can be either via password generation or explicitly set.
-// Modify basic_auth.csv and reset the K8S API server.
+// SetMasterAuth: Sets master auth materials. Currently supports
+// changing the admin password
+// or a specific cluster, either via password generation or explicitly
+// setting
+// the password.
 func (r *ProjectsZonesClustersService) SetMasterAuth(projectId string, zone string, clusterId string, setmasterauthrequest *SetMasterAuthRequest) *ProjectsZonesClustersSetMasterAuthCall {
 	c := &ProjectsZonesClustersSetMasterAuthCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.projectId = projectId
@@ -12327,7 +12338,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Used to set master auth materials. Currently supports :-\nChanging the admin password for a specific cluster.\nThis can be either via password generation or explicitly set.\nModify basic_auth.csv and reset the K8S API server.",
+	//   "description": "Sets master auth materials. Currently supports changing the admin password\nor a specific cluster, either via password generation or explicitly setting\nthe password.",
 	//   "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMasterAuth",
 	//   "httpMethod": "POST",
 	//   "id": "container.projects.zones.clusters.setMasterAuth",
@@ -12383,7 +12394,7 @@
 	header_                 http.Header
 }
 
-// SetNetworkPolicy: Enables/Disables Network Policy for a cluster.
+// SetNetworkPolicy: Enables or disables Network Policy for a cluster.
 func (r *ProjectsZonesClustersService) SetNetworkPolicy(projectId string, zone string, clusterId string, setnetworkpolicyrequest *SetNetworkPolicyRequest) *ProjectsZonesClustersSetNetworkPolicyCall {
 	c := &ProjectsZonesClustersSetNetworkPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.projectId = projectId
@@ -12485,7 +12496,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Enables/Disables Network Policy for a cluster.",
+	//   "description": "Enables or disables Network Policy for a cluster.",
 	//   "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setNetworkPolicy",
 	//   "httpMethod": "POST",
 	//   "id": "container.projects.zones.clusters.setNetworkPolicy",
@@ -12541,7 +12552,7 @@
 	header_                http.Header
 }
 
-// StartIpRotation: Start master IP rotation.
+// StartIpRotation: Starts master IP rotation.
 func (r *ProjectsZonesClustersService) StartIpRotation(projectId string, zone string, clusterId string, startiprotationrequest *StartIPRotationRequest) *ProjectsZonesClustersStartIpRotationCall {
 	c := &ProjectsZonesClustersStartIpRotationCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.projectId = projectId
@@ -12643,7 +12654,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Start master IP rotation.",
+	//   "description": "Starts master IP rotation.",
 	//   "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:startIpRotation",
 	//   "httpMethod": "POST",
 	//   "id": "container.projects.zones.clusters.startIpRotation",
@@ -13357,7 +13368,7 @@
 	header_      http.Header
 }
 
-// Get: Retrieves the node pool requested.
+// Get: Retrieves the requested node pool.
 func (r *ProjectsZonesClustersNodePoolsService) Get(projectId string, zone string, clusterId string, nodePoolId string) *ProjectsZonesClustersNodePoolsGetCall {
 	c := &ProjectsZonesClustersNodePoolsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.projectId = projectId
@@ -13478,7 +13489,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Retrieves the node pool requested.",
+	//   "description": "Retrieves the requested node pool.",
 	//   "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}",
 	//   "httpMethod": "GET",
 	//   "id": "container.projects.zones.clusters.nodePools.get",
@@ -13719,9 +13730,9 @@
 	header_                        http.Header
 }
 
-// Rollback: Roll back the previously Aborted or Failed NodePool
+// Rollback: Rolls back a previously Aborted or Failed NodePool
 // upgrade.
-// This will be an no-op if the last upgrade successfully completed.
+// This makes no changes if the last upgrade successfully completed.
 func (r *ProjectsZonesClustersNodePoolsService) Rollback(projectId string, zone string, clusterId string, nodePoolId string, rollbacknodepoolupgraderequest *RollbackNodePoolUpgradeRequest) *ProjectsZonesClustersNodePoolsRollbackCall {
 	c := &ProjectsZonesClustersNodePoolsRollbackCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.projectId = projectId
@@ -13825,7 +13836,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Roll back the previously Aborted or Failed NodePool upgrade.\nThis will be an no-op if the last upgrade successfully completed.",
+	//   "description": "Rolls back a previously Aborted or Failed NodePool upgrade.\nThis makes no changes if the last upgrade successfully completed.",
 	//   "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}:rollback",
 	//   "httpMethod": "POST",
 	//   "id": "container.projects.zones.clusters.nodePools.rollback",
@@ -14725,7 +14736,7 @@
 	header_      http.Header
 }
 
-// List: Lists all operations in a project in a specific zone or all
+// List: Lists all operations in a project in the specified zone or all
 // zones.
 func (r *ProjectsZonesOperationsService) List(projectId string, zone string) *ProjectsZonesOperationsListCall {
 	c := &ProjectsZonesOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
@@ -14842,7 +14853,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Lists all operations in a project in a specific zone or all zones.",
+	//   "description": "Lists all operations in a project in the specified zone or all zones.",
 	//   "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/operations",
 	//   "httpMethod": "GET",
 	//   "id": "container.projects.zones.operations.list",
diff --git a/dns/v1/dns-api.json b/dns/v1/dns-api.json
index 606257b..a663247 100644
--- a/dns/v1/dns-api.json
+++ b/dns/v1/dns-api.json
@@ -23,7 +23,7 @@
   "description": "Configures and serves authoritative DNS records.",
   "discoveryVersion": "v1",
   "documentationLink": "https://developers.google.com/cloud-dns",
-  "etag": "\"J3WqvAcMk4eQjJXvfSI4Yr8VouA/MUEA1ZMhfI9iAzfPfacPlOXY3F4\"",
+  "etag": "\"VPK3KBfpaEgZ16pozGOoMYfKc0U/lpqiZRIZVeruudGbozkBqz2t94g\"",
   "icons": {
     "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png",
     "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png"
@@ -83,7 +83,7 @@
     "changes": {
       "methods": {
         "create": {
-          "description": "",
+          "description": "Atomically update the ResourceRecordSet collection.",
           "httpMethod": "POST",
           "id": "dns.changes.create",
           "parameterOrder": [
@@ -92,15 +92,18 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -119,7 +122,7 @@
           ]
         },
         "get": {
-          "description": "",
+          "description": "Fetch the representation of an existing Change.",
           "httpMethod": "GET",
           "id": "dns.changes.get",
           "parameterOrder": [
@@ -129,20 +132,24 @@
           ],
           "parameters": {
             "changeId": {
+              "description": "The identifier of the requested change, from a previous ResourceRecordSetsChangeResponse.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -160,7 +167,7 @@
           ]
         },
         "list": {
-          "description": "",
+          "description": "Enumerate Changes to a ResourceRecordSet collection.",
           "httpMethod": "GET",
           "id": "dns.changes.list",
           "parameterOrder": [
@@ -169,26 +176,31 @@
           ],
           "parameters": {
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "maxResults": {
+              "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
               "format": "int32",
               "location": "query",
               "type": "integer"
             },
             "pageToken": {
+              "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "sortBy": {
               "default": "changeSequence",
+              "description": "Sorting criterion. The only supported value is change sequence.",
               "enum": [
                 "changeSequence"
               ],
@@ -199,6 +211,7 @@
               "type": "string"
             },
             "sortOrder": {
+              "description": "Sorting order direction: 'ascending' or 'descending'.",
               "location": "query",
               "type": "string"
             }
@@ -219,7 +232,7 @@
     "dnsKeys": {
       "methods": {
         "get": {
-          "description": "",
+          "description": "Fetch the representation of an existing DnsKey.",
           "httpMethod": "GET",
           "id": "dns.dnsKeys.get",
           "parameterOrder": [
@@ -229,24 +242,29 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "digestType": {
+              "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.",
               "location": "query",
               "type": "string"
             },
             "dnsKeyId": {
+              "description": "The identifier of the requested DnsKey.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -264,7 +282,7 @@
           ]
         },
         "list": {
-          "description": "",
+          "description": "Enumerate DnsKeys to a ResourceRecordSet collection.",
           "httpMethod": "GET",
           "id": "dns.dnsKeys.list",
           "parameterOrder": [
@@ -273,24 +291,29 @@
           ],
           "parameters": {
             "digestType": {
+              "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "maxResults": {
+              "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
               "format": "int32",
               "location": "query",
               "type": "integer"
             },
             "pageToken": {
+              "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -312,7 +335,7 @@
     "managedZoneOperations": {
       "methods": {
         "get": {
-          "description": "",
+          "description": "Fetch the representation of an existing Operation.",
           "httpMethod": "GET",
           "id": "dns.managedZoneOperations.get",
           "parameterOrder": [
@@ -322,20 +345,24 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "operation": {
+              "description": "Identifies the operation addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -353,7 +380,7 @@
           ]
         },
         "list": {
-          "description": "",
+          "description": "Enumerate Operations for the given ManagedZone.",
           "httpMethod": "GET",
           "id": "dns.managedZoneOperations.list",
           "parameterOrder": [
@@ -362,26 +389,31 @@
           ],
           "parameters": {
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "maxResults": {
+              "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
               "format": "int32",
               "location": "query",
               "type": "integer"
             },
             "pageToken": {
+              "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "sortBy": {
               "default": "startTime",
+              "description": "Sorting criterion. The only supported values are START_TIME and ID.",
               "enum": [
                 "id",
                 "startTime"
@@ -410,7 +442,7 @@
     "managedZones": {
       "methods": {
         "create": {
-          "description": "",
+          "description": "Create a new ManagedZone.",
           "httpMethod": "POST",
           "id": "dns.managedZones.create",
           "parameterOrder": [
@@ -418,10 +450,12 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -440,7 +474,7 @@
           ]
         },
         "delete": {
-          "description": "",
+          "description": "Delete a previously created ManagedZone.",
           "httpMethod": "DELETE",
           "id": "dns.managedZones.delete",
           "parameterOrder": [
@@ -449,15 +483,18 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -470,7 +507,7 @@
           ]
         },
         "get": {
-          "description": "",
+          "description": "Fetch the representation of an existing ManagedZone.",
           "httpMethod": "GET",
           "id": "dns.managedZones.get",
           "parameterOrder": [
@@ -479,15 +516,18 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -505,7 +545,7 @@
           ]
         },
         "list": {
-          "description": "",
+          "description": "Enumerate ManagedZones that have been created but not yet deleted.",
           "httpMethod": "GET",
           "id": "dns.managedZones.list",
           "parameterOrder": [
@@ -513,19 +553,23 @@
           ],
           "parameters": {
             "dnsName": {
+              "description": "Restricts the list to return only zones with this domain name.",
               "location": "query",
               "type": "string"
             },
             "maxResults": {
+              "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
               "format": "int32",
               "location": "query",
               "type": "integer"
             },
             "pageToken": {
+              "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -543,7 +587,7 @@
           ]
         },
         "patch": {
-          "description": "",
+          "description": "Apply a partial update to an existing ManagedZone.",
           "httpMethod": "PATCH",
           "id": "dns.managedZones.patch",
           "parameterOrder": [
@@ -552,15 +596,18 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -579,7 +626,7 @@
           ]
         },
         "update": {
-          "description": "",
+          "description": "Update an existing ManagedZone.",
           "httpMethod": "PUT",
           "id": "dns.managedZones.update",
           "parameterOrder": [
@@ -588,15 +635,18 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -619,7 +669,7 @@
     "projects": {
       "methods": {
         "get": {
-          "description": "",
+          "description": "Fetch the representation of an existing Project.",
           "httpMethod": "GET",
           "id": "dns.projects.get",
           "parameterOrder": [
@@ -627,10 +677,12 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -652,7 +704,7 @@
     "resourceRecordSets": {
       "methods": {
         "list": {
-          "description": "",
+          "description": "Enumerate ResourceRecordSets that have been created but not yet deleted.",
           "httpMethod": "GET",
           "id": "dns.resourceRecordSets.list",
           "parameterOrder": [
@@ -661,29 +713,35 @@
           ],
           "parameters": {
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "maxResults": {
+              "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
               "format": "int32",
               "location": "query",
               "type": "integer"
             },
             "name": {
+              "description": "Restricts the list to return only records with this fully qualified domain name.",
               "location": "query",
               "type": "string"
             },
             "pageToken": {
+              "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "type": {
+              "description": "Restricts the list to return only records of this type. If present, the \"name\" parameter must also be present.",
               "location": "query",
               "type": "string"
             }
@@ -702,28 +760,33 @@
       }
     }
   },
-  "revision": "20190312",
+  "revision": "20190418",
   "rootUrl": "https://www.googleapis.com/",
   "schemas": {
     "Change": {
+      "description": "A Change represents a set of ResourceRecordSet additions and deletions applied atomically to a ManagedZone. ResourceRecordSets within a ManagedZone are modified by creating a new Change element in the Changes collection. In turn the Changes collection also records the past modifications to the ResourceRecordSets in a ManagedZone. The current state of the ManagedZone is the sum effect of applying all Change elements in the Changes collection in sequence.",
       "id": "Change",
       "properties": {
         "additions": {
+          "description": "Which ResourceRecordSets to add?",
           "items": {
             "$ref": "ResourceRecordSet"
           },
           "type": "array"
         },
         "deletions": {
+          "description": "Which ResourceRecordSets to remove? Must match existing data exactly.",
           "items": {
             "$ref": "ResourceRecordSet"
           },
           "type": "array"
         },
         "id": {
+          "description": "Unique identifier for the resource; defined by the server (output only).",
           "type": "string"
         },
         "isServing": {
+          "description": "If the DNS queries for the zone will be served.",
           "type": "boolean"
         },
         "kind": {
@@ -732,9 +795,11 @@
           "type": "string"
         },
         "startTime": {
+          "description": "The time that this operation was started by the server (output only). This is in RFC3339 text format.",
           "type": "string"
         },
         "status": {
+          "description": "Status of the operation (output only). A status of \"done\" means that the request to update the authoritative servers has been sent, but the servers might not be updated yet.",
           "enum": [
             "done",
             "pending"
@@ -749,9 +814,11 @@
       "type": "object"
     },
     "ChangesListResponse": {
+      "description": "The response to a request to enumerate Changes to a ResourceRecordSets collection.",
       "id": "ChangesListResponse",
       "properties": {
         "changes": {
+          "description": "The requested changes.",
           "items": {
             "$ref": "Change"
           },
@@ -766,15 +833,18 @@
           "type": "string"
         },
         "nextPageToken": {
+          "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a \"snapshot\" of collections larger than the maximum page size.",
           "type": "string"
         }
       },
       "type": "object"
     },
     "DnsKey": {
+      "description": "A DNSSEC key pair.",
       "id": "DnsKey",
       "properties": {
         "algorithm": {
+          "description": "String mnemonic specifying the DNSSEC algorithm of this key. Immutable after creation time.",
           "enum": [
             "ecdsap256sha256",
             "ecdsap384sha384",
@@ -792,28 +862,35 @@
           "type": "string"
         },
         "creationTime": {
+          "description": "The time that this resource was created in the control plane. This is in RFC3339 text format. Output only.",
           "type": "string"
         },
         "description": {
+          "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the resource's function.",
           "type": "string"
         },
         "digests": {
+          "description": "Cryptographic hashes of the DNSKEY resource record associated with this DnsKey. These digests are needed to construct a DS record that points at this DNS key. Output only.",
           "items": {
             "$ref": "DnsKeyDigest"
           },
           "type": "array"
         },
         "id": {
+          "description": "Unique identifier for the resource; defined by the server (output only).",
           "type": "string"
         },
         "isActive": {
+          "description": "Active keys will be used to sign subsequent changes to the ManagedZone. Inactive keys will still be present as DNSKEY Resource Records for the use of resolvers validating existing signatures.",
           "type": "boolean"
         },
         "keyLength": {
+          "description": "Length of the key in bits. Specified at creation time then immutable.",
           "format": "uint32",
           "type": "integer"
         },
         "keyTag": {
+          "description": "The key tag is a non-cryptographic hash of the a DNSKEY resource record associated with this DnsKey. The key tag can be used to identify a DNSKEY more quickly (but it is not a unique identifier). In particular, the key tag is used in a parent zone's DS record to point at the DNSKEY in this child ManagedZone. The key tag is a number in the range [0, 65535] and the algorithm to calculate it is specified in RFC4034 Appendix B. Output only.",
           "format": "int32",
           "type": "integer"
         },
@@ -823,9 +900,11 @@
           "type": "string"
         },
         "publicKey": {
+          "description": "Base64 encoded public half of this key. Output only.",
           "type": "string"
         },
         "type": {
+          "description": "One of \"KEY_SIGNING\" or \"ZONE_SIGNING\". Keys of type KEY_SIGNING have the Secure Entry Point flag set and, when active, will be used to sign only resource record sets of type DNSKEY. Otherwise, the Secure Entry Point flag will be cleared and this key will be used to sign only resource record sets of other types. Immutable after creation time.",
           "enum": [
             "keySigning",
             "zoneSigning"
@@ -843,9 +922,11 @@
       "id": "DnsKeyDigest",
       "properties": {
         "digest": {
+          "description": "The base-16 encoded bytes of this digest. Suitable for use in a DS resource record.",
           "type": "string"
         },
         "type": {
+          "description": "Specifies the algorithm used to calculate this digest.",
           "enum": [
             "sha1",
             "sha256",
@@ -862,9 +943,11 @@
       "type": "object"
     },
     "DnsKeySpec": {
+      "description": "Parameters for DnsKey key generation. Used for generating initial keys for a new ManagedZone and as default when adding a new DnsKey.",
       "id": "DnsKeySpec",
       "properties": {
         "algorithm": {
+          "description": "String mnemonic specifying the DNSSEC algorithm of this key.",
           "enum": [
             "ecdsap256sha256",
             "ecdsap384sha384",
@@ -882,10 +965,12 @@
           "type": "string"
         },
         "keyLength": {
+          "description": "Length of the keys in bits.",
           "format": "uint32",
           "type": "integer"
         },
         "keyType": {
+          "description": "Specifies whether this is a key signing key (KSK) or a zone signing key (ZSK). Key signing keys have the Secure Entry Point flag set and, when active, will only be used to sign resource record sets of type DNSKEY. Zone signing keys do not have the Secure Entry Point flag set and will be used to sign all other types of resource record sets.",
           "enum": [
             "keySigning",
             "zoneSigning"
@@ -905,9 +990,11 @@
       "type": "object"
     },
     "DnsKeysListResponse": {
+      "description": "The response to a request to enumerate DnsKeys in a ManagedZone.",
       "id": "DnsKeysListResponse",
       "properties": {
         "dnsKeys": {
+          "description": "The requested resources.",
           "items": {
             "$ref": "DnsKey"
           },
@@ -922,27 +1009,34 @@
           "type": "string"
         },
         "nextPageToken": {
+          "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a \"snapshot\" of collections larger than the maximum page size.",
           "type": "string"
         }
       },
       "type": "object"
     },
     "ManagedZone": {
+      "description": "A zone is a subtree of the DNS namespace under one administrative responsibility. A ManagedZone is a resource that represents a DNS zone hosted by the Cloud DNS service.",
       "id": "ManagedZone",
       "properties": {
         "creationTime": {
+          "description": "The time that this resource was created on the server. This is in RFC3339 text format. Output only.",
           "type": "string"
         },
         "description": {
+          "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the managed zone's function.",
           "type": "string"
         },
         "dnsName": {
+          "description": "The DNS name of this managed zone, for instance \"example.com.\".",
           "type": "string"
         },
         "dnssecConfig": {
-          "$ref": "ManagedZoneDnsSecConfig"
+          "$ref": "ManagedZoneDnsSecConfig",
+          "description": "DNSSEC configuration."
         },
         "id": {
+          "description": "Unique identifier for the resource; defined by the server (output only)",
           "format": "uint64",
           "type": "string"
         },
@@ -955,24 +1049,30 @@
           "additionalProperties": {
             "type": "string"
           },
+          "description": "User labels.",
           "type": "object"
         },
         "name": {
+          "description": "User assigned name for this resource. Must be unique within the project. The name must be 1-63 characters long, must begin with a letter, end with a letter or digit, and only contain lowercase letters, digits or dashes.",
           "type": "string"
         },
         "nameServerSet": {
+          "description": "Optionally specifies the NameServerSet for this ManagedZone. A NameServerSet is a set of DNS name servers that all host the same ManagedZones. Most users will leave this field unset.",
           "type": "string"
         },
         "nameServers": {
+          "description": "Delegate your managed_zone to these virtual name servers; defined by the server (output only)",
           "items": {
             "type": "string"
           },
           "type": "array"
         },
         "privateVisibilityConfig": {
-          "$ref": "ManagedZonePrivateVisibilityConfig"
+          "$ref": "ManagedZonePrivateVisibilityConfig",
+          "description": "For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from."
         },
         "visibility": {
+          "description": "The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources.",
           "enum": [
             "private",
             "public"
@@ -990,6 +1090,7 @@
       "id": "ManagedZoneDnsSecConfig",
       "properties": {
         "defaultKeySpecs": {
+          "description": "Specifies parameters that will be used for generating initial DnsKeys for this ManagedZone. Output only while state is not OFF.",
           "items": {
             "$ref": "DnsKeySpec"
           },
@@ -1001,6 +1102,7 @@
           "type": "string"
         },
         "nonExistence": {
+          "description": "Specifies the mechanism used to provide authenticated denial-of-existence responses. Output only while state is not OFF.",
           "enum": [
             "nsec",
             "nsec3"
@@ -1012,6 +1114,7 @@
           "type": "string"
         },
         "state": {
+          "description": "Specifies whether DNSSEC is enabled, and what mode it is in.",
           "enum": [
             "off",
             "on",
@@ -1039,9 +1142,11 @@
           "type": "string"
         },
         "nextPageToken": {
+          "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your page token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size.",
           "type": "string"
         },
         "operations": {
+          "description": "The operation resources.",
           "items": {
             "$ref": "Operation"
           },
@@ -1059,6 +1164,7 @@
           "type": "string"
         },
         "networks": {
+          "description": "The list of VPC networks that can see this zone.",
           "items": {
             "$ref": "ManagedZonePrivateVisibilityConfigNetwork"
           },
@@ -1076,6 +1182,7 @@
           "type": "string"
         },
         "networkUrl": {
+          "description": "The fully qualified URL of the VPC network to bind to. This should be formatted like https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}",
           "type": "string"
         }
       },
@@ -1093,24 +1200,29 @@
           "type": "string"
         },
         "managedZones": {
+          "description": "The managed zone resources.",
           "items": {
             "$ref": "ManagedZone"
           },
           "type": "array"
         },
         "nextPageToken": {
+          "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your page token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size.",
           "type": "string"
         }
       },
       "type": "object"
     },
     "Operation": {
+      "description": "An operation represents a successful mutation performed on a Cloud DNS resource. Operations provide: - An audit log of server resource mutations. - A way to recover/retry API calls in the case where the response is never received by the caller. Use the caller specified client_operation_id.",
       "id": "Operation",
       "properties": {
         "dnsKeyContext": {
-          "$ref": "OperationDnsKeyContext"
+          "$ref": "OperationDnsKeyContext",
+          "description": "Only populated if the operation targeted a DnsKey (output only)."
         },
         "id": {
+          "description": "Unique identifier for the resource. This is the client_operation_id if the client specified it when the mutation was initiated, otherwise, it is generated by the server. The name must be 1-63 characters long and match the regular expression [-a-z0-9]? (output only)",
           "type": "string"
         },
         "kind": {
@@ -1119,9 +1231,11 @@
           "type": "string"
         },
         "startTime": {
+          "description": "The time that this operation was started by the server. This is in RFC3339 text format (output only).",
           "type": "string"
         },
         "status": {
+          "description": "Status of the operation. Can be one of the following: \"PENDING\" or \"DONE\" (output only). A status of \"DONE\" means that the request to update the authoritative servers has been sent, but the servers might not be updated yet.",
           "enum": [
             "done",
             "pending"
@@ -1133,13 +1247,16 @@
           "type": "string"
         },
         "type": {
+          "description": "Type of the operation. Operations include insert, update, and delete (output only).",
           "type": "string"
         },
         "user": {
+          "description": "User who requested the operation, for example: user@example.com. cloud-dns-system for operations automatically done by the system. (output only)",
           "type": "string"
         },
         "zoneContext": {
-          "$ref": "OperationManagedZoneContext"
+          "$ref": "OperationManagedZoneContext",
+          "description": "Only populated if the operation targeted a ManagedZone (output only)."
         }
       },
       "type": "object"
@@ -1148,10 +1265,12 @@
       "id": "OperationDnsKeyContext",
       "properties": {
         "newValue": {
-          "$ref": "DnsKey"
+          "$ref": "DnsKey",
+          "description": "The post-operation DnsKey resource."
         },
         "oldValue": {
-          "$ref": "DnsKey"
+          "$ref": "DnsKey",
+          "description": "The pre-operation DnsKey resource."
         }
       },
       "type": "object"
@@ -1160,18 +1279,22 @@
       "id": "OperationManagedZoneContext",
       "properties": {
         "newValue": {
-          "$ref": "ManagedZone"
+          "$ref": "ManagedZone",
+          "description": "The post-operation ManagedZone resource."
         },
         "oldValue": {
-          "$ref": "ManagedZone"
+          "$ref": "ManagedZone",
+          "description": "The pre-operation ManagedZone resource."
         }
       },
       "type": "object"
     },
     "Project": {
+      "description": "A project resource. The project is a top level container for resources including Cloud DNS ManagedZones. Projects can be created only in the APIs console.",
       "id": "Project",
       "properties": {
         "id": {
+          "description": "User assigned unique identifier for the resource (output only).",
           "type": "string"
         },
         "kind": {
@@ -1180,19 +1303,23 @@
           "type": "string"
         },
         "number": {
+          "description": "Unique numeric identifier for the resource; defined by the server (output only).",
           "format": "uint64",
           "type": "string"
         },
         "quota": {
-          "$ref": "Quota"
+          "$ref": "Quota",
+          "description": "Quotas assigned to this project (output only)."
         }
       },
       "type": "object"
     },
     "Quota": {
+      "description": "Limits associated with a Project.",
       "id": "Quota",
       "properties": {
         "dnsKeysPerManagedZone": {
+          "description": "Maximum allowed number of DnsKeys per ManagedZone.",
           "format": "int32",
           "type": "integer"
         },
@@ -1202,38 +1329,47 @@
           "type": "string"
         },
         "managedZones": {
+          "description": "Maximum allowed number of managed zones in the project.",
           "format": "int32",
           "type": "integer"
         },
         "managedZonesPerNetwork": {
+          "description": "Maximum allowed number of managed zones which can be attached to a network.",
           "format": "int32",
           "type": "integer"
         },
         "networksPerManagedZone": {
+          "description": "Maximum allowed number of networks to which a privately scoped zone can be attached.",
           "format": "int32",
           "type": "integer"
         },
         "resourceRecordsPerRrset": {
+          "description": "Maximum allowed number of ResourceRecords per ResourceRecordSet.",
           "format": "int32",
           "type": "integer"
         },
         "rrsetAdditionsPerChange": {
+          "description": "Maximum allowed number of ResourceRecordSets to add per ChangesCreateRequest.",
           "format": "int32",
           "type": "integer"
         },
         "rrsetDeletionsPerChange": {
+          "description": "Maximum allowed number of ResourceRecordSets to delete per ChangesCreateRequest.",
           "format": "int32",
           "type": "integer"
         },
         "rrsetsPerManagedZone": {
+          "description": "Maximum allowed number of ResourceRecordSets per zone in the project.",
           "format": "int32",
           "type": "integer"
         },
         "totalRrdataSizePerChange": {
+          "description": "Maximum allowed size for total rrdata in one ChangesCreateRequest in bytes.",
           "format": "int32",
           "type": "integer"
         },
         "whitelistedKeySpecs": {
+          "description": "DNSSEC algorithm and key length types that can be used for DnsKeys.",
           "items": {
             "$ref": "DnsKeySpec"
           },
@@ -1243,6 +1379,7 @@
       "type": "object"
     },
     "ResourceRecordSet": {
+      "description": "A unit of data that will be returned by the DNS servers.",
       "id": "ResourceRecordSet",
       "properties": {
         "kind": {
@@ -1251,25 +1388,30 @@
           "type": "string"
         },
         "name": {
+          "description": "For example, www.example.com.",
           "type": "string"
         },
         "rrdatas": {
+          "description": "As defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1) -- see examples.",
           "items": {
             "type": "string"
           },
           "type": "array"
         },
         "signatureRrdatas": {
+          "description": "As defined in RFC 4034 (section 3.2).",
           "items": {
             "type": "string"
           },
           "type": "array"
         },
         "ttl": {
+          "description": "Number of seconds that this ResourceRecordSet can be cached by resolvers.",
           "format": "int32",
           "type": "integer"
         },
         "type": {
+          "description": "The identifier of a supported record type. See the list of Supported DNS record types.",
           "type": "string"
         }
       },
@@ -1287,9 +1429,11 @@
           "type": "string"
         },
         "nextPageToken": {
+          "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size.",
           "type": "string"
         },
         "rrsets": {
+          "description": "The resource record set resources.",
           "items": {
             "$ref": "ResourceRecordSet"
           },
@@ -1299,9 +1443,11 @@
       "type": "object"
     },
     "ResponseHeader": {
+      "description": "Elements common to every response.",
       "id": "ResponseHeader",
       "properties": {
         "operationId": {
+          "description": "For mutating operation requests that completed successfully. This is the client_operation_id if the client specified it, otherwise it is generated by the server (output only).",
           "type": "string"
         }
       },
diff --git a/dns/v1/dns-gen.go b/dns/v1/dns-gen.go
index 5751209..f900962 100644
--- a/dns/v1/dns-gen.go
+++ b/dns/v1/dns-gen.go
@@ -215,21 +215,40 @@
 	s *Service
 }
 
+// Change: A Change represents a set of ResourceRecordSet additions and
+// deletions applied atomically to a ManagedZone. ResourceRecordSets
+// within a ManagedZone are modified by creating a new Change element in
+// the Changes collection. In turn the Changes collection also records
+// the past modifications to the ResourceRecordSets in a ManagedZone.
+// The current state of the ManagedZone is the sum effect of applying
+// all Change elements in the Changes collection in sequence.
 type Change struct {
+	// Additions: Which ResourceRecordSets to add?
 	Additions []*ResourceRecordSet `json:"additions,omitempty"`
 
+	// Deletions: Which ResourceRecordSets to remove? Must match existing
+	// data exactly.
 	Deletions []*ResourceRecordSet `json:"deletions,omitempty"`
 
+	// Id: Unique identifier for the resource; defined by the server (output
+	// only).
 	Id string `json:"id,omitempty"`
 
+	// IsServing: If the DNS queries for the zone will be served.
 	IsServing bool `json:"isServing,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#change".
 	Kind string `json:"kind,omitempty"`
 
+	// StartTime: The time that this operation was started by the server
+	// (output only). This is in RFC3339 text format.
 	StartTime string `json:"startTime,omitempty"`
 
+	// Status: Status of the operation (output only). A status of "done"
+	// means that the request to update the authoritative servers has been
+	// sent, but the servers might not be updated yet.
+	//
 	// Possible values:
 	//   "done"
 	//   "pending"
@@ -262,7 +281,10 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// ChangesListResponse: The response to a request to enumerate Changes
+// to a ResourceRecordSets collection.
 type ChangesListResponse struct {
+	// Changes: The requested changes.
 	Changes []*Change `json:"changes,omitempty"`
 
 	Header *ResponseHeader `json:"header,omitempty"`
@@ -270,6 +292,17 @@
 	// Kind: Type of resource.
 	Kind string `json:"kind,omitempty"`
 
+	// NextPageToken: The presence of this field indicates that there exist
+	// more results following your last page of results in pagination order.
+	// To fetch them, make another list request using this value as your
+	// pagination token.
+	//
+	// In this way you can retrieve the complete contents of even very large
+	// collections one page at a time. However, if the contents of the
+	// collection change between the first and last paginated list request,
+	// the set of all elements returned will be an inconsistent view of the
+	// collection. There is no way to retrieve a "snapshot" of collections
+	// larger than the maximum page size.
 	NextPageToken string `json:"nextPageToken,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -299,7 +332,11 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// DnsKey: A DNSSEC key pair.
 type DnsKey struct {
+	// Algorithm: String mnemonic specifying the DNSSEC algorithm of this
+	// key. Immutable after creation time.
+	//
 	// Possible values:
 	//   "ecdsap256sha256"
 	//   "ecdsap384sha384"
@@ -308,26 +345,56 @@
 	//   "rsasha512"
 	Algorithm string `json:"algorithm,omitempty"`
 
+	// CreationTime: The time that this resource was created in the control
+	// plane. This is in RFC3339 text format. Output only.
 	CreationTime string `json:"creationTime,omitempty"`
 
+	// Description: A mutable string of at most 1024 characters associated
+	// with this resource for the user's convenience. Has no effect on the
+	// resource's function.
 	Description string `json:"description,omitempty"`
 
+	// Digests: Cryptographic hashes of the DNSKEY resource record
+	// associated with this DnsKey. These digests are needed to construct a
+	// DS record that points at this DNS key. Output only.
 	Digests []*DnsKeyDigest `json:"digests,omitempty"`
 
+	// Id: Unique identifier for the resource; defined by the server (output
+	// only).
 	Id string `json:"id,omitempty"`
 
+	// IsActive: Active keys will be used to sign subsequent changes to the
+	// ManagedZone. Inactive keys will still be present as DNSKEY Resource
+	// Records for the use of resolvers validating existing signatures.
 	IsActive bool `json:"isActive,omitempty"`
 
+	// KeyLength: Length of the key in bits. Specified at creation time then
+	// immutable.
 	KeyLength int64 `json:"keyLength,omitempty"`
 
+	// KeyTag: The key tag is a non-cryptographic hash of the a DNSKEY
+	// resource record associated with this DnsKey. The key tag can be used
+	// to identify a DNSKEY more quickly (but it is not a unique
+	// identifier). In particular, the key tag is used in a parent zone's DS
+	// record to point at the DNSKEY in this child ManagedZone. The key tag
+	// is a number in the range [0, 65535] and the algorithm to calculate it
+	// is specified in RFC4034 Appendix B. Output only.
 	KeyTag int64 `json:"keyTag,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#dnsKey".
 	Kind string `json:"kind,omitempty"`
 
+	// PublicKey: Base64 encoded public half of this key. Output only.
 	PublicKey string `json:"publicKey,omitempty"`
 
+	// Type: One of "KEY_SIGNING" or "ZONE_SIGNING". Keys of type
+	// KEY_SIGNING have the Secure Entry Point flag set and, when active,
+	// will be used to sign only resource record sets of type DNSKEY.
+	// Otherwise, the Secure Entry Point flag will be cleared and this key
+	// will be used to sign only resource record sets of other types.
+	// Immutable after creation time.
+	//
 	// Possible values:
 	//   "keySigning"
 	//   "zoneSigning"
@@ -361,8 +428,12 @@
 }
 
 type DnsKeyDigest struct {
+	// Digest: The base-16 encoded bytes of this digest. Suitable for use in
+	// a DS resource record.
 	Digest string `json:"digest,omitempty"`
 
+	// Type: Specifies the algorithm used to calculate this digest.
+	//
 	// Possible values:
 	//   "sha1"
 	//   "sha256"
@@ -392,7 +463,13 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// DnsKeySpec: Parameters for DnsKey key generation. Used for generating
+// initial keys for a new ManagedZone and as default when adding a new
+// DnsKey.
 type DnsKeySpec struct {
+	// Algorithm: String mnemonic specifying the DNSSEC algorithm of this
+	// key.
+	//
 	// Possible values:
 	//   "ecdsap256sha256"
 	//   "ecdsap384sha384"
@@ -401,8 +478,16 @@
 	//   "rsasha512"
 	Algorithm string `json:"algorithm,omitempty"`
 
+	// KeyLength: Length of the keys in bits.
 	KeyLength int64 `json:"keyLength,omitempty"`
 
+	// KeyType: Specifies whether this is a key signing key (KSK) or a zone
+	// signing key (ZSK). Key signing keys have the Secure Entry Point flag
+	// set and, when active, will only be used to sign resource record sets
+	// of type DNSKEY. Zone signing keys do not have the Secure Entry Point
+	// flag set and will be used to sign all other types of resource record
+	// sets.
+	//
 	// Possible values:
 	//   "keySigning"
 	//   "zoneSigning"
@@ -435,7 +520,10 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// DnsKeysListResponse: The response to a request to enumerate DnsKeys
+// in a ManagedZone.
 type DnsKeysListResponse struct {
+	// DnsKeys: The requested resources.
 	DnsKeys []*DnsKey `json:"dnsKeys,omitempty"`
 
 	Header *ResponseHeader `json:"header,omitempty"`
@@ -443,6 +531,17 @@
 	// Kind: Type of resource.
 	Kind string `json:"kind,omitempty"`
 
+	// NextPageToken: The presence of this field indicates that there exist
+	// more results following your last page of results in pagination order.
+	// To fetch them, make another list request using this value as your
+	// pagination token.
+	//
+	// In this way you can retrieve the complete contents of even very large
+	// collections one page at a time. However, if the contents of the
+	// collection change between the first and last paginated list request,
+	// the set of all elements returned will be an inconsistent view of the
+	// collection. There is no way to retrieve a "snapshot" of collections
+	// larger than the maximum page size.
 	NextPageToken string `json:"nextPageToken,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -472,31 +571,60 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// ManagedZone: A zone is a subtree of the DNS namespace under one
+// administrative responsibility. A ManagedZone is a resource that
+// represents a DNS zone hosted by the Cloud DNS service.
 type ManagedZone struct {
+	// CreationTime: The time that this resource was created on the server.
+	// This is in RFC3339 text format. Output only.
 	CreationTime string `json:"creationTime,omitempty"`
 
+	// Description: A mutable string of at most 1024 characters associated
+	// with this resource for the user's convenience. Has no effect on the
+	// managed zone's function.
 	Description string `json:"description,omitempty"`
 
+	// DnsName: The DNS name of this managed zone, for instance
+	// "example.com.".
 	DnsName string `json:"dnsName,omitempty"`
 
+	// DnssecConfig: DNSSEC configuration.
 	DnssecConfig *ManagedZoneDnsSecConfig `json:"dnssecConfig,omitempty"`
 
+	// Id: Unique identifier for the resource; defined by the server (output
+	// only)
 	Id uint64 `json:"id,omitempty,string"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#managedZone".
 	Kind string `json:"kind,omitempty"`
 
+	// Labels: User labels.
 	Labels map[string]string `json:"labels,omitempty"`
 
+	// Name: User assigned name for this resource. Must be unique within the
+	// project. The name must be 1-63 characters long, must begin with a
+	// letter, end with a letter or digit, and only contain lowercase
+	// letters, digits or dashes.
 	Name string `json:"name,omitempty"`
 
+	// NameServerSet: Optionally specifies the NameServerSet for this
+	// ManagedZone. A NameServerSet is a set of DNS name servers that all
+	// host the same ManagedZones. Most users will leave this field unset.
 	NameServerSet string `json:"nameServerSet,omitempty"`
 
+	// NameServers: Delegate your managed_zone to these virtual name
+	// servers; defined by the server (output only)
 	NameServers []string `json:"nameServers,omitempty"`
 
+	// PrivateVisibilityConfig: For privately visible zones, the set of
+	// Virtual Private Cloud resources that the zone is visible from.
 	PrivateVisibilityConfig *ManagedZonePrivateVisibilityConfig `json:"privateVisibilityConfig,omitempty"`
 
+	// Visibility: The zone's visibility: public zones are exposed to the
+	// Internet, while private zones are visible only to Virtual Private
+	// Cloud resources.
+	//
 	// Possible values:
 	//   "private"
 	//   "public"
@@ -530,17 +658,25 @@
 }
 
 type ManagedZoneDnsSecConfig struct {
+	// DefaultKeySpecs: Specifies parameters that will be used for
+	// generating initial DnsKeys for this ManagedZone. Output only while
+	// state is not OFF.
 	DefaultKeySpecs []*DnsKeySpec `json:"defaultKeySpecs,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#managedZoneDnsSecConfig".
 	Kind string `json:"kind,omitempty"`
 
+	// NonExistence: Specifies the mechanism used to provide authenticated
+	// denial-of-existence responses. Output only while state is not OFF.
+	//
 	// Possible values:
 	//   "nsec"
 	//   "nsec3"
 	NonExistence string `json:"nonExistence,omitempty"`
 
+	// State: Specifies whether DNSSEC is enabled, and what mode it is in.
+	//
 	// Possible values:
 	//   "off"
 	//   "on"
@@ -577,8 +713,20 @@
 	// Kind: Type of resource.
 	Kind string `json:"kind,omitempty"`
 
+	// NextPageToken: The presence of this field indicates that there exist
+	// more results following your last page of results in pagination order.
+	// To fetch them, make another list request using this value as your
+	// page token.
+	//
+	// In this way you can retrieve the complete contents of even very large
+	// collections one page at a time. However, if the contents of the
+	// collection change between the first and last paginated list request,
+	// the set of all elements returned will be an inconsistent view of the
+	// collection. There is no way to retrieve a consistent snapshot of a
+	// collection larger than the maximum page size.
 	NextPageToken string `json:"nextPageToken,omitempty"`
 
+	// Operations: The operation resources.
 	Operations []*Operation `json:"operations,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -613,6 +761,7 @@
 	// string "dns#managedZonePrivateVisibilityConfig".
 	Kind string `json:"kind,omitempty"`
 
+	// Networks: The list of VPC networks that can see this zone.
 	Networks []*ManagedZonePrivateVisibilityConfigNetwork `json:"networks,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "Kind") to
@@ -643,6 +792,9 @@
 	// string "dns#managedZonePrivateVisibilityConfigNetwork".
 	Kind string `json:"kind,omitempty"`
 
+	// NetworkUrl: The fully qualified URL of the VPC network to bind to.
+	// This should be formatted like
+	// https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}
 	NetworkUrl string `json:"networkUrl,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "Kind") to
@@ -674,8 +826,20 @@
 	// Kind: Type of resource.
 	Kind string `json:"kind,omitempty"`
 
+	// ManagedZones: The managed zone resources.
 	ManagedZones []*ManagedZone `json:"managedZones,omitempty"`
 
+	// NextPageToken: The presence of this field indicates that there exist
+	// more results following your last page of results in pagination order.
+	// To fetch them, make another list request using this value as your
+	// page token.
+	//
+	// In this way you can retrieve the complete contents of even very large
+	// collections one page at a time. However, if the contents of the
+	// collection change between the first and last paginated list request,
+	// the set of all elements returned will be an inconsistent view of the
+	// collection. There is no way to retrieve a consistent snapshot of a
+	// collection larger than the maximum page size.
 	NextPageToken string `json:"nextPageToken,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -705,26 +869,52 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// Operation: An operation represents a successful mutation performed on
+// a Cloud DNS resource. Operations provide: - An audit log of server
+// resource mutations. - A way to recover/retry API calls in the case
+// where the response is never received by the caller. Use the caller
+// specified client_operation_id.
 type Operation struct {
+	// DnsKeyContext: Only populated if the operation targeted a DnsKey
+	// (output only).
 	DnsKeyContext *OperationDnsKeyContext `json:"dnsKeyContext,omitempty"`
 
+	// Id: Unique identifier for the resource. This is the
+	// client_operation_id if the client specified it when the mutation was
+	// initiated, otherwise, it is generated by the server. The name must be
+	// 1-63 characters long and match the regular expression [-a-z0-9]?
+	// (output only)
 	Id string `json:"id,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#operation".
 	Kind string `json:"kind,omitempty"`
 
+	// StartTime: The time that this operation was started by the server.
+	// This is in RFC3339 text format (output only).
 	StartTime string `json:"startTime,omitempty"`
 
+	// Status: Status of the operation. Can be one of the following:
+	// "PENDING" or "DONE" (output only). A status of "DONE" means that the
+	// request to update the authoritative servers has been sent, but the
+	// servers might not be updated yet.
+	//
 	// Possible values:
 	//   "done"
 	//   "pending"
 	Status string `json:"status,omitempty"`
 
+	// Type: Type of the operation. Operations include insert, update, and
+	// delete (output only).
 	Type string `json:"type,omitempty"`
 
+	// User: User who requested the operation, for example:
+	// user@example.com. cloud-dns-system for operations automatically done
+	// by the system. (output only)
 	User string `json:"user,omitempty"`
 
+	// ZoneContext: Only populated if the operation targeted a ManagedZone
+	// (output only).
 	ZoneContext *OperationManagedZoneContext `json:"zoneContext,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -755,8 +945,10 @@
 }
 
 type OperationDnsKeyContext struct {
+	// NewValue: The post-operation DnsKey resource.
 	NewValue *DnsKey `json:"newValue,omitempty"`
 
+	// OldValue: The pre-operation DnsKey resource.
 	OldValue *DnsKey `json:"oldValue,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "NewValue") to
@@ -783,8 +975,10 @@
 }
 
 type OperationManagedZoneContext struct {
+	// NewValue: The post-operation ManagedZone resource.
 	NewValue *ManagedZone `json:"newValue,omitempty"`
 
+	// OldValue: The pre-operation ManagedZone resource.
 	OldValue *ManagedZone `json:"oldValue,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "NewValue") to
@@ -810,15 +1004,22 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// Project: A project resource. The project is a top level container for
+// resources including Cloud DNS ManagedZones. Projects can be created
+// only in the APIs console.
 type Project struct {
+	// Id: User assigned unique identifier for the resource (output only).
 	Id string `json:"id,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#project".
 	Kind string `json:"kind,omitempty"`
 
+	// Number: Unique numeric identifier for the resource; defined by the
+	// server (output only).
 	Number uint64 `json:"number,omitempty,string"`
 
+	// Quota: Quotas assigned to this project (output only).
 	Quota *Quota `json:"quota,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -848,29 +1049,49 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// Quota: Limits associated with a Project.
 type Quota struct {
+	// DnsKeysPerManagedZone: Maximum allowed number of DnsKeys per
+	// ManagedZone.
 	DnsKeysPerManagedZone int64 `json:"dnsKeysPerManagedZone,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#quota".
 	Kind string `json:"kind,omitempty"`
 
+	// ManagedZones: Maximum allowed number of managed zones in the project.
 	ManagedZones int64 `json:"managedZones,omitempty"`
 
+	// ManagedZonesPerNetwork: Maximum allowed number of managed zones which
+	// can be attached to a network.
 	ManagedZonesPerNetwork int64 `json:"managedZonesPerNetwork,omitempty"`
 
+	// NetworksPerManagedZone: Maximum allowed number of networks to which a
+	// privately scoped zone can be attached.
 	NetworksPerManagedZone int64 `json:"networksPerManagedZone,omitempty"`
 
+	// ResourceRecordsPerRrset: Maximum allowed number of ResourceRecords
+	// per ResourceRecordSet.
 	ResourceRecordsPerRrset int64 `json:"resourceRecordsPerRrset,omitempty"`
 
+	// RrsetAdditionsPerChange: Maximum allowed number of ResourceRecordSets
+	// to add per ChangesCreateRequest.
 	RrsetAdditionsPerChange int64 `json:"rrsetAdditionsPerChange,omitempty"`
 
+	// RrsetDeletionsPerChange: Maximum allowed number of ResourceRecordSets
+	// to delete per ChangesCreateRequest.
 	RrsetDeletionsPerChange int64 `json:"rrsetDeletionsPerChange,omitempty"`
 
+	// RrsetsPerManagedZone: Maximum allowed number of ResourceRecordSets
+	// per zone in the project.
 	RrsetsPerManagedZone int64 `json:"rrsetsPerManagedZone,omitempty"`
 
+	// TotalRrdataSizePerChange: Maximum allowed size for total rrdata in
+	// one ChangesCreateRequest in bytes.
 	TotalRrdataSizePerChange int64 `json:"totalRrdataSizePerChange,omitempty"`
 
+	// WhitelistedKeySpecs: DNSSEC algorithm and key length types that can
+	// be used for DnsKeys.
 	WhitelistedKeySpecs []*DnsKeySpec `json:"whitelistedKeySpecs,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g.
@@ -898,19 +1119,29 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// ResourceRecordSet: A unit of data that will be returned by the DNS
+// servers.
 type ResourceRecordSet struct {
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#resourceRecordSet".
 	Kind string `json:"kind,omitempty"`
 
+	// Name: For example, www.example.com.
 	Name string `json:"name,omitempty"`
 
+	// Rrdatas: As defined in RFC 1035 (section 5) and RFC 1034 (section
+	// 3.6.1) -- see examples.
 	Rrdatas []string `json:"rrdatas,omitempty"`
 
+	// SignatureRrdatas: As defined in RFC 4034 (section 3.2).
 	SignatureRrdatas []string `json:"signatureRrdatas,omitempty"`
 
+	// Ttl: Number of seconds that this ResourceRecordSet can be cached by
+	// resolvers.
 	Ttl int64 `json:"ttl,omitempty"`
 
+	// Type: The identifier of a supported record type. See the list of
+	// Supported DNS record types.
 	Type string `json:"type,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "Kind") to
@@ -942,8 +1173,20 @@
 	// Kind: Type of resource.
 	Kind string `json:"kind,omitempty"`
 
+	// NextPageToken: The presence of this field indicates that there exist
+	// more results following your last page of results in pagination order.
+	// To fetch them, make another list request using this value as your
+	// pagination token.
+	//
+	// In this way you can retrieve the complete contents of even very large
+	// collections one page at a time. However, if the contents of the
+	// collection change between the first and last paginated list request,
+	// the set of all elements returned will be an inconsistent view of the
+	// collection. There is no way to retrieve a consistent snapshot of a
+	// collection larger than the maximum page size.
 	NextPageToken string `json:"nextPageToken,omitempty"`
 
+	// Rrsets: The resource record set resources.
 	Rrsets []*ResourceRecordSet `json:"rrsets,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -973,7 +1216,11 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// ResponseHeader: Elements common to every response.
 type ResponseHeader struct {
+	// OperationId: For mutating operation requests that completed
+	// successfully. This is the client_operation_id if the client specified
+	// it, otherwise it is generated by the server (output only).
 	OperationId string `json:"operationId,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "OperationId") to
@@ -1011,7 +1258,7 @@
 	header_     http.Header
 }
 
-// Create:
+// Create: Atomically update the ResourceRecordSet collection.
 func (r *ChangesService) Create(project string, managedZone string, change *Change) *ChangesCreateCall {
 	c := &ChangesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -1021,6 +1268,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ChangesCreateCall) ClientOperationId(clientOperationId string) *ChangesCreateCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -1117,7 +1367,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Atomically update the ResourceRecordSet collection.",
 	//   "httpMethod": "POST",
 	//   "id": "dns.changes.create",
 	//   "parameterOrder": [
@@ -1126,15 +1376,18 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -1168,7 +1421,7 @@
 	header_      http.Header
 }
 
-// Get:
+// Get: Fetch the representation of an existing Change.
 func (r *ChangesService) Get(project string, managedZone string, changeId string) *ChangesGetCall {
 	c := &ChangesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -1178,6 +1431,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ChangesGetCall) ClientOperationId(clientOperationId string) *ChangesGetCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -1283,7 +1539,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Fetch the representation of an existing Change.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.changes.get",
 	//   "parameterOrder": [
@@ -1293,20 +1549,24 @@
 	//   ],
 	//   "parameters": {
 	//     "changeId": {
+	//       "description": "The identifier of the requested change, from a previous ResourceRecordSetsChangeResponse.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -1338,7 +1598,7 @@
 	header_      http.Header
 }
 
-// List:
+// List: Enumerate Changes to a ResourceRecordSet collection.
 func (r *ChangesService) List(project string, managedZone string) *ChangesListCall {
 	c := &ChangesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -1346,19 +1606,24 @@
 	return c
 }
 
-// MaxResults sets the optional parameter "maxResults":
+// MaxResults sets the optional parameter "maxResults": Maximum number
+// of results to be returned. If unspecified, the server will decide how
+// many results to return.
 func (c *ChangesListCall) MaxResults(maxResults int64) *ChangesListCall {
 	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 	return c
 }
 
-// PageToken sets the optional parameter "pageToken":
+// PageToken sets the optional parameter "pageToken": A tag returned by
+// a previous list request that was truncated. Use this parameter to
+// continue a previous list request.
 func (c *ChangesListCall) PageToken(pageToken string) *ChangesListCall {
 	c.urlParams_.Set("pageToken", pageToken)
 	return c
 }
 
-// SortBy sets the optional parameter "sortBy":
+// SortBy sets the optional parameter "sortBy": Sorting criterion. The
+// only supported value is change sequence.
 //
 // Possible values:
 //   "changeSequence" (default)
@@ -1367,7 +1632,8 @@
 	return c
 }
 
-// SortOrder sets the optional parameter "sortOrder":
+// SortOrder sets the optional parameter "sortOrder": Sorting order
+// direction: 'ascending' or 'descending'.
 func (c *ChangesListCall) SortOrder(sortOrder string) *ChangesListCall {
 	c.urlParams_.Set("sortOrder", sortOrder)
 	return c
@@ -1472,7 +1738,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Enumerate Changes to a ResourceRecordSet collection.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.changes.list",
 	//   "parameterOrder": [
@@ -1481,26 +1747,31 @@
 	//   ],
 	//   "parameters": {
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "maxResults": {
+	//       "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
 	//       "format": "int32",
 	//       "location": "query",
 	//       "type": "integer"
 	//     },
 	//     "pageToken": {
+	//       "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "sortBy": {
 	//       "default": "changeSequence",
+	//       "description": "Sorting criterion. The only supported value is change sequence.",
 	//       "enum": [
 	//         "changeSequence"
 	//       ],
@@ -1511,6 +1782,7 @@
 	//       "type": "string"
 	//     },
 	//     "sortOrder": {
+	//       "description": "Sorting order direction: 'ascending' or 'descending'.",
 	//       "location": "query",
 	//       "type": "string"
 	//     }
@@ -1563,7 +1835,7 @@
 	header_      http.Header
 }
 
-// Get:
+// Get: Fetch the representation of an existing DnsKey.
 func (r *DnsKeysService) Get(project string, managedZone string, dnsKeyId string) *DnsKeysGetCall {
 	c := &DnsKeysGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -1573,12 +1845,18 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *DnsKeysGetCall) ClientOperationId(clientOperationId string) *DnsKeysGetCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
 }
 
-// DigestType sets the optional parameter "digestType":
+// DigestType sets the optional parameter "digestType": An optional
+// comma-separated list of digest types to compute and display for key
+// signing keys. If omitted, the recommended digest type will be
+// computed and displayed.
 func (c *DnsKeysGetCall) DigestType(digestType string) *DnsKeysGetCall {
 	c.urlParams_.Set("digestType", digestType)
 	return c
@@ -1684,7 +1962,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Fetch the representation of an existing DnsKey.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.dnsKeys.get",
 	//   "parameterOrder": [
@@ -1694,24 +1972,29 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "digestType": {
+	//       "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "dnsKeyId": {
+	//       "description": "The identifier of the requested DnsKey.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -1743,7 +2026,7 @@
 	header_      http.Header
 }
 
-// List:
+// List: Enumerate DnsKeys to a ResourceRecordSet collection.
 func (r *DnsKeysService) List(project string, managedZone string) *DnsKeysListCall {
 	c := &DnsKeysListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -1751,19 +2034,26 @@
 	return c
 }
 
-// DigestType sets the optional parameter "digestType":
+// DigestType sets the optional parameter "digestType": An optional
+// comma-separated list of digest types to compute and display for key
+// signing keys. If omitted, the recommended digest type will be
+// computed and displayed.
 func (c *DnsKeysListCall) DigestType(digestType string) *DnsKeysListCall {
 	c.urlParams_.Set("digestType", digestType)
 	return c
 }
 
-// MaxResults sets the optional parameter "maxResults":
+// MaxResults sets the optional parameter "maxResults": Maximum number
+// of results to be returned. If unspecified, the server will decide how
+// many results to return.
 func (c *DnsKeysListCall) MaxResults(maxResults int64) *DnsKeysListCall {
 	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 	return c
 }
 
-// PageToken sets the optional parameter "pageToken":
+// PageToken sets the optional parameter "pageToken": A tag returned by
+// a previous list request that was truncated. Use this parameter to
+// continue a previous list request.
 func (c *DnsKeysListCall) PageToken(pageToken string) *DnsKeysListCall {
 	c.urlParams_.Set("pageToken", pageToken)
 	return c
@@ -1868,7 +2158,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Enumerate DnsKeys to a ResourceRecordSet collection.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.dnsKeys.list",
 	//   "parameterOrder": [
@@ -1877,24 +2167,29 @@
 	//   ],
 	//   "parameters": {
 	//     "digestType": {
+	//       "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "maxResults": {
+	//       "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
 	//       "format": "int32",
 	//       "location": "query",
 	//       "type": "integer"
 	//     },
 	//     "pageToken": {
+	//       "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -1948,7 +2243,7 @@
 	header_      http.Header
 }
 
-// Get:
+// Get: Fetch the representation of an existing Operation.
 func (r *ManagedZoneOperationsService) Get(project string, managedZone string, operation string) *ManagedZoneOperationsGetCall {
 	c := &ManagedZoneOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -1958,6 +2253,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ManagedZoneOperationsGetCall) ClientOperationId(clientOperationId string) *ManagedZoneOperationsGetCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -2063,7 +2361,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Fetch the representation of an existing Operation.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.managedZoneOperations.get",
 	//   "parameterOrder": [
@@ -2073,20 +2371,24 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "operation": {
+	//       "description": "Identifies the operation addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -2118,7 +2420,7 @@
 	header_      http.Header
 }
 
-// List:
+// List: Enumerate Operations for the given ManagedZone.
 func (r *ManagedZoneOperationsService) List(project string, managedZone string) *ManagedZoneOperationsListCall {
 	c := &ManagedZoneOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -2126,19 +2428,24 @@
 	return c
 }
 
-// MaxResults sets the optional parameter "maxResults":
+// MaxResults sets the optional parameter "maxResults": Maximum number
+// of results to be returned. If unspecified, the server will decide how
+// many results to return.
 func (c *ManagedZoneOperationsListCall) MaxResults(maxResults int64) *ManagedZoneOperationsListCall {
 	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 	return c
 }
 
-// PageToken sets the optional parameter "pageToken":
+// PageToken sets the optional parameter "pageToken": A tag returned by
+// a previous list request that was truncated. Use this parameter to
+// continue a previous list request.
 func (c *ManagedZoneOperationsListCall) PageToken(pageToken string) *ManagedZoneOperationsListCall {
 	c.urlParams_.Set("pageToken", pageToken)
 	return c
 }
 
-// SortBy sets the optional parameter "sortBy":
+// SortBy sets the optional parameter "sortBy": Sorting criterion. The
+// only supported values are START_TIME and ID.
 //
 // Possible values:
 //   "id"
@@ -2248,7 +2555,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Enumerate Operations for the given ManagedZone.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.managedZoneOperations.list",
 	//   "parameterOrder": [
@@ -2257,26 +2564,31 @@
 	//   ],
 	//   "parameters": {
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "maxResults": {
+	//       "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
 	//       "format": "int32",
 	//       "location": "query",
 	//       "type": "integer"
 	//     },
 	//     "pageToken": {
+	//       "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "sortBy": {
 	//       "default": "startTime",
+	//       "description": "Sorting criterion. The only supported values are START_TIME and ID.",
 	//       "enum": [
 	//         "id",
 	//         "startTime"
@@ -2335,7 +2647,7 @@
 	header_     http.Header
 }
 
-// Create:
+// Create: Create a new ManagedZone.
 func (r *ManagedZonesService) Create(project string, managedzone *ManagedZone) *ManagedZonesCreateCall {
 	c := &ManagedZonesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -2344,6 +2656,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ManagedZonesCreateCall) ClientOperationId(clientOperationId string) *ManagedZonesCreateCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -2439,7 +2754,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Create a new ManagedZone.",
 	//   "httpMethod": "POST",
 	//   "id": "dns.managedZones.create",
 	//   "parameterOrder": [
@@ -2447,10 +2762,12 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -2482,7 +2799,7 @@
 	header_     http.Header
 }
 
-// Delete:
+// Delete: Delete a previously created ManagedZone.
 func (r *ManagedZonesService) Delete(project string, managedZone string) *ManagedZonesDeleteCall {
 	c := &ManagedZonesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -2491,6 +2808,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ManagedZonesDeleteCall) ClientOperationId(clientOperationId string) *ManagedZonesDeleteCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -2557,7 +2877,7 @@
 	}
 	return nil
 	// {
-	//   "description": "",
+	//   "description": "Delete a previously created ManagedZone.",
 	//   "httpMethod": "DELETE",
 	//   "id": "dns.managedZones.delete",
 	//   "parameterOrder": [
@@ -2566,15 +2886,18 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -2601,7 +2924,7 @@
 	header_      http.Header
 }
 
-// Get:
+// Get: Fetch the representation of an existing ManagedZone.
 func (r *ManagedZonesService) Get(project string, managedZone string) *ManagedZonesGetCall {
 	c := &ManagedZonesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -2610,6 +2933,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ManagedZonesGetCall) ClientOperationId(clientOperationId string) *ManagedZonesGetCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -2714,7 +3040,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Fetch the representation of an existing ManagedZone.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.managedZones.get",
 	//   "parameterOrder": [
@@ -2723,15 +3049,18 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -2762,26 +3091,32 @@
 	header_      http.Header
 }
 
-// List:
+// List: Enumerate ManagedZones that have been created but not yet
+// deleted.
 func (r *ManagedZonesService) List(project string) *ManagedZonesListCall {
 	c := &ManagedZonesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
 	return c
 }
 
-// DnsName sets the optional parameter "dnsName":
+// DnsName sets the optional parameter "dnsName": Restricts the list to
+// return only zones with this domain name.
 func (c *ManagedZonesListCall) DnsName(dnsName string) *ManagedZonesListCall {
 	c.urlParams_.Set("dnsName", dnsName)
 	return c
 }
 
-// MaxResults sets the optional parameter "maxResults":
+// MaxResults sets the optional parameter "maxResults": Maximum number
+// of results to be returned. If unspecified, the server will decide how
+// many results to return.
 func (c *ManagedZonesListCall) MaxResults(maxResults int64) *ManagedZonesListCall {
 	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 	return c
 }
 
-// PageToken sets the optional parameter "pageToken":
+// PageToken sets the optional parameter "pageToken": A tag returned by
+// a previous list request that was truncated. Use this parameter to
+// continue a previous list request.
 func (c *ManagedZonesListCall) PageToken(pageToken string) *ManagedZonesListCall {
 	c.urlParams_.Set("pageToken", pageToken)
 	return c
@@ -2885,7 +3220,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Enumerate ManagedZones that have been created but not yet deleted.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.managedZones.list",
 	//   "parameterOrder": [
@@ -2893,19 +3228,23 @@
 	//   ],
 	//   "parameters": {
 	//     "dnsName": {
+	//       "description": "Restricts the list to return only zones with this domain name.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "maxResults": {
+	//       "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
 	//       "format": "int32",
 	//       "location": "query",
 	//       "type": "integer"
 	//     },
 	//     "pageToken": {
+	//       "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -2958,7 +3297,7 @@
 	header_     http.Header
 }
 
-// Patch:
+// Patch: Apply a partial update to an existing ManagedZone.
 func (r *ManagedZonesService) Patch(project string, managedZone string, managedzone *ManagedZone) *ManagedZonesPatchCall {
 	c := &ManagedZonesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -2968,6 +3307,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ManagedZonesPatchCall) ClientOperationId(clientOperationId string) *ManagedZonesPatchCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -3064,7 +3406,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Apply a partial update to an existing ManagedZone.",
 	//   "httpMethod": "PATCH",
 	//   "id": "dns.managedZones.patch",
 	//   "parameterOrder": [
@@ -3073,15 +3415,18 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -3114,7 +3459,7 @@
 	header_     http.Header
 }
 
-// Update:
+// Update: Update an existing ManagedZone.
 func (r *ManagedZonesService) Update(project string, managedZone string, managedzone *ManagedZone) *ManagedZonesUpdateCall {
 	c := &ManagedZonesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -3124,6 +3469,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ManagedZonesUpdateCall) ClientOperationId(clientOperationId string) *ManagedZonesUpdateCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -3220,7 +3568,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Update an existing ManagedZone.",
 	//   "httpMethod": "PUT",
 	//   "id": "dns.managedZones.update",
 	//   "parameterOrder": [
@@ -3229,15 +3577,18 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -3269,7 +3620,7 @@
 	header_      http.Header
 }
 
-// Get:
+// Get: Fetch the representation of an existing Project.
 func (r *ProjectsService) Get(project string) *ProjectsGetCall {
 	c := &ProjectsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -3277,6 +3628,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ProjectsGetCall) ClientOperationId(clientOperationId string) *ProjectsGetCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -3380,7 +3734,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Fetch the representation of an existing Project.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.projects.get",
 	//   "parameterOrder": [
@@ -3388,10 +3742,12 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -3423,7 +3779,8 @@
 	header_      http.Header
 }
 
-// List:
+// List: Enumerate ResourceRecordSets that have been created but not yet
+// deleted.
 func (r *ResourceRecordSetsService) List(project string, managedZone string) *ResourceRecordSetsListCall {
 	c := &ResourceRecordSetsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -3431,25 +3788,32 @@
 	return c
 }
 
-// MaxResults sets the optional parameter "maxResults":
+// MaxResults sets the optional parameter "maxResults": Maximum number
+// of results to be returned. If unspecified, the server will decide how
+// many results to return.
 func (c *ResourceRecordSetsListCall) MaxResults(maxResults int64) *ResourceRecordSetsListCall {
 	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 	return c
 }
 
-// Name sets the optional parameter "name":
+// Name sets the optional parameter "name": Restricts the list to return
+// only records with this fully qualified domain name.
 func (c *ResourceRecordSetsListCall) Name(name string) *ResourceRecordSetsListCall {
 	c.urlParams_.Set("name", name)
 	return c
 }
 
-// PageToken sets the optional parameter "pageToken":
+// PageToken sets the optional parameter "pageToken": A tag returned by
+// a previous list request that was truncated. Use this parameter to
+// continue a previous list request.
 func (c *ResourceRecordSetsListCall) PageToken(pageToken string) *ResourceRecordSetsListCall {
 	c.urlParams_.Set("pageToken", pageToken)
 	return c
 }
 
-// Type sets the optional parameter "type":
+// Type sets the optional parameter "type": Restricts the list to return
+// only records of this type. If present, the "name" parameter must also
+// be present.
 func (c *ResourceRecordSetsListCall) Type(type_ string) *ResourceRecordSetsListCall {
 	c.urlParams_.Set("type", type_)
 	return c
@@ -3554,7 +3918,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Enumerate ResourceRecordSets that have been created but not yet deleted.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.resourceRecordSets.list",
 	//   "parameterOrder": [
@@ -3563,29 +3927,35 @@
 	//   ],
 	//   "parameters": {
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "maxResults": {
+	//       "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
 	//       "format": "int32",
 	//       "location": "query",
 	//       "type": "integer"
 	//     },
 	//     "name": {
+	//       "description": "Restricts the list to return only records with this fully qualified domain name.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "pageToken": {
+	//       "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "type": {
+	//       "description": "Restricts the list to return only records of this type. If present, the \"name\" parameter must also be present.",
 	//       "location": "query",
 	//       "type": "string"
 	//     }
diff --git a/dns/v1beta2/dns-api.json b/dns/v1beta2/dns-api.json
index a4eb664..d563104 100644
--- a/dns/v1beta2/dns-api.json
+++ b/dns/v1beta2/dns-api.json
@@ -23,7 +23,7 @@
   "description": "Configures and serves authoritative DNS records.",
   "discoveryVersion": "v1",
   "documentationLink": "https://developers.google.com/cloud-dns",
-  "etag": "\"VPK3KBfpaEgZ16pozGOoMYfKc0U/aNGUvbrklgu_TPFr0cWVV-vnyRs\"",
+  "etag": "\"VPK3KBfpaEgZ16pozGOoMYfKc0U/5ETkYc51ldAG_lBus_hxlXlq9uQ\"",
   "icons": {
     "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png",
     "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png"
@@ -83,7 +83,7 @@
     "changes": {
       "methods": {
         "create": {
-          "description": "",
+          "description": "Atomically update the ResourceRecordSet collection.",
           "httpMethod": "POST",
           "id": "dns.changes.create",
           "parameterOrder": [
@@ -92,15 +92,18 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -119,7 +122,7 @@
           ]
         },
         "get": {
-          "description": "",
+          "description": "Fetch the representation of an existing Change.",
           "httpMethod": "GET",
           "id": "dns.changes.get",
           "parameterOrder": [
@@ -129,20 +132,24 @@
           ],
           "parameters": {
             "changeId": {
+              "description": "The identifier of the requested change, from a previous ResourceRecordSetsChangeResponse.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -160,7 +167,7 @@
           ]
         },
         "list": {
-          "description": "",
+          "description": "Enumerate Changes to a ResourceRecordSet collection.",
           "httpMethod": "GET",
           "id": "dns.changes.list",
           "parameterOrder": [
@@ -169,26 +176,31 @@
           ],
           "parameters": {
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "maxResults": {
+              "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
               "format": "int32",
               "location": "query",
               "type": "integer"
             },
             "pageToken": {
+              "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "sortBy": {
               "default": "changeSequence",
+              "description": "Sorting criterion. The only supported value is change sequence.",
               "enum": [
                 "changeSequence"
               ],
@@ -199,6 +211,7 @@
               "type": "string"
             },
             "sortOrder": {
+              "description": "Sorting order direction: 'ascending' or 'descending'.",
               "location": "query",
               "type": "string"
             }
@@ -219,7 +232,7 @@
     "dnsKeys": {
       "methods": {
         "get": {
-          "description": "",
+          "description": "Fetch the representation of an existing DnsKey.",
           "httpMethod": "GET",
           "id": "dns.dnsKeys.get",
           "parameterOrder": [
@@ -229,24 +242,29 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "digestType": {
+              "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.",
               "location": "query",
               "type": "string"
             },
             "dnsKeyId": {
+              "description": "The identifier of the requested DnsKey.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -264,7 +282,7 @@
           ]
         },
         "list": {
-          "description": "",
+          "description": "Enumerate DnsKeys to a ResourceRecordSet collection.",
           "httpMethod": "GET",
           "id": "dns.dnsKeys.list",
           "parameterOrder": [
@@ -273,24 +291,29 @@
           ],
           "parameters": {
             "digestType": {
+              "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "maxResults": {
+              "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
               "format": "int32",
               "location": "query",
               "type": "integer"
             },
             "pageToken": {
+              "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -312,7 +335,7 @@
     "managedZoneOperations": {
       "methods": {
         "get": {
-          "description": "",
+          "description": "Fetch the representation of an existing Operation.",
           "httpMethod": "GET",
           "id": "dns.managedZoneOperations.get",
           "parameterOrder": [
@@ -322,20 +345,24 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "operation": {
+              "description": "Identifies the operation addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -353,7 +380,7 @@
           ]
         },
         "list": {
-          "description": "",
+          "description": "Enumerate Operations for the given ManagedZone.",
           "httpMethod": "GET",
           "id": "dns.managedZoneOperations.list",
           "parameterOrder": [
@@ -362,26 +389,31 @@
           ],
           "parameters": {
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "maxResults": {
+              "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
               "format": "int32",
               "location": "query",
               "type": "integer"
             },
             "pageToken": {
+              "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "sortBy": {
               "default": "startTime",
+              "description": "Sorting criterion. The only supported values are START_TIME and ID.",
               "enum": [
                 "id",
                 "startTime"
@@ -410,7 +442,7 @@
     "managedZones": {
       "methods": {
         "create": {
-          "description": "",
+          "description": "Create a new ManagedZone.",
           "httpMethod": "POST",
           "id": "dns.managedZones.create",
           "parameterOrder": [
@@ -418,10 +450,12 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -440,7 +474,7 @@
           ]
         },
         "delete": {
-          "description": "",
+          "description": "Delete a previously created ManagedZone.",
           "httpMethod": "DELETE",
           "id": "dns.managedZones.delete",
           "parameterOrder": [
@@ -449,15 +483,18 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -470,7 +507,7 @@
           ]
         },
         "get": {
-          "description": "",
+          "description": "Fetch the representation of an existing ManagedZone.",
           "httpMethod": "GET",
           "id": "dns.managedZones.get",
           "parameterOrder": [
@@ -479,15 +516,18 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -505,7 +545,7 @@
           ]
         },
         "list": {
-          "description": "",
+          "description": "Enumerate ManagedZones that have been created but not yet deleted.",
           "httpMethod": "GET",
           "id": "dns.managedZones.list",
           "parameterOrder": [
@@ -513,19 +553,23 @@
           ],
           "parameters": {
             "dnsName": {
+              "description": "Restricts the list to return only zones with this domain name.",
               "location": "query",
               "type": "string"
             },
             "maxResults": {
+              "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
               "format": "int32",
               "location": "query",
               "type": "integer"
             },
             "pageToken": {
+              "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -543,7 +587,7 @@
           ]
         },
         "patch": {
-          "description": "",
+          "description": "Apply a partial update to an existing ManagedZone.",
           "httpMethod": "PATCH",
           "id": "dns.managedZones.patch",
           "parameterOrder": [
@@ -552,15 +596,18 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -579,7 +626,7 @@
           ]
         },
         "update": {
-          "description": "",
+          "description": "Update an existing ManagedZone.",
           "httpMethod": "PUT",
           "id": "dns.managedZones.update",
           "parameterOrder": [
@@ -588,15 +635,18 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -619,7 +669,7 @@
     "policies": {
       "methods": {
         "create": {
-          "description": "",
+          "description": "Create a new Policy",
           "httpMethod": "POST",
           "id": "dns.policies.create",
           "parameterOrder": [
@@ -627,10 +677,12 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -649,7 +701,7 @@
           ]
         },
         "delete": {
-          "description": "",
+          "description": "Delete a previously created Policy. Will fail if the policy is still being referenced by a network.",
           "httpMethod": "DELETE",
           "id": "dns.policies.delete",
           "parameterOrder": [
@@ -658,15 +710,18 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "policy": {
+              "description": "User given friendly name of the policy addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -679,7 +734,7 @@
           ]
         },
         "get": {
-          "description": "",
+          "description": "Fetch the representation of an existing Policy.",
           "httpMethod": "GET",
           "id": "dns.policies.get",
           "parameterOrder": [
@@ -688,15 +743,18 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "policy": {
+              "description": "User given friendly name of the policy addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -714,7 +772,7 @@
           ]
         },
         "list": {
-          "description": "",
+          "description": "Enumerate all Policies associated with a project.",
           "httpMethod": "GET",
           "id": "dns.policies.list",
           "parameterOrder": [
@@ -722,15 +780,18 @@
           ],
           "parameters": {
             "maxResults": {
+              "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
               "format": "int32",
               "location": "query",
               "type": "integer"
             },
             "pageToken": {
+              "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -748,7 +809,7 @@
           ]
         },
         "patch": {
-          "description": "",
+          "description": "Apply a partial update to an existing Policy.",
           "httpMethod": "PATCH",
           "id": "dns.policies.patch",
           "parameterOrder": [
@@ -757,15 +818,18 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "policy": {
+              "description": "User given friendly name of the policy addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -784,7 +848,7 @@
           ]
         },
         "update": {
-          "description": "",
+          "description": "Update an existing Policy.",
           "httpMethod": "PUT",
           "id": "dns.policies.update",
           "parameterOrder": [
@@ -793,15 +857,18 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "policy": {
+              "description": "User given friendly name of the policy addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -824,7 +891,7 @@
     "projects": {
       "methods": {
         "get": {
-          "description": "",
+          "description": "Fetch the representation of an existing Project.",
           "httpMethod": "GET",
           "id": "dns.projects.get",
           "parameterOrder": [
@@ -832,10 +899,12 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -857,7 +926,7 @@
     "resourceRecordSets": {
       "methods": {
         "list": {
-          "description": "",
+          "description": "Enumerate ResourceRecordSets that have been created but not yet deleted.",
           "httpMethod": "GET",
           "id": "dns.resourceRecordSets.list",
           "parameterOrder": [
@@ -866,29 +935,35 @@
           ],
           "parameters": {
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "maxResults": {
+              "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
               "format": "int32",
               "location": "query",
               "type": "integer"
             },
             "name": {
+              "description": "Restricts the list to return only records with this fully qualified domain name.",
               "location": "query",
               "type": "string"
             },
             "pageToken": {
+              "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "type": {
+              "description": "Restricts the list to return only records of this type. If present, the \"name\" parameter must also be present.",
               "location": "query",
               "type": "string"
             }
@@ -907,28 +982,33 @@
       }
     }
   },
-  "revision": "20190328",
+  "revision": "20190418",
   "rootUrl": "https://www.googleapis.com/",
   "schemas": {
     "Change": {
+      "description": "A Change represents a set of ResourceRecordSet additions and deletions applied atomically to a ManagedZone. ResourceRecordSets within a ManagedZone are modified by creating a new Change element in the Changes collection. In turn the Changes collection also records the past modifications to the ResourceRecordSets in a ManagedZone. The current state of the ManagedZone is the sum effect of applying all Change elements in the Changes collection in sequence.",
       "id": "Change",
       "properties": {
         "additions": {
+          "description": "Which ResourceRecordSets to add?",
           "items": {
             "$ref": "ResourceRecordSet"
           },
           "type": "array"
         },
         "deletions": {
+          "description": "Which ResourceRecordSets to remove? Must match existing data exactly.",
           "items": {
             "$ref": "ResourceRecordSet"
           },
           "type": "array"
         },
         "id": {
+          "description": "Unique identifier for the resource; defined by the server (output only).",
           "type": "string"
         },
         "isServing": {
+          "description": "If the DNS queries for the zone will be served.",
           "type": "boolean"
         },
         "kind": {
@@ -937,9 +1017,11 @@
           "type": "string"
         },
         "startTime": {
+          "description": "The time that this operation was started by the server (output only). This is in RFC3339 text format.",
           "type": "string"
         },
         "status": {
+          "description": "Status of the operation (output only). A status of \"done\" means that the request to update the authoritative servers has been sent, but the servers might not be updated yet.",
           "enum": [
             "done",
             "pending"
@@ -954,9 +1036,11 @@
       "type": "object"
     },
     "ChangesListResponse": {
+      "description": "The response to a request to enumerate Changes to a ResourceRecordSets collection.",
       "id": "ChangesListResponse",
       "properties": {
         "changes": {
+          "description": "The requested changes.",
           "items": {
             "$ref": "Change"
           },
@@ -971,15 +1055,18 @@
           "type": "string"
         },
         "nextPageToken": {
+          "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a \"snapshot\" of collections larger than the maximum page size.",
           "type": "string"
         }
       },
       "type": "object"
     },
     "DnsKey": {
+      "description": "A DNSSEC key pair.",
       "id": "DnsKey",
       "properties": {
         "algorithm": {
+          "description": "String mnemonic specifying the DNSSEC algorithm of this key. Immutable after creation time.",
           "enum": [
             "ecdsap256sha256",
             "ecdsap384sha384",
@@ -997,28 +1084,35 @@
           "type": "string"
         },
         "creationTime": {
+          "description": "The time that this resource was created in the control plane. This is in RFC3339 text format. Output only.",
           "type": "string"
         },
         "description": {
+          "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the resource's function.",
           "type": "string"
         },
         "digests": {
+          "description": "Cryptographic hashes of the DNSKEY resource record associated with this DnsKey. These digests are needed to construct a DS record that points at this DNS key. Output only.",
           "items": {
             "$ref": "DnsKeyDigest"
           },
           "type": "array"
         },
         "id": {
+          "description": "Unique identifier for the resource; defined by the server (output only).",
           "type": "string"
         },
         "isActive": {
+          "description": "Active keys will be used to sign subsequent changes to the ManagedZone. Inactive keys will still be present as DNSKEY Resource Records for the use of resolvers validating existing signatures.",
           "type": "boolean"
         },
         "keyLength": {
+          "description": "Length of the key in bits. Specified at creation time then immutable.",
           "format": "uint32",
           "type": "integer"
         },
         "keyTag": {
+          "description": "The key tag is a non-cryptographic hash of the a DNSKEY resource record associated with this DnsKey. The key tag can be used to identify a DNSKEY more quickly (but it is not a unique identifier). In particular, the key tag is used in a parent zone's DS record to point at the DNSKEY in this child ManagedZone. The key tag is a number in the range [0, 65535] and the algorithm to calculate it is specified in RFC4034 Appendix B. Output only.",
           "format": "int32",
           "type": "integer"
         },
@@ -1028,9 +1122,11 @@
           "type": "string"
         },
         "publicKey": {
+          "description": "Base64 encoded public half of this key. Output only.",
           "type": "string"
         },
         "type": {
+          "description": "One of \"KEY_SIGNING\" or \"ZONE_SIGNING\". Keys of type KEY_SIGNING have the Secure Entry Point flag set and, when active, will be used to sign only resource record sets of type DNSKEY. Otherwise, the Secure Entry Point flag will be cleared and this key will be used to sign only resource record sets of other types. Immutable after creation time.",
           "enum": [
             "keySigning",
             "zoneSigning"
@@ -1048,9 +1144,11 @@
       "id": "DnsKeyDigest",
       "properties": {
         "digest": {
+          "description": "The base-16 encoded bytes of this digest. Suitable for use in a DS resource record.",
           "type": "string"
         },
         "type": {
+          "description": "Specifies the algorithm used to calculate this digest.",
           "enum": [
             "sha1",
             "sha256",
@@ -1067,9 +1165,11 @@
       "type": "object"
     },
     "DnsKeySpec": {
+      "description": "Parameters for DnsKey key generation. Used for generating initial keys for a new ManagedZone and as default when adding a new DnsKey.",
       "id": "DnsKeySpec",
       "properties": {
         "algorithm": {
+          "description": "String mnemonic specifying the DNSSEC algorithm of this key.",
           "enum": [
             "ecdsap256sha256",
             "ecdsap384sha384",
@@ -1087,10 +1187,12 @@
           "type": "string"
         },
         "keyLength": {
+          "description": "Length of the keys in bits.",
           "format": "uint32",
           "type": "integer"
         },
         "keyType": {
+          "description": "Specifies whether this is a key signing key (KSK) or a zone signing key (ZSK). Key signing keys have the Secure Entry Point flag set and, when active, will only be used to sign resource record sets of type DNSKEY. Zone signing keys do not have the Secure Entry Point flag set and will be used to sign all other types of resource record sets.",
           "enum": [
             "keySigning",
             "zoneSigning"
@@ -1110,9 +1212,11 @@
       "type": "object"
     },
     "DnsKeysListResponse": {
+      "description": "The response to a request to enumerate DnsKeys in a ManagedZone.",
       "id": "DnsKeysListResponse",
       "properties": {
         "dnsKeys": {
+          "description": "The requested resources.",
           "items": {
             "$ref": "DnsKey"
           },
@@ -1127,30 +1231,38 @@
           "type": "string"
         },
         "nextPageToken": {
+          "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a \"snapshot\" of collections larger than the maximum page size.",
           "type": "string"
         }
       },
       "type": "object"
     },
     "ManagedZone": {
+      "description": "A zone is a subtree of the DNS namespace under one administrative responsibility. A ManagedZone is a resource that represents a DNS zone hosted by the Cloud DNS service.",
       "id": "ManagedZone",
       "properties": {
         "creationTime": {
+          "description": "The time that this resource was created on the server. This is in RFC3339 text format. Output only.",
           "type": "string"
         },
         "description": {
+          "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the managed zone's function.",
           "type": "string"
         },
         "dnsName": {
+          "description": "The DNS name of this managed zone, for instance \"example.com.\".",
           "type": "string"
         },
         "dnssecConfig": {
-          "$ref": "ManagedZoneDnsSecConfig"
+          "$ref": "ManagedZoneDnsSecConfig",
+          "description": "DNSSEC configuration."
         },
         "forwardingConfig": {
-          "$ref": "ManagedZoneForwardingConfig"
+          "$ref": "ManagedZoneForwardingConfig",
+          "description": "The presence for this field indicates that outbound forwarding is enabled for this zone. The value of this field contains the set of destinations to forward to."
         },
         "id": {
+          "description": "Unique identifier for the resource; defined by the server (output only)",
           "format": "uint64",
           "type": "string"
         },
@@ -1163,27 +1275,34 @@
           "additionalProperties": {
             "type": "string"
           },
+          "description": "User labels.",
           "type": "object"
         },
         "name": {
+          "description": "User assigned name for this resource. Must be unique within the project. The name must be 1-63 characters long, must begin with a letter, end with a letter or digit, and only contain lowercase letters, digits or dashes.",
           "type": "string"
         },
         "nameServerSet": {
+          "description": "Optionally specifies the NameServerSet for this ManagedZone. A NameServerSet is a set of DNS name servers that all host the same ManagedZones. Most users will leave this field unset.",
           "type": "string"
         },
         "nameServers": {
+          "description": "Delegate your managed_zone to these virtual name servers; defined by the server (output only)",
           "items": {
             "type": "string"
           },
           "type": "array"
         },
         "peeringConfig": {
-          "$ref": "ManagedZonePeeringConfig"
+          "$ref": "ManagedZonePeeringConfig",
+          "description": "The presence of this field indicates that DNS Peering is enabled for this zone. The value of this field contains the network to peer with."
         },
         "privateVisibilityConfig": {
-          "$ref": "ManagedZonePrivateVisibilityConfig"
+          "$ref": "ManagedZonePrivateVisibilityConfig",
+          "description": "For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from."
         },
         "visibility": {
+          "description": "The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources.",
           "enum": [
             "private",
             "public"
@@ -1201,6 +1320,7 @@
       "id": "ManagedZoneDnsSecConfig",
       "properties": {
         "defaultKeySpecs": {
+          "description": "Specifies parameters that will be used for generating initial DnsKeys for this ManagedZone. Output only while state is not OFF.",
           "items": {
             "$ref": "DnsKeySpec"
           },
@@ -1212,6 +1332,7 @@
           "type": "string"
         },
         "nonExistence": {
+          "description": "Specifies the mechanism used to provide authenticated denial-of-existence responses. Output only while state is not OFF.",
           "enum": [
             "nsec",
             "nsec3"
@@ -1223,6 +1344,7 @@
           "type": "string"
         },
         "state": {
+          "description": "Specifies whether DNSSEC is enabled, and what mode it is in.",
           "enum": [
             "off",
             "on",
@@ -1247,6 +1369,7 @@
           "type": "string"
         },
         "targetNameServers": {
+          "description": "List of target name servers to forward to. Cloud DNS will select the best available name server if more than one target is given.",
           "items": {
             "$ref": "ManagedZoneForwardingConfigNameServerTarget"
           },
@@ -1259,6 +1382,7 @@
       "id": "ManagedZoneForwardingConfigNameServerTarget",
       "properties": {
         "ipv4Address": {
+          "description": "IPv4 address of a target name server.",
           "type": "string"
         },
         "kind": {
@@ -1281,9 +1405,11 @@
           "type": "string"
         },
         "nextPageToken": {
+          "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your page token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size.",
           "type": "string"
         },
         "operations": {
+          "description": "The operation resources.",
           "items": {
             "$ref": "Operation"
           },
@@ -1301,7 +1427,8 @@
           "type": "string"
         },
         "targetNetwork": {
-          "$ref": "ManagedZonePeeringConfigTargetNetwork"
+          "$ref": "ManagedZonePeeringConfigTargetNetwork",
+          "description": "The network with which to peer."
         }
       },
       "type": "object"
@@ -1310,6 +1437,7 @@
       "id": "ManagedZonePeeringConfigTargetNetwork",
       "properties": {
         "deactivateTime": {
+          "description": "If this zone has been deactivated due to a problem with the network it targeted, the time at which it was deactivated. The zone can be deactivated if, for instance, the network it targeted was deleted. If the targeted network is still present, this will be the empty string. This is in RFC3339 text format. Output only.",
           "type": "string"
         },
         "kind": {
@@ -1318,6 +1446,7 @@
           "type": "string"
         },
         "networkUrl": {
+          "description": "The fully qualified URL of the VPC network to forward queries to. This should be formatted like https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}",
           "type": "string"
         }
       },
@@ -1332,6 +1461,7 @@
           "type": "string"
         },
         "networks": {
+          "description": "The list of VPC networks that can see this zone.",
           "items": {
             "$ref": "ManagedZonePrivateVisibilityConfigNetwork"
           },
@@ -1349,6 +1479,7 @@
           "type": "string"
         },
         "networkUrl": {
+          "description": "The fully qualified URL of the VPC network to bind to. This should be formatted like https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}",
           "type": "string"
         }
       },
@@ -1366,24 +1497,29 @@
           "type": "string"
         },
         "managedZones": {
+          "description": "The managed zone resources.",
           "items": {
             "$ref": "ManagedZone"
           },
           "type": "array"
         },
         "nextPageToken": {
+          "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your page token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size.",
           "type": "string"
         }
       },
       "type": "object"
     },
     "Operation": {
+      "description": "An operation represents a successful mutation performed on a Cloud DNS resource. Operations provide: - An audit log of server resource mutations. - A way to recover/retry API calls in the case where the response is never received by the caller. Use the caller specified client_operation_id.",
       "id": "Operation",
       "properties": {
         "dnsKeyContext": {
-          "$ref": "OperationDnsKeyContext"
+          "$ref": "OperationDnsKeyContext",
+          "description": "Only populated if the operation targeted a DnsKey (output only)."
         },
         "id": {
+          "description": "Unique identifier for the resource. This is the client_operation_id if the client specified it when the mutation was initiated, otherwise, it is generated by the server. The name must be 1-63 characters long and match the regular expression [-a-z0-9]? (output only)",
           "type": "string"
         },
         "kind": {
@@ -1392,9 +1528,11 @@
           "type": "string"
         },
         "startTime": {
+          "description": "The time that this operation was started by the server. This is in RFC3339 text format (output only).",
           "type": "string"
         },
         "status": {
+          "description": "Status of the operation. Can be one of the following: \"PENDING\" or \"DONE\" (output only). A status of \"DONE\" means that the request to update the authoritative servers has been sent, but the servers might not be updated yet.",
           "enum": [
             "done",
             "pending"
@@ -1406,13 +1544,16 @@
           "type": "string"
         },
         "type": {
+          "description": "Type of the operation. Operations include insert, update, and delete (output only).",
           "type": "string"
         },
         "user": {
+          "description": "User who requested the operation, for example: user@example.com. cloud-dns-system for operations automatically done by the system. (output only)",
           "type": "string"
         },
         "zoneContext": {
-          "$ref": "OperationManagedZoneContext"
+          "$ref": "OperationManagedZoneContext",
+          "description": "Only populated if the operation targeted a ManagedZone (output only)."
         }
       },
       "type": "object"
@@ -1421,10 +1562,12 @@
       "id": "OperationDnsKeyContext",
       "properties": {
         "newValue": {
-          "$ref": "DnsKey"
+          "$ref": "DnsKey",
+          "description": "The post-operation DnsKey resource."
         },
         "oldValue": {
-          "$ref": "DnsKey"
+          "$ref": "DnsKey",
+          "description": "The pre-operation DnsKey resource."
         }
       },
       "type": "object"
@@ -1433,10 +1576,12 @@
       "id": "OperationManagedZoneContext",
       "properties": {
         "newValue": {
-          "$ref": "ManagedZone"
+          "$ref": "ManagedZone",
+          "description": "The post-operation ManagedZone resource."
         },
         "oldValue": {
-          "$ref": "ManagedZone"
+          "$ref": "ManagedZone",
+          "description": "The pre-operation ManagedZone resource."
         }
       },
       "type": "object"
@@ -1453,9 +1598,11 @@
           "type": "string"
         },
         "nextPageToken": {
+          "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your page token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size.",
           "type": "string"
         },
         "policies": {
+          "description": "The policy resources.",
           "items": {
             "$ref": "Policy"
           },
@@ -1489,21 +1636,27 @@
       "type": "object"
     },
     "Policy": {
+      "description": "A policy is a collection of DNS rules applied to one or more Virtual Private Cloud resources.",
       "id": "Policy",
       "properties": {
         "alternativeNameServerConfig": {
-          "$ref": "PolicyAlternativeNameServerConfig"
+          "$ref": "PolicyAlternativeNameServerConfig",
+          "description": "Sets an alternative name server for the associated networks. When specified, all DNS queries are forwarded to a name server that you choose. Names such as .internal are not available when an alternative name server is specified."
         },
         "description": {
+          "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the policy's function.",
           "type": "string"
         },
         "enableInboundForwarding": {
+          "description": "Allows networks bound to this policy to receive DNS queries sent by VMs or applications over VPN connections. When enabled, a virtual IP address will be allocated from each of the sub-networks that are bound to this policy.",
           "type": "boolean"
         },
         "enableLogging": {
+          "description": "Controls whether logging is enabled for the networks bound to this policy. Defaults to no logging if not set.",
           "type": "boolean"
         },
         "id": {
+          "description": "Unique identifier for the resource; defined by the server (output only).",
           "format": "uint64",
           "type": "string"
         },
@@ -1513,9 +1666,11 @@
           "type": "string"
         },
         "name": {
+          "description": "User assigned name for this policy.",
           "type": "string"
         },
         "networks": {
+          "description": "List of network names specifying networks to which this policy is applied.",
           "items": {
             "$ref": "PolicyNetwork"
           },
@@ -1533,6 +1688,7 @@
           "type": "string"
         },
         "targetNameServers": {
+          "description": "Sets an alternative name server for the associated networks. When specified, all DNS queries are forwarded to a name server that you choose. Names such as .internal are not available when an alternative name server is specified.",
           "items": {
             "$ref": "PolicyAlternativeNameServerConfigTargetNameServer"
           },
@@ -1545,6 +1701,7 @@
       "id": "PolicyAlternativeNameServerConfigTargetNameServer",
       "properties": {
         "ipv4Address": {
+          "description": "IPv4 address to forward to.",
           "type": "string"
         },
         "kind": {
@@ -1564,15 +1721,18 @@
           "type": "string"
         },
         "networkUrl": {
+          "description": "The fully qualified URL of the VPC network to bind to. This should be formatted like https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}",
           "type": "string"
         }
       },
       "type": "object"
     },
     "Project": {
+      "description": "A project resource. The project is a top level container for resources including Cloud DNS ManagedZones. Projects can be created only in the APIs console.",
       "id": "Project",
       "properties": {
         "id": {
+          "description": "User assigned unique identifier for the resource (output only).",
           "type": "string"
         },
         "kind": {
@@ -1581,19 +1741,23 @@
           "type": "string"
         },
         "number": {
+          "description": "Unique numeric identifier for the resource; defined by the server (output only).",
           "format": "uint64",
           "type": "string"
         },
         "quota": {
-          "$ref": "Quota"
+          "$ref": "Quota",
+          "description": "Quotas assigned to this project (output only)."
         }
       },
       "type": "object"
     },
     "Quota": {
+      "description": "Limits associated with a Project.",
       "id": "Quota",
       "properties": {
         "dnsKeysPerManagedZone": {
+          "description": "Maximum allowed number of DnsKeys per ManagedZone.",
           "format": "int32",
           "type": "integer"
         },
@@ -1603,54 +1767,67 @@
           "type": "string"
         },
         "managedZones": {
+          "description": "Maximum allowed number of managed zones in the project.",
           "format": "int32",
           "type": "integer"
         },
         "managedZonesPerNetwork": {
+          "description": "Maximum allowed number of managed zones which can be attached to a network.",
           "format": "int32",
           "type": "integer"
         },
         "networksPerManagedZone": {
+          "description": "Maximum allowed number of networks to which a privately scoped zone can be attached.",
           "format": "int32",
           "type": "integer"
         },
         "networksPerPolicy": {
+          "description": "Maximum allowed number of networks per policy.",
           "format": "int32",
           "type": "integer"
         },
         "policies": {
+          "description": "Maximum allowed number of policies per project.",
           "format": "int32",
           "type": "integer"
         },
         "resourceRecordsPerRrset": {
+          "description": "Maximum allowed number of ResourceRecords per ResourceRecordSet.",
           "format": "int32",
           "type": "integer"
         },
         "rrsetAdditionsPerChange": {
+          "description": "Maximum allowed number of ResourceRecordSets to add per ChangesCreateRequest.",
           "format": "int32",
           "type": "integer"
         },
         "rrsetDeletionsPerChange": {
+          "description": "Maximum allowed number of ResourceRecordSets to delete per ChangesCreateRequest.",
           "format": "int32",
           "type": "integer"
         },
         "rrsetsPerManagedZone": {
+          "description": "Maximum allowed number of ResourceRecordSets per zone in the project.",
           "format": "int32",
           "type": "integer"
         },
         "targetNameServersPerManagedZone": {
+          "description": "Maximum allowed number of target name servers per managed forwarding zone.",
           "format": "int32",
           "type": "integer"
         },
         "targetNameServersPerPolicy": {
+          "description": "Maximum allowed number of alternative target name servers per policy.",
           "format": "int32",
           "type": "integer"
         },
         "totalRrdataSizePerChange": {
+          "description": "Maximum allowed size for total rrdata in one ChangesCreateRequest in bytes.",
           "format": "int32",
           "type": "integer"
         },
         "whitelistedKeySpecs": {
+          "description": "DNSSEC algorithm and key length types that can be used for DnsKeys.",
           "items": {
             "$ref": "DnsKeySpec"
           },
@@ -1660,6 +1837,7 @@
       "type": "object"
     },
     "ResourceRecordSet": {
+      "description": "A unit of data that will be returned by the DNS servers.",
       "id": "ResourceRecordSet",
       "properties": {
         "kind": {
@@ -1668,25 +1846,30 @@
           "type": "string"
         },
         "name": {
+          "description": "For example, www.example.com.",
           "type": "string"
         },
         "rrdatas": {
+          "description": "As defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1) -- see examples.",
           "items": {
             "type": "string"
           },
           "type": "array"
         },
         "signatureRrdatas": {
+          "description": "As defined in RFC 4034 (section 3.2).",
           "items": {
             "type": "string"
           },
           "type": "array"
         },
         "ttl": {
+          "description": "Number of seconds that this ResourceRecordSet can be cached by resolvers.",
           "format": "int32",
           "type": "integer"
         },
         "type": {
+          "description": "The identifier of a supported record type. See the list of Supported DNS record types.",
           "type": "string"
         }
       },
@@ -1704,9 +1887,11 @@
           "type": "string"
         },
         "nextPageToken": {
+          "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size.",
           "type": "string"
         },
         "rrsets": {
+          "description": "The resource record set resources.",
           "items": {
             "$ref": "ResourceRecordSet"
           },
@@ -1716,9 +1901,11 @@
       "type": "object"
     },
     "ResponseHeader": {
+      "description": "Elements common to every response.",
       "id": "ResponseHeader",
       "properties": {
         "operationId": {
+          "description": "For mutating operation requests that completed successfully. This is the client_operation_id if the client specified it, otherwise it is generated by the server (output only).",
           "type": "string"
         }
       },
diff --git a/dns/v1beta2/dns-gen.go b/dns/v1beta2/dns-gen.go
index 9ef76b0..7ff0c44 100644
--- a/dns/v1beta2/dns-gen.go
+++ b/dns/v1beta2/dns-gen.go
@@ -227,21 +227,40 @@
 	s *Service
 }
 
+// Change: A Change represents a set of ResourceRecordSet additions and
+// deletions applied atomically to a ManagedZone. ResourceRecordSets
+// within a ManagedZone are modified by creating a new Change element in
+// the Changes collection. In turn the Changes collection also records
+// the past modifications to the ResourceRecordSets in a ManagedZone.
+// The current state of the ManagedZone is the sum effect of applying
+// all Change elements in the Changes collection in sequence.
 type Change struct {
+	// Additions: Which ResourceRecordSets to add?
 	Additions []*ResourceRecordSet `json:"additions,omitempty"`
 
+	// Deletions: Which ResourceRecordSets to remove? Must match existing
+	// data exactly.
 	Deletions []*ResourceRecordSet `json:"deletions,omitempty"`
 
+	// Id: Unique identifier for the resource; defined by the server (output
+	// only).
 	Id string `json:"id,omitempty"`
 
+	// IsServing: If the DNS queries for the zone will be served.
 	IsServing bool `json:"isServing,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#change".
 	Kind string `json:"kind,omitempty"`
 
+	// StartTime: The time that this operation was started by the server
+	// (output only). This is in RFC3339 text format.
 	StartTime string `json:"startTime,omitempty"`
 
+	// Status: Status of the operation (output only). A status of "done"
+	// means that the request to update the authoritative servers has been
+	// sent, but the servers might not be updated yet.
+	//
 	// Possible values:
 	//   "done"
 	//   "pending"
@@ -274,7 +293,10 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// ChangesListResponse: The response to a request to enumerate Changes
+// to a ResourceRecordSets collection.
 type ChangesListResponse struct {
+	// Changes: The requested changes.
 	Changes []*Change `json:"changes,omitempty"`
 
 	Header *ResponseHeader `json:"header,omitempty"`
@@ -282,6 +304,17 @@
 	// Kind: Type of resource.
 	Kind string `json:"kind,omitempty"`
 
+	// NextPageToken: The presence of this field indicates that there exist
+	// more results following your last page of results in pagination order.
+	// To fetch them, make another list request using this value as your
+	// pagination token.
+	//
+	// In this way you can retrieve the complete contents of even very large
+	// collections one page at a time. However, if the contents of the
+	// collection change between the first and last paginated list request,
+	// the set of all elements returned will be an inconsistent view of the
+	// collection. There is no way to retrieve a "snapshot" of collections
+	// larger than the maximum page size.
 	NextPageToken string `json:"nextPageToken,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -311,7 +344,11 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// DnsKey: A DNSSEC key pair.
 type DnsKey struct {
+	// Algorithm: String mnemonic specifying the DNSSEC algorithm of this
+	// key. Immutable after creation time.
+	//
 	// Possible values:
 	//   "ecdsap256sha256"
 	//   "ecdsap384sha384"
@@ -320,26 +357,56 @@
 	//   "rsasha512"
 	Algorithm string `json:"algorithm,omitempty"`
 
+	// CreationTime: The time that this resource was created in the control
+	// plane. This is in RFC3339 text format. Output only.
 	CreationTime string `json:"creationTime,omitempty"`
 
+	// Description: A mutable string of at most 1024 characters associated
+	// with this resource for the user's convenience. Has no effect on the
+	// resource's function.
 	Description string `json:"description,omitempty"`
 
+	// Digests: Cryptographic hashes of the DNSKEY resource record
+	// associated with this DnsKey. These digests are needed to construct a
+	// DS record that points at this DNS key. Output only.
 	Digests []*DnsKeyDigest `json:"digests,omitempty"`
 
+	// Id: Unique identifier for the resource; defined by the server (output
+	// only).
 	Id string `json:"id,omitempty"`
 
+	// IsActive: Active keys will be used to sign subsequent changes to the
+	// ManagedZone. Inactive keys will still be present as DNSKEY Resource
+	// Records for the use of resolvers validating existing signatures.
 	IsActive bool `json:"isActive,omitempty"`
 
+	// KeyLength: Length of the key in bits. Specified at creation time then
+	// immutable.
 	KeyLength int64 `json:"keyLength,omitempty"`
 
+	// KeyTag: The key tag is a non-cryptographic hash of the a DNSKEY
+	// resource record associated with this DnsKey. The key tag can be used
+	// to identify a DNSKEY more quickly (but it is not a unique
+	// identifier). In particular, the key tag is used in a parent zone's DS
+	// record to point at the DNSKEY in this child ManagedZone. The key tag
+	// is a number in the range [0, 65535] and the algorithm to calculate it
+	// is specified in RFC4034 Appendix B. Output only.
 	KeyTag int64 `json:"keyTag,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#dnsKey".
 	Kind string `json:"kind,omitempty"`
 
+	// PublicKey: Base64 encoded public half of this key. Output only.
 	PublicKey string `json:"publicKey,omitempty"`
 
+	// Type: One of "KEY_SIGNING" or "ZONE_SIGNING". Keys of type
+	// KEY_SIGNING have the Secure Entry Point flag set and, when active,
+	// will be used to sign only resource record sets of type DNSKEY.
+	// Otherwise, the Secure Entry Point flag will be cleared and this key
+	// will be used to sign only resource record sets of other types.
+	// Immutable after creation time.
+	//
 	// Possible values:
 	//   "keySigning"
 	//   "zoneSigning"
@@ -373,8 +440,12 @@
 }
 
 type DnsKeyDigest struct {
+	// Digest: The base-16 encoded bytes of this digest. Suitable for use in
+	// a DS resource record.
 	Digest string `json:"digest,omitempty"`
 
+	// Type: Specifies the algorithm used to calculate this digest.
+	//
 	// Possible values:
 	//   "sha1"
 	//   "sha256"
@@ -404,7 +475,13 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// DnsKeySpec: Parameters for DnsKey key generation. Used for generating
+// initial keys for a new ManagedZone and as default when adding a new
+// DnsKey.
 type DnsKeySpec struct {
+	// Algorithm: String mnemonic specifying the DNSSEC algorithm of this
+	// key.
+	//
 	// Possible values:
 	//   "ecdsap256sha256"
 	//   "ecdsap384sha384"
@@ -413,8 +490,16 @@
 	//   "rsasha512"
 	Algorithm string `json:"algorithm,omitempty"`
 
+	// KeyLength: Length of the keys in bits.
 	KeyLength int64 `json:"keyLength,omitempty"`
 
+	// KeyType: Specifies whether this is a key signing key (KSK) or a zone
+	// signing key (ZSK). Key signing keys have the Secure Entry Point flag
+	// set and, when active, will only be used to sign resource record sets
+	// of type DNSKEY. Zone signing keys do not have the Secure Entry Point
+	// flag set and will be used to sign all other types of resource record
+	// sets.
+	//
 	// Possible values:
 	//   "keySigning"
 	//   "zoneSigning"
@@ -447,7 +532,10 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// DnsKeysListResponse: The response to a request to enumerate DnsKeys
+// in a ManagedZone.
 type DnsKeysListResponse struct {
+	// DnsKeys: The requested resources.
 	DnsKeys []*DnsKey `json:"dnsKeys,omitempty"`
 
 	Header *ResponseHeader `json:"header,omitempty"`
@@ -455,6 +543,17 @@
 	// Kind: Type of resource.
 	Kind string `json:"kind,omitempty"`
 
+	// NextPageToken: The presence of this field indicates that there exist
+	// more results following your last page of results in pagination order.
+	// To fetch them, make another list request using this value as your
+	// pagination token.
+	//
+	// In this way you can retrieve the complete contents of even very large
+	// collections one page at a time. However, if the contents of the
+	// collection change between the first and last paginated list request,
+	// the set of all elements returned will be an inconsistent view of the
+	// collection. There is no way to retrieve a "snapshot" of collections
+	// larger than the maximum page size.
 	NextPageToken string `json:"nextPageToken,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -484,35 +583,70 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// ManagedZone: A zone is a subtree of the DNS namespace under one
+// administrative responsibility. A ManagedZone is a resource that
+// represents a DNS zone hosted by the Cloud DNS service.
 type ManagedZone struct {
+	// CreationTime: The time that this resource was created on the server.
+	// This is in RFC3339 text format. Output only.
 	CreationTime string `json:"creationTime,omitempty"`
 
+	// Description: A mutable string of at most 1024 characters associated
+	// with this resource for the user's convenience. Has no effect on the
+	// managed zone's function.
 	Description string `json:"description,omitempty"`
 
+	// DnsName: The DNS name of this managed zone, for instance
+	// "example.com.".
 	DnsName string `json:"dnsName,omitempty"`
 
+	// DnssecConfig: DNSSEC configuration.
 	DnssecConfig *ManagedZoneDnsSecConfig `json:"dnssecConfig,omitempty"`
 
+	// ForwardingConfig: The presence for this field indicates that outbound
+	// forwarding is enabled for this zone. The value of this field contains
+	// the set of destinations to forward to.
 	ForwardingConfig *ManagedZoneForwardingConfig `json:"forwardingConfig,omitempty"`
 
+	// Id: Unique identifier for the resource; defined by the server (output
+	// only)
 	Id uint64 `json:"id,omitempty,string"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#managedZone".
 	Kind string `json:"kind,omitempty"`
 
+	// Labels: User labels.
 	Labels map[string]string `json:"labels,omitempty"`
 
+	// Name: User assigned name for this resource. Must be unique within the
+	// project. The name must be 1-63 characters long, must begin with a
+	// letter, end with a letter or digit, and only contain lowercase
+	// letters, digits or dashes.
 	Name string `json:"name,omitempty"`
 
+	// NameServerSet: Optionally specifies the NameServerSet for this
+	// ManagedZone. A NameServerSet is a set of DNS name servers that all
+	// host the same ManagedZones. Most users will leave this field unset.
 	NameServerSet string `json:"nameServerSet,omitempty"`
 
+	// NameServers: Delegate your managed_zone to these virtual name
+	// servers; defined by the server (output only)
 	NameServers []string `json:"nameServers,omitempty"`
 
+	// PeeringConfig: The presence of this field indicates that DNS Peering
+	// is enabled for this zone. The value of this field contains the
+	// network to peer with.
 	PeeringConfig *ManagedZonePeeringConfig `json:"peeringConfig,omitempty"`
 
+	// PrivateVisibilityConfig: For privately visible zones, the set of
+	// Virtual Private Cloud resources that the zone is visible from.
 	PrivateVisibilityConfig *ManagedZonePrivateVisibilityConfig `json:"privateVisibilityConfig,omitempty"`
 
+	// Visibility: The zone's visibility: public zones are exposed to the
+	// Internet, while private zones are visible only to Virtual Private
+	// Cloud resources.
+	//
 	// Possible values:
 	//   "private"
 	//   "public"
@@ -546,17 +680,25 @@
 }
 
 type ManagedZoneDnsSecConfig struct {
+	// DefaultKeySpecs: Specifies parameters that will be used for
+	// generating initial DnsKeys for this ManagedZone. Output only while
+	// state is not OFF.
 	DefaultKeySpecs []*DnsKeySpec `json:"defaultKeySpecs,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#managedZoneDnsSecConfig".
 	Kind string `json:"kind,omitempty"`
 
+	// NonExistence: Specifies the mechanism used to provide authenticated
+	// denial-of-existence responses. Output only while state is not OFF.
+	//
 	// Possible values:
 	//   "nsec"
 	//   "nsec3"
 	NonExistence string `json:"nonExistence,omitempty"`
 
+	// State: Specifies whether DNSSEC is enabled, and what mode it is in.
+	//
 	// Possible values:
 	//   "off"
 	//   "on"
@@ -592,6 +734,9 @@
 	// string "dns#managedZoneForwardingConfig".
 	Kind string `json:"kind,omitempty"`
 
+	// TargetNameServers: List of target name servers to forward to. Cloud
+	// DNS will select the best available name server if more than one
+	// target is given.
 	TargetNameServers []*ManagedZoneForwardingConfigNameServerTarget `json:"targetNameServers,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "Kind") to
@@ -618,6 +763,7 @@
 }
 
 type ManagedZoneForwardingConfigNameServerTarget struct {
+	// Ipv4Address: IPv4 address of a target name server.
 	Ipv4Address string `json:"ipv4Address,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
@@ -653,8 +799,20 @@
 	// Kind: Type of resource.
 	Kind string `json:"kind,omitempty"`
 
+	// NextPageToken: The presence of this field indicates that there exist
+	// more results following your last page of results in pagination order.
+	// To fetch them, make another list request using this value as your
+	// page token.
+	//
+	// In this way you can retrieve the complete contents of even very large
+	// collections one page at a time. However, if the contents of the
+	// collection change between the first and last paginated list request,
+	// the set of all elements returned will be an inconsistent view of the
+	// collection. There is no way to retrieve a consistent snapshot of a
+	// collection larger than the maximum page size.
 	NextPageToken string `json:"nextPageToken,omitempty"`
 
+	// Operations: The operation resources.
 	Operations []*Operation `json:"operations,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -689,6 +847,7 @@
 	// string "dns#managedZonePeeringConfig".
 	Kind string `json:"kind,omitempty"`
 
+	// TargetNetwork: The network with which to peer.
 	TargetNetwork *ManagedZonePeeringConfigTargetNetwork `json:"targetNetwork,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "Kind") to
@@ -715,12 +874,20 @@
 }
 
 type ManagedZonePeeringConfigTargetNetwork struct {
+	// DeactivateTime: If this zone has been deactivated due to a problem
+	// with the network it targeted, the time at which it was deactivated.
+	// The zone can be deactivated if, for instance, the network it targeted
+	// was deleted. If the targeted network is still present, this will be
+	// the empty string. This is in RFC3339 text format. Output only.
 	DeactivateTime string `json:"deactivateTime,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#managedZonePeeringConfigTargetNetwork".
 	Kind string `json:"kind,omitempty"`
 
+	// NetworkUrl: The fully qualified URL of the VPC network to forward
+	// queries to. This should be formatted like
+	// https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}
 	NetworkUrl string `json:"networkUrl,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "DeactivateTime") to
@@ -752,6 +919,7 @@
 	// string "dns#managedZonePrivateVisibilityConfig".
 	Kind string `json:"kind,omitempty"`
 
+	// Networks: The list of VPC networks that can see this zone.
 	Networks []*ManagedZonePrivateVisibilityConfigNetwork `json:"networks,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "Kind") to
@@ -782,6 +950,9 @@
 	// string "dns#managedZonePrivateVisibilityConfigNetwork".
 	Kind string `json:"kind,omitempty"`
 
+	// NetworkUrl: The fully qualified URL of the VPC network to bind to.
+	// This should be formatted like
+	// https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}
 	NetworkUrl string `json:"networkUrl,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "Kind") to
@@ -813,8 +984,20 @@
 	// Kind: Type of resource.
 	Kind string `json:"kind,omitempty"`
 
+	// ManagedZones: The managed zone resources.
 	ManagedZones []*ManagedZone `json:"managedZones,omitempty"`
 
+	// NextPageToken: The presence of this field indicates that there exist
+	// more results following your last page of results in pagination order.
+	// To fetch them, make another list request using this value as your
+	// page token.
+	//
+	// In this way you can retrieve the complete contents of even very large
+	// collections one page at a time. However, if the contents of the
+	// collection change between the first and last paginated list request,
+	// the set of all elements returned will be an inconsistent view of the
+	// collection. There is no way to retrieve a consistent snapshot of a
+	// collection larger than the maximum page size.
 	NextPageToken string `json:"nextPageToken,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -844,26 +1027,52 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// Operation: An operation represents a successful mutation performed on
+// a Cloud DNS resource. Operations provide: - An audit log of server
+// resource mutations. - A way to recover/retry API calls in the case
+// where the response is never received by the caller. Use the caller
+// specified client_operation_id.
 type Operation struct {
+	// DnsKeyContext: Only populated if the operation targeted a DnsKey
+	// (output only).
 	DnsKeyContext *OperationDnsKeyContext `json:"dnsKeyContext,omitempty"`
 
+	// Id: Unique identifier for the resource. This is the
+	// client_operation_id if the client specified it when the mutation was
+	// initiated, otherwise, it is generated by the server. The name must be
+	// 1-63 characters long and match the regular expression [-a-z0-9]?
+	// (output only)
 	Id string `json:"id,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#operation".
 	Kind string `json:"kind,omitempty"`
 
+	// StartTime: The time that this operation was started by the server.
+	// This is in RFC3339 text format (output only).
 	StartTime string `json:"startTime,omitempty"`
 
+	// Status: Status of the operation. Can be one of the following:
+	// "PENDING" or "DONE" (output only). A status of "DONE" means that the
+	// request to update the authoritative servers has been sent, but the
+	// servers might not be updated yet.
+	//
 	// Possible values:
 	//   "done"
 	//   "pending"
 	Status string `json:"status,omitempty"`
 
+	// Type: Type of the operation. Operations include insert, update, and
+	// delete (output only).
 	Type string `json:"type,omitempty"`
 
+	// User: User who requested the operation, for example:
+	// user@example.com. cloud-dns-system for operations automatically done
+	// by the system. (output only)
 	User string `json:"user,omitempty"`
 
+	// ZoneContext: Only populated if the operation targeted a ManagedZone
+	// (output only).
 	ZoneContext *OperationManagedZoneContext `json:"zoneContext,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -894,8 +1103,10 @@
 }
 
 type OperationDnsKeyContext struct {
+	// NewValue: The post-operation DnsKey resource.
 	NewValue *DnsKey `json:"newValue,omitempty"`
 
+	// OldValue: The pre-operation DnsKey resource.
 	OldValue *DnsKey `json:"oldValue,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "NewValue") to
@@ -922,8 +1133,10 @@
 }
 
 type OperationManagedZoneContext struct {
+	// NewValue: The post-operation ManagedZone resource.
 	NewValue *ManagedZone `json:"newValue,omitempty"`
 
+	// OldValue: The pre-operation ManagedZone resource.
 	OldValue *ManagedZone `json:"oldValue,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "NewValue") to
@@ -955,8 +1168,20 @@
 	// Kind: Type of resource.
 	Kind string `json:"kind,omitempty"`
 
+	// NextPageToken: The presence of this field indicates that there exist
+	// more results following your last page of results in pagination order.
+	// To fetch them, make another list request using this value as your
+	// page token.
+	//
+	// In this way you can retrieve the complete contents of even very large
+	// collections one page at a time. However, if the contents of the
+	// collection change between the first and last paginated list request,
+	// the set of all elements returned will be an inconsistent view of the
+	// collection. There is no way to retrieve a consistent snapshot of a
+	// collection larger than the maximum page size.
 	NextPageToken string `json:"nextPageToken,omitempty"`
 
+	// Policies: The policy resources.
 	Policies []*Policy `json:"policies,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -1050,23 +1275,43 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// Policy: A policy is a collection of DNS rules applied to one or more
+// Virtual Private Cloud resources.
 type Policy struct {
+	// AlternativeNameServerConfig: Sets an alternative name server for the
+	// associated networks. When specified, all DNS queries are forwarded to
+	// a name server that you choose. Names such as .internal are not
+	// available when an alternative name server is specified.
 	AlternativeNameServerConfig *PolicyAlternativeNameServerConfig `json:"alternativeNameServerConfig,omitempty"`
 
+	// Description: A mutable string of at most 1024 characters associated
+	// with this resource for the user's convenience. Has no effect on the
+	// policy's function.
 	Description string `json:"description,omitempty"`
 
+	// EnableInboundForwarding: Allows networks bound to this policy to
+	// receive DNS queries sent by VMs or applications over VPN connections.
+	// When enabled, a virtual IP address will be allocated from each of the
+	// sub-networks that are bound to this policy.
 	EnableInboundForwarding bool `json:"enableInboundForwarding,omitempty"`
 
+	// EnableLogging: Controls whether logging is enabled for the networks
+	// bound to this policy. Defaults to no logging if not set.
 	EnableLogging bool `json:"enableLogging,omitempty"`
 
+	// Id: Unique identifier for the resource; defined by the server (output
+	// only).
 	Id uint64 `json:"id,omitempty,string"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#policy".
 	Kind string `json:"kind,omitempty"`
 
+	// Name: User assigned name for this policy.
 	Name string `json:"name,omitempty"`
 
+	// Networks: List of network names specifying networks to which this
+	// policy is applied.
 	Networks []*PolicyNetwork `json:"networks,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -1103,6 +1348,10 @@
 	// string "dns#policyAlternativeNameServerConfig".
 	Kind string `json:"kind,omitempty"`
 
+	// TargetNameServers: Sets an alternative name server for the associated
+	// networks. When specified, all DNS queries are forwarded to a name
+	// server that you choose. Names such as .internal are not available
+	// when an alternative name server is specified.
 	TargetNameServers []*PolicyAlternativeNameServerConfigTargetNameServer `json:"targetNameServers,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "Kind") to
@@ -1129,6 +1378,7 @@
 }
 
 type PolicyAlternativeNameServerConfigTargetNameServer struct {
+	// Ipv4Address: IPv4 address to forward to.
 	Ipv4Address string `json:"ipv4Address,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
@@ -1163,6 +1413,9 @@
 	// string "dns#policyNetwork".
 	Kind string `json:"kind,omitempty"`
 
+	// NetworkUrl: The fully qualified URL of the VPC network to bind to.
+	// This should be formatted like
+	// https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}
 	NetworkUrl string `json:"networkUrl,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "Kind") to
@@ -1188,15 +1441,22 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// Project: A project resource. The project is a top level container for
+// resources including Cloud DNS ManagedZones. Projects can be created
+// only in the APIs console.
 type Project struct {
+	// Id: User assigned unique identifier for the resource (output only).
 	Id string `json:"id,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#project".
 	Kind string `json:"kind,omitempty"`
 
+	// Number: Unique numeric identifier for the resource; defined by the
+	// server (output only).
 	Number uint64 `json:"number,omitempty,string"`
 
+	// Quota: Quotas assigned to this project (output only).
 	Quota *Quota `json:"quota,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -1226,37 +1486,63 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// Quota: Limits associated with a Project.
 type Quota struct {
+	// DnsKeysPerManagedZone: Maximum allowed number of DnsKeys per
+	// ManagedZone.
 	DnsKeysPerManagedZone int64 `json:"dnsKeysPerManagedZone,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#quota".
 	Kind string `json:"kind,omitempty"`
 
+	// ManagedZones: Maximum allowed number of managed zones in the project.
 	ManagedZones int64 `json:"managedZones,omitempty"`
 
+	// ManagedZonesPerNetwork: Maximum allowed number of managed zones which
+	// can be attached to a network.
 	ManagedZonesPerNetwork int64 `json:"managedZonesPerNetwork,omitempty"`
 
+	// NetworksPerManagedZone: Maximum allowed number of networks to which a
+	// privately scoped zone can be attached.
 	NetworksPerManagedZone int64 `json:"networksPerManagedZone,omitempty"`
 
+	// NetworksPerPolicy: Maximum allowed number of networks per policy.
 	NetworksPerPolicy int64 `json:"networksPerPolicy,omitempty"`
 
+	// Policies: Maximum allowed number of policies per project.
 	Policies int64 `json:"policies,omitempty"`
 
+	// ResourceRecordsPerRrset: Maximum allowed number of ResourceRecords
+	// per ResourceRecordSet.
 	ResourceRecordsPerRrset int64 `json:"resourceRecordsPerRrset,omitempty"`
 
+	// RrsetAdditionsPerChange: Maximum allowed number of ResourceRecordSets
+	// to add per ChangesCreateRequest.
 	RrsetAdditionsPerChange int64 `json:"rrsetAdditionsPerChange,omitempty"`
 
+	// RrsetDeletionsPerChange: Maximum allowed number of ResourceRecordSets
+	// to delete per ChangesCreateRequest.
 	RrsetDeletionsPerChange int64 `json:"rrsetDeletionsPerChange,omitempty"`
 
+	// RrsetsPerManagedZone: Maximum allowed number of ResourceRecordSets
+	// per zone in the project.
 	RrsetsPerManagedZone int64 `json:"rrsetsPerManagedZone,omitempty"`
 
+	// TargetNameServersPerManagedZone: Maximum allowed number of target
+	// name servers per managed forwarding zone.
 	TargetNameServersPerManagedZone int64 `json:"targetNameServersPerManagedZone,omitempty"`
 
+	// TargetNameServersPerPolicy: Maximum allowed number of alternative
+	// target name servers per policy.
 	TargetNameServersPerPolicy int64 `json:"targetNameServersPerPolicy,omitempty"`
 
+	// TotalRrdataSizePerChange: Maximum allowed size for total rrdata in
+	// one ChangesCreateRequest in bytes.
 	TotalRrdataSizePerChange int64 `json:"totalRrdataSizePerChange,omitempty"`
 
+	// WhitelistedKeySpecs: DNSSEC algorithm and key length types that can
+	// be used for DnsKeys.
 	WhitelistedKeySpecs []*DnsKeySpec `json:"whitelistedKeySpecs,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g.
@@ -1284,19 +1570,29 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// ResourceRecordSet: A unit of data that will be returned by the DNS
+// servers.
 type ResourceRecordSet struct {
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#resourceRecordSet".
 	Kind string `json:"kind,omitempty"`
 
+	// Name: For example, www.example.com.
 	Name string `json:"name,omitempty"`
 
+	// Rrdatas: As defined in RFC 1035 (section 5) and RFC 1034 (section
+	// 3.6.1) -- see examples.
 	Rrdatas []string `json:"rrdatas,omitempty"`
 
+	// SignatureRrdatas: As defined in RFC 4034 (section 3.2).
 	SignatureRrdatas []string `json:"signatureRrdatas,omitempty"`
 
+	// Ttl: Number of seconds that this ResourceRecordSet can be cached by
+	// resolvers.
 	Ttl int64 `json:"ttl,omitempty"`
 
+	// Type: The identifier of a supported record type. See the list of
+	// Supported DNS record types.
 	Type string `json:"type,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "Kind") to
@@ -1328,8 +1624,20 @@
 	// Kind: Type of resource.
 	Kind string `json:"kind,omitempty"`
 
+	// NextPageToken: The presence of this field indicates that there exist
+	// more results following your last page of results in pagination order.
+	// To fetch them, make another list request using this value as your
+	// pagination token.
+	//
+	// In this way you can retrieve the complete contents of even very large
+	// collections one page at a time. However, if the contents of the
+	// collection change between the first and last paginated list request,
+	// the set of all elements returned will be an inconsistent view of the
+	// collection. There is no way to retrieve a consistent snapshot of a
+	// collection larger than the maximum page size.
 	NextPageToken string `json:"nextPageToken,omitempty"`
 
+	// Rrsets: The resource record set resources.
 	Rrsets []*ResourceRecordSet `json:"rrsets,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -1359,7 +1667,11 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// ResponseHeader: Elements common to every response.
 type ResponseHeader struct {
+	// OperationId: For mutating operation requests that completed
+	// successfully. This is the client_operation_id if the client specified
+	// it, otherwise it is generated by the server (output only).
 	OperationId string `json:"operationId,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "OperationId") to
@@ -1397,7 +1709,7 @@
 	header_     http.Header
 }
 
-// Create:
+// Create: Atomically update the ResourceRecordSet collection.
 func (r *ChangesService) Create(project string, managedZone string, change *Change) *ChangesCreateCall {
 	c := &ChangesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -1407,6 +1719,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ChangesCreateCall) ClientOperationId(clientOperationId string) *ChangesCreateCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -1503,7 +1818,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Atomically update the ResourceRecordSet collection.",
 	//   "httpMethod": "POST",
 	//   "id": "dns.changes.create",
 	//   "parameterOrder": [
@@ -1512,15 +1827,18 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -1554,7 +1872,7 @@
 	header_      http.Header
 }
 
-// Get:
+// Get: Fetch the representation of an existing Change.
 func (r *ChangesService) Get(project string, managedZone string, changeId string) *ChangesGetCall {
 	c := &ChangesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -1564,6 +1882,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ChangesGetCall) ClientOperationId(clientOperationId string) *ChangesGetCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -1669,7 +1990,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Fetch the representation of an existing Change.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.changes.get",
 	//   "parameterOrder": [
@@ -1679,20 +2000,24 @@
 	//   ],
 	//   "parameters": {
 	//     "changeId": {
+	//       "description": "The identifier of the requested change, from a previous ResourceRecordSetsChangeResponse.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -1724,7 +2049,7 @@
 	header_      http.Header
 }
 
-// List:
+// List: Enumerate Changes to a ResourceRecordSet collection.
 func (r *ChangesService) List(project string, managedZone string) *ChangesListCall {
 	c := &ChangesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -1732,19 +2057,24 @@
 	return c
 }
 
-// MaxResults sets the optional parameter "maxResults":
+// MaxResults sets the optional parameter "maxResults": Maximum number
+// of results to be returned. If unspecified, the server will decide how
+// many results to return.
 func (c *ChangesListCall) MaxResults(maxResults int64) *ChangesListCall {
 	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 	return c
 }
 
-// PageToken sets the optional parameter "pageToken":
+// PageToken sets the optional parameter "pageToken": A tag returned by
+// a previous list request that was truncated. Use this parameter to
+// continue a previous list request.
 func (c *ChangesListCall) PageToken(pageToken string) *ChangesListCall {
 	c.urlParams_.Set("pageToken", pageToken)
 	return c
 }
 
-// SortBy sets the optional parameter "sortBy":
+// SortBy sets the optional parameter "sortBy": Sorting criterion. The
+// only supported value is change sequence.
 //
 // Possible values:
 //   "changeSequence" (default)
@@ -1753,7 +2083,8 @@
 	return c
 }
 
-// SortOrder sets the optional parameter "sortOrder":
+// SortOrder sets the optional parameter "sortOrder": Sorting order
+// direction: 'ascending' or 'descending'.
 func (c *ChangesListCall) SortOrder(sortOrder string) *ChangesListCall {
 	c.urlParams_.Set("sortOrder", sortOrder)
 	return c
@@ -1858,7 +2189,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Enumerate Changes to a ResourceRecordSet collection.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.changes.list",
 	//   "parameterOrder": [
@@ -1867,26 +2198,31 @@
 	//   ],
 	//   "parameters": {
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "maxResults": {
+	//       "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
 	//       "format": "int32",
 	//       "location": "query",
 	//       "type": "integer"
 	//     },
 	//     "pageToken": {
+	//       "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "sortBy": {
 	//       "default": "changeSequence",
+	//       "description": "Sorting criterion. The only supported value is change sequence.",
 	//       "enum": [
 	//         "changeSequence"
 	//       ],
@@ -1897,6 +2233,7 @@
 	//       "type": "string"
 	//     },
 	//     "sortOrder": {
+	//       "description": "Sorting order direction: 'ascending' or 'descending'.",
 	//       "location": "query",
 	//       "type": "string"
 	//     }
@@ -1949,7 +2286,7 @@
 	header_      http.Header
 }
 
-// Get:
+// Get: Fetch the representation of an existing DnsKey.
 func (r *DnsKeysService) Get(project string, managedZone string, dnsKeyId string) *DnsKeysGetCall {
 	c := &DnsKeysGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -1959,12 +2296,18 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *DnsKeysGetCall) ClientOperationId(clientOperationId string) *DnsKeysGetCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
 }
 
-// DigestType sets the optional parameter "digestType":
+// DigestType sets the optional parameter "digestType": An optional
+// comma-separated list of digest types to compute and display for key
+// signing keys. If omitted, the recommended digest type will be
+// computed and displayed.
 func (c *DnsKeysGetCall) DigestType(digestType string) *DnsKeysGetCall {
 	c.urlParams_.Set("digestType", digestType)
 	return c
@@ -2070,7 +2413,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Fetch the representation of an existing DnsKey.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.dnsKeys.get",
 	//   "parameterOrder": [
@@ -2080,24 +2423,29 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "digestType": {
+	//       "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "dnsKeyId": {
+	//       "description": "The identifier of the requested DnsKey.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -2129,7 +2477,7 @@
 	header_      http.Header
 }
 
-// List:
+// List: Enumerate DnsKeys to a ResourceRecordSet collection.
 func (r *DnsKeysService) List(project string, managedZone string) *DnsKeysListCall {
 	c := &DnsKeysListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -2137,19 +2485,26 @@
 	return c
 }
 
-// DigestType sets the optional parameter "digestType":
+// DigestType sets the optional parameter "digestType": An optional
+// comma-separated list of digest types to compute and display for key
+// signing keys. If omitted, the recommended digest type will be
+// computed and displayed.
 func (c *DnsKeysListCall) DigestType(digestType string) *DnsKeysListCall {
 	c.urlParams_.Set("digestType", digestType)
 	return c
 }
 
-// MaxResults sets the optional parameter "maxResults":
+// MaxResults sets the optional parameter "maxResults": Maximum number
+// of results to be returned. If unspecified, the server will decide how
+// many results to return.
 func (c *DnsKeysListCall) MaxResults(maxResults int64) *DnsKeysListCall {
 	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 	return c
 }
 
-// PageToken sets the optional parameter "pageToken":
+// PageToken sets the optional parameter "pageToken": A tag returned by
+// a previous list request that was truncated. Use this parameter to
+// continue a previous list request.
 func (c *DnsKeysListCall) PageToken(pageToken string) *DnsKeysListCall {
 	c.urlParams_.Set("pageToken", pageToken)
 	return c
@@ -2254,7 +2609,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Enumerate DnsKeys to a ResourceRecordSet collection.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.dnsKeys.list",
 	//   "parameterOrder": [
@@ -2263,24 +2618,29 @@
 	//   ],
 	//   "parameters": {
 	//     "digestType": {
+	//       "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "maxResults": {
+	//       "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
 	//       "format": "int32",
 	//       "location": "query",
 	//       "type": "integer"
 	//     },
 	//     "pageToken": {
+	//       "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -2334,7 +2694,7 @@
 	header_      http.Header
 }
 
-// Get:
+// Get: Fetch the representation of an existing Operation.
 func (r *ManagedZoneOperationsService) Get(project string, managedZone string, operation string) *ManagedZoneOperationsGetCall {
 	c := &ManagedZoneOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -2344,6 +2704,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ManagedZoneOperationsGetCall) ClientOperationId(clientOperationId string) *ManagedZoneOperationsGetCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -2449,7 +2812,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Fetch the representation of an existing Operation.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.managedZoneOperations.get",
 	//   "parameterOrder": [
@@ -2459,20 +2822,24 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "operation": {
+	//       "description": "Identifies the operation addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -2504,7 +2871,7 @@
 	header_      http.Header
 }
 
-// List:
+// List: Enumerate Operations for the given ManagedZone.
 func (r *ManagedZoneOperationsService) List(project string, managedZone string) *ManagedZoneOperationsListCall {
 	c := &ManagedZoneOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -2512,19 +2879,24 @@
 	return c
 }
 
-// MaxResults sets the optional parameter "maxResults":
+// MaxResults sets the optional parameter "maxResults": Maximum number
+// of results to be returned. If unspecified, the server will decide how
+// many results to return.
 func (c *ManagedZoneOperationsListCall) MaxResults(maxResults int64) *ManagedZoneOperationsListCall {
 	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 	return c
 }
 
-// PageToken sets the optional parameter "pageToken":
+// PageToken sets the optional parameter "pageToken": A tag returned by
+// a previous list request that was truncated. Use this parameter to
+// continue a previous list request.
 func (c *ManagedZoneOperationsListCall) PageToken(pageToken string) *ManagedZoneOperationsListCall {
 	c.urlParams_.Set("pageToken", pageToken)
 	return c
 }
 
-// SortBy sets the optional parameter "sortBy":
+// SortBy sets the optional parameter "sortBy": Sorting criterion. The
+// only supported values are START_TIME and ID.
 //
 // Possible values:
 //   "id"
@@ -2634,7 +3006,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Enumerate Operations for the given ManagedZone.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.managedZoneOperations.list",
 	//   "parameterOrder": [
@@ -2643,26 +3015,31 @@
 	//   ],
 	//   "parameters": {
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "maxResults": {
+	//       "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
 	//       "format": "int32",
 	//       "location": "query",
 	//       "type": "integer"
 	//     },
 	//     "pageToken": {
+	//       "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "sortBy": {
 	//       "default": "startTime",
+	//       "description": "Sorting criterion. The only supported values are START_TIME and ID.",
 	//       "enum": [
 	//         "id",
 	//         "startTime"
@@ -2721,7 +3098,7 @@
 	header_     http.Header
 }
 
-// Create:
+// Create: Create a new ManagedZone.
 func (r *ManagedZonesService) Create(project string, managedzone *ManagedZone) *ManagedZonesCreateCall {
 	c := &ManagedZonesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -2730,6 +3107,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ManagedZonesCreateCall) ClientOperationId(clientOperationId string) *ManagedZonesCreateCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -2825,7 +3205,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Create a new ManagedZone.",
 	//   "httpMethod": "POST",
 	//   "id": "dns.managedZones.create",
 	//   "parameterOrder": [
@@ -2833,10 +3213,12 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -2868,7 +3250,7 @@
 	header_     http.Header
 }
 
-// Delete:
+// Delete: Delete a previously created ManagedZone.
 func (r *ManagedZonesService) Delete(project string, managedZone string) *ManagedZonesDeleteCall {
 	c := &ManagedZonesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -2877,6 +3259,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ManagedZonesDeleteCall) ClientOperationId(clientOperationId string) *ManagedZonesDeleteCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -2943,7 +3328,7 @@
 	}
 	return nil
 	// {
-	//   "description": "",
+	//   "description": "Delete a previously created ManagedZone.",
 	//   "httpMethod": "DELETE",
 	//   "id": "dns.managedZones.delete",
 	//   "parameterOrder": [
@@ -2952,15 +3337,18 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -2987,7 +3375,7 @@
 	header_      http.Header
 }
 
-// Get:
+// Get: Fetch the representation of an existing ManagedZone.
 func (r *ManagedZonesService) Get(project string, managedZone string) *ManagedZonesGetCall {
 	c := &ManagedZonesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -2996,6 +3384,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ManagedZonesGetCall) ClientOperationId(clientOperationId string) *ManagedZonesGetCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -3100,7 +3491,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Fetch the representation of an existing ManagedZone.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.managedZones.get",
 	//   "parameterOrder": [
@@ -3109,15 +3500,18 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -3148,26 +3542,32 @@
 	header_      http.Header
 }
 
-// List:
+// List: Enumerate ManagedZones that have been created but not yet
+// deleted.
 func (r *ManagedZonesService) List(project string) *ManagedZonesListCall {
 	c := &ManagedZonesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
 	return c
 }
 
-// DnsName sets the optional parameter "dnsName":
+// DnsName sets the optional parameter "dnsName": Restricts the list to
+// return only zones with this domain name.
 func (c *ManagedZonesListCall) DnsName(dnsName string) *ManagedZonesListCall {
 	c.urlParams_.Set("dnsName", dnsName)
 	return c
 }
 
-// MaxResults sets the optional parameter "maxResults":
+// MaxResults sets the optional parameter "maxResults": Maximum number
+// of results to be returned. If unspecified, the server will decide how
+// many results to return.
 func (c *ManagedZonesListCall) MaxResults(maxResults int64) *ManagedZonesListCall {
 	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 	return c
 }
 
-// PageToken sets the optional parameter "pageToken":
+// PageToken sets the optional parameter "pageToken": A tag returned by
+// a previous list request that was truncated. Use this parameter to
+// continue a previous list request.
 func (c *ManagedZonesListCall) PageToken(pageToken string) *ManagedZonesListCall {
 	c.urlParams_.Set("pageToken", pageToken)
 	return c
@@ -3271,7 +3671,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Enumerate ManagedZones that have been created but not yet deleted.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.managedZones.list",
 	//   "parameterOrder": [
@@ -3279,19 +3679,23 @@
 	//   ],
 	//   "parameters": {
 	//     "dnsName": {
+	//       "description": "Restricts the list to return only zones with this domain name.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "maxResults": {
+	//       "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
 	//       "format": "int32",
 	//       "location": "query",
 	//       "type": "integer"
 	//     },
 	//     "pageToken": {
+	//       "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -3344,7 +3748,7 @@
 	header_     http.Header
 }
 
-// Patch:
+// Patch: Apply a partial update to an existing ManagedZone.
 func (r *ManagedZonesService) Patch(project string, managedZone string, managedzone *ManagedZone) *ManagedZonesPatchCall {
 	c := &ManagedZonesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -3354,6 +3758,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ManagedZonesPatchCall) ClientOperationId(clientOperationId string) *ManagedZonesPatchCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -3450,7 +3857,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Apply a partial update to an existing ManagedZone.",
 	//   "httpMethod": "PATCH",
 	//   "id": "dns.managedZones.patch",
 	//   "parameterOrder": [
@@ -3459,15 +3866,18 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -3500,7 +3910,7 @@
 	header_     http.Header
 }
 
-// Update:
+// Update: Update an existing ManagedZone.
 func (r *ManagedZonesService) Update(project string, managedZone string, managedzone *ManagedZone) *ManagedZonesUpdateCall {
 	c := &ManagedZonesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -3510,6 +3920,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ManagedZonesUpdateCall) ClientOperationId(clientOperationId string) *ManagedZonesUpdateCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -3606,7 +4019,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Update an existing ManagedZone.",
 	//   "httpMethod": "PUT",
 	//   "id": "dns.managedZones.update",
 	//   "parameterOrder": [
@@ -3615,15 +4028,18 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -3655,7 +4071,7 @@
 	header_    http.Header
 }
 
-// Create:
+// Create: Create a new Policy
 func (r *PoliciesService) Create(project string, policy *Policy) *PoliciesCreateCall {
 	c := &PoliciesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -3664,6 +4080,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *PoliciesCreateCall) ClientOperationId(clientOperationId string) *PoliciesCreateCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -3759,7 +4178,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Create a new Policy",
 	//   "httpMethod": "POST",
 	//   "id": "dns.policies.create",
 	//   "parameterOrder": [
@@ -3767,10 +4186,12 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -3802,7 +4223,8 @@
 	header_    http.Header
 }
 
-// Delete:
+// Delete: Delete a previously created Policy. Will fail if the policy
+// is still being referenced by a network.
 func (r *PoliciesService) Delete(project string, policy string) *PoliciesDeleteCall {
 	c := &PoliciesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -3811,6 +4233,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *PoliciesDeleteCall) ClientOperationId(clientOperationId string) *PoliciesDeleteCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -3877,7 +4302,7 @@
 	}
 	return nil
 	// {
-	//   "description": "",
+	//   "description": "Delete a previously created Policy. Will fail if the policy is still being referenced by a network.",
 	//   "httpMethod": "DELETE",
 	//   "id": "dns.policies.delete",
 	//   "parameterOrder": [
@@ -3886,15 +4311,18 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "policy": {
+	//       "description": "User given friendly name of the policy addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -3921,7 +4349,7 @@
 	header_      http.Header
 }
 
-// Get:
+// Get: Fetch the representation of an existing Policy.
 func (r *PoliciesService) Get(project string, policy string) *PoliciesGetCall {
 	c := &PoliciesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -3930,6 +4358,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *PoliciesGetCall) ClientOperationId(clientOperationId string) *PoliciesGetCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -4034,7 +4465,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Fetch the representation of an existing Policy.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.policies.get",
 	//   "parameterOrder": [
@@ -4043,15 +4474,18 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "policy": {
+	//       "description": "User given friendly name of the policy addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -4082,20 +4516,24 @@
 	header_      http.Header
 }
 
-// List:
+// List: Enumerate all Policies associated with a project.
 func (r *PoliciesService) List(project string) *PoliciesListCall {
 	c := &PoliciesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
 	return c
 }
 
-// MaxResults sets the optional parameter "maxResults":
+// MaxResults sets the optional parameter "maxResults": Maximum number
+// of results to be returned. If unspecified, the server will decide how
+// many results to return.
 func (c *PoliciesListCall) MaxResults(maxResults int64) *PoliciesListCall {
 	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 	return c
 }
 
-// PageToken sets the optional parameter "pageToken":
+// PageToken sets the optional parameter "pageToken": A tag returned by
+// a previous list request that was truncated. Use this parameter to
+// continue a previous list request.
 func (c *PoliciesListCall) PageToken(pageToken string) *PoliciesListCall {
 	c.urlParams_.Set("pageToken", pageToken)
 	return c
@@ -4199,7 +4637,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Enumerate all Policies associated with a project.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.policies.list",
 	//   "parameterOrder": [
@@ -4207,15 +4645,18 @@
 	//   ],
 	//   "parameters": {
 	//     "maxResults": {
+	//       "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
 	//       "format": "int32",
 	//       "location": "query",
 	//       "type": "integer"
 	//     },
 	//     "pageToken": {
+	//       "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -4268,7 +4709,7 @@
 	header_    http.Header
 }
 
-// Patch:
+// Patch: Apply a partial update to an existing Policy.
 func (r *PoliciesService) Patch(project string, policy string, policy2 *Policy) *PoliciesPatchCall {
 	c := &PoliciesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -4278,6 +4719,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *PoliciesPatchCall) ClientOperationId(clientOperationId string) *PoliciesPatchCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -4374,7 +4818,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Apply a partial update to an existing Policy.",
 	//   "httpMethod": "PATCH",
 	//   "id": "dns.policies.patch",
 	//   "parameterOrder": [
@@ -4383,15 +4827,18 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "policy": {
+	//       "description": "User given friendly name of the policy addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -4424,7 +4871,7 @@
 	header_    http.Header
 }
 
-// Update:
+// Update: Update an existing Policy.
 func (r *PoliciesService) Update(project string, policy string, policy2 *Policy) *PoliciesUpdateCall {
 	c := &PoliciesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -4434,6 +4881,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *PoliciesUpdateCall) ClientOperationId(clientOperationId string) *PoliciesUpdateCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -4530,7 +4980,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Update an existing Policy.",
 	//   "httpMethod": "PUT",
 	//   "id": "dns.policies.update",
 	//   "parameterOrder": [
@@ -4539,15 +4989,18 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "policy": {
+	//       "description": "User given friendly name of the policy addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -4579,7 +5032,7 @@
 	header_      http.Header
 }
 
-// Get:
+// Get: Fetch the representation of an existing Project.
 func (r *ProjectsService) Get(project string) *ProjectsGetCall {
 	c := &ProjectsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -4587,6 +5040,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ProjectsGetCall) ClientOperationId(clientOperationId string) *ProjectsGetCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -4690,7 +5146,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Fetch the representation of an existing Project.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.projects.get",
 	//   "parameterOrder": [
@@ -4698,10 +5154,12 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -4733,7 +5191,8 @@
 	header_      http.Header
 }
 
-// List:
+// List: Enumerate ResourceRecordSets that have been created but not yet
+// deleted.
 func (r *ResourceRecordSetsService) List(project string, managedZone string) *ResourceRecordSetsListCall {
 	c := &ResourceRecordSetsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -4741,25 +5200,32 @@
 	return c
 }
 
-// MaxResults sets the optional parameter "maxResults":
+// MaxResults sets the optional parameter "maxResults": Maximum number
+// of results to be returned. If unspecified, the server will decide how
+// many results to return.
 func (c *ResourceRecordSetsListCall) MaxResults(maxResults int64) *ResourceRecordSetsListCall {
 	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 	return c
 }
 
-// Name sets the optional parameter "name":
+// Name sets the optional parameter "name": Restricts the list to return
+// only records with this fully qualified domain name.
 func (c *ResourceRecordSetsListCall) Name(name string) *ResourceRecordSetsListCall {
 	c.urlParams_.Set("name", name)
 	return c
 }
 
-// PageToken sets the optional parameter "pageToken":
+// PageToken sets the optional parameter "pageToken": A tag returned by
+// a previous list request that was truncated. Use this parameter to
+// continue a previous list request.
 func (c *ResourceRecordSetsListCall) PageToken(pageToken string) *ResourceRecordSetsListCall {
 	c.urlParams_.Set("pageToken", pageToken)
 	return c
 }
 
-// Type sets the optional parameter "type":
+// Type sets the optional parameter "type": Restricts the list to return
+// only records of this type. If present, the "name" parameter must also
+// be present.
 func (c *ResourceRecordSetsListCall) Type(type_ string) *ResourceRecordSetsListCall {
 	c.urlParams_.Set("type", type_)
 	return c
@@ -4864,7 +5330,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Enumerate ResourceRecordSets that have been created but not yet deleted.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.resourceRecordSets.list",
 	//   "parameterOrder": [
@@ -4873,29 +5339,35 @@
 	//   ],
 	//   "parameters": {
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "maxResults": {
+	//       "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
 	//       "format": "int32",
 	//       "location": "query",
 	//       "type": "integer"
 	//     },
 	//     "name": {
+	//       "description": "Restricts the list to return only records with this fully qualified domain name.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "pageToken": {
+	//       "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "type": {
+	//       "description": "Restricts the list to return only records of this type. If present, the \"name\" parameter must also be present.",
 	//       "location": "query",
 	//       "type": "string"
 	//     }
diff --git a/dns/v2beta1/dns-api.json b/dns/v2beta1/dns-api.json
index 249bcdf..5a74d9e 100644
--- a/dns/v2beta1/dns-api.json
+++ b/dns/v2beta1/dns-api.json
@@ -23,7 +23,7 @@
   "description": "Configures and serves authoritative DNS records.",
   "discoveryVersion": "v1",
   "documentationLink": "https://developers.google.com/cloud-dns",
-  "etag": "\"J3WqvAcMk4eQjJXvfSI4Yr8VouA/aI3DC0Jiucj0DgH4QXgwPBq4xMc\"",
+  "etag": "\"VPK3KBfpaEgZ16pozGOoMYfKc0U/z1LqFcwLiODb9dqHQykqHkMGJ5A\"",
   "icons": {
     "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png",
     "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png"
@@ -83,7 +83,7 @@
     "changes": {
       "methods": {
         "create": {
-          "description": "",
+          "description": "Atomically update the ResourceRecordSet collection.",
           "httpMethod": "POST",
           "id": "dns.changes.create",
           "parameterOrder": [
@@ -92,15 +92,18 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -119,7 +122,7 @@
           ]
         },
         "get": {
-          "description": "",
+          "description": "Fetch the representation of an existing Change.",
           "httpMethod": "GET",
           "id": "dns.changes.get",
           "parameterOrder": [
@@ -129,20 +132,24 @@
           ],
           "parameters": {
             "changeId": {
+              "description": "The identifier of the requested change, from a previous ResourceRecordSetsChangeResponse.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -160,7 +167,7 @@
           ]
         },
         "list": {
-          "description": "",
+          "description": "Enumerate Changes to a ResourceRecordSet collection.",
           "httpMethod": "GET",
           "id": "dns.changes.list",
           "parameterOrder": [
@@ -169,26 +176,31 @@
           ],
           "parameters": {
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "maxResults": {
+              "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
               "format": "int32",
               "location": "query",
               "type": "integer"
             },
             "pageToken": {
+              "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "sortBy": {
               "default": "CHANGE_SEQUENCE",
+              "description": "Sorting criterion. The only supported value is change sequence.",
               "enum": [
                 "CHANGE_SEQUENCE"
               ],
@@ -199,6 +211,7 @@
               "type": "string"
             },
             "sortOrder": {
+              "description": "Sorting order direction: 'ascending' or 'descending'.",
               "location": "query",
               "type": "string"
             }
@@ -219,7 +232,7 @@
     "dnsKeys": {
       "methods": {
         "get": {
-          "description": "",
+          "description": "Fetch the representation of an existing DnsKey.",
           "httpMethod": "GET",
           "id": "dns.dnsKeys.get",
           "parameterOrder": [
@@ -229,24 +242,29 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "digestType": {
+              "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.",
               "location": "query",
               "type": "string"
             },
             "dnsKeyId": {
+              "description": "The identifier of the requested DnsKey.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -264,7 +282,7 @@
           ]
         },
         "list": {
-          "description": "",
+          "description": "Enumerate DnsKeys to a ResourceRecordSet collection.",
           "httpMethod": "GET",
           "id": "dns.dnsKeys.list",
           "parameterOrder": [
@@ -273,24 +291,29 @@
           ],
           "parameters": {
             "digestType": {
+              "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "maxResults": {
+              "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
               "format": "int32",
               "location": "query",
               "type": "integer"
             },
             "pageToken": {
+              "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -312,7 +335,7 @@
     "managedZoneOperations": {
       "methods": {
         "get": {
-          "description": "",
+          "description": "Fetch the representation of an existing Operation.",
           "httpMethod": "GET",
           "id": "dns.managedZoneOperations.get",
           "parameterOrder": [
@@ -322,20 +345,24 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "operation": {
+              "description": "Identifies the operation addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -353,7 +380,7 @@
           ]
         },
         "list": {
-          "description": "",
+          "description": "Enumerate Operations for the given ManagedZone.",
           "httpMethod": "GET",
           "id": "dns.managedZoneOperations.list",
           "parameterOrder": [
@@ -362,26 +389,31 @@
           ],
           "parameters": {
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "maxResults": {
+              "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
               "format": "int32",
               "location": "query",
               "type": "integer"
             },
             "pageToken": {
+              "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "sortBy": {
               "default": "START_TIME",
+              "description": "Sorting criterion. The only supported values are START_TIME and ID.",
               "enum": [
                 "ID",
                 "START_TIME"
@@ -410,7 +442,7 @@
     "managedZones": {
       "methods": {
         "create": {
-          "description": "",
+          "description": "Create a new ManagedZone.",
           "httpMethod": "POST",
           "id": "dns.managedZones.create",
           "parameterOrder": [
@@ -418,10 +450,12 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -440,7 +474,7 @@
           ]
         },
         "delete": {
-          "description": "",
+          "description": "Delete a previously created ManagedZone.",
           "httpMethod": "DELETE",
           "id": "dns.managedZones.delete",
           "parameterOrder": [
@@ -449,15 +483,18 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -470,7 +507,7 @@
           ]
         },
         "get": {
-          "description": "",
+          "description": "Fetch the representation of an existing ManagedZone.",
           "httpMethod": "GET",
           "id": "dns.managedZones.get",
           "parameterOrder": [
@@ -479,15 +516,18 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -505,7 +545,7 @@
           ]
         },
         "list": {
-          "description": "",
+          "description": "Enumerate ManagedZones that have been created but not yet deleted.",
           "httpMethod": "GET",
           "id": "dns.managedZones.list",
           "parameterOrder": [
@@ -513,19 +553,23 @@
           ],
           "parameters": {
             "dnsName": {
+              "description": "Restricts the list to return only zones with this domain name.",
               "location": "query",
               "type": "string"
             },
             "maxResults": {
+              "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
               "format": "int32",
               "location": "query",
               "type": "integer"
             },
             "pageToken": {
+              "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -543,7 +587,7 @@
           ]
         },
         "patch": {
-          "description": "",
+          "description": "Apply a partial update to an existing ManagedZone.",
           "httpMethod": "PATCH",
           "id": "dns.managedZones.patch",
           "parameterOrder": [
@@ -552,15 +596,18 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -579,7 +626,7 @@
           ]
         },
         "update": {
-          "description": "",
+          "description": "Update an existing ManagedZone.",
           "httpMethod": "PUT",
           "id": "dns.managedZones.update",
           "parameterOrder": [
@@ -588,15 +635,18 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -619,7 +669,7 @@
     "projects": {
       "methods": {
         "get": {
-          "description": "",
+          "description": "Fetch the representation of an existing Project.",
           "httpMethod": "GET",
           "id": "dns.projects.get",
           "parameterOrder": [
@@ -627,10 +677,12 @@
           ],
           "parameters": {
             "clientOperationId": {
+              "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -652,7 +704,7 @@
     "resourceRecordSets": {
       "methods": {
         "list": {
-          "description": "",
+          "description": "Enumerate ResourceRecordSets that have been created but not yet deleted.",
           "httpMethod": "GET",
           "id": "dns.resourceRecordSets.list",
           "parameterOrder": [
@@ -661,29 +713,35 @@
           ],
           "parameters": {
             "managedZone": {
+              "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "maxResults": {
+              "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
               "format": "int32",
               "location": "query",
               "type": "integer"
             },
             "name": {
+              "description": "Restricts the list to return only records with this fully qualified domain name.",
               "location": "query",
               "type": "string"
             },
             "pageToken": {
+              "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
               "location": "query",
               "type": "string"
             },
             "project": {
+              "description": "Identifies the project addressed by this request.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "type": {
+              "description": "Restricts the list to return only records of this type. If present, the \"name\" parameter must also be present.",
               "location": "query",
               "type": "string"
             }
@@ -702,28 +760,33 @@
       }
     }
   },
-  "revision": "20190312",
+  "revision": "20190418",
   "rootUrl": "https://www.googleapis.com/",
   "schemas": {
     "Change": {
+      "description": "A Change represents a set of ResourceRecordSet additions and deletions applied atomically to a ManagedZone. ResourceRecordSets within a ManagedZone are modified by creating a new Change element in the Changes collection. In turn the Changes collection also records the past modifications to the ResourceRecordSets in a ManagedZone. The current state of the ManagedZone is the sum effect of applying all Change elements in the Changes collection in sequence.",
       "id": "Change",
       "properties": {
         "additions": {
+          "description": "Which ResourceRecordSets to add?",
           "items": {
             "$ref": "ResourceRecordSet"
           },
           "type": "array"
         },
         "deletions": {
+          "description": "Which ResourceRecordSets to remove? Must match existing data exactly.",
           "items": {
             "$ref": "ResourceRecordSet"
           },
           "type": "array"
         },
         "id": {
+          "description": "Unique identifier for the resource; defined by the server (output only).",
           "type": "string"
         },
         "isServing": {
+          "description": "If the DNS queries for the zone will be served.",
           "type": "boolean"
         },
         "kind": {
@@ -732,9 +795,11 @@
           "type": "string"
         },
         "startTime": {
+          "description": "The time that this operation was started by the server (output only). This is in RFC3339 text format.",
           "type": "string"
         },
         "status": {
+          "description": "Status of the operation (output only). A status of \"done\" means that the request to update the authoritative servers has been sent, but the servers might not be updated yet.",
           "enum": [
             "DONE",
             "PENDING"
@@ -749,9 +814,11 @@
       "type": "object"
     },
     "ChangesListResponse": {
+      "description": "The response to a request to enumerate Changes to a ResourceRecordSets collection.",
       "id": "ChangesListResponse",
       "properties": {
         "changes": {
+          "description": "The requested changes.",
           "items": {
             "$ref": "Change"
           },
@@ -766,15 +833,18 @@
           "type": "string"
         },
         "nextPageToken": {
+          "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a \"snapshot\" of collections larger than the maximum page size.",
           "type": "string"
         }
       },
       "type": "object"
     },
     "DnsKey": {
+      "description": "A DNSSEC key pair.",
       "id": "DnsKey",
       "properties": {
         "algorithm": {
+          "description": "String mnemonic specifying the DNSSEC algorithm of this key. Immutable after creation time.",
           "enum": [
             "ECDSAP256SHA256",
             "ECDSAP384SHA384",
@@ -792,28 +862,35 @@
           "type": "string"
         },
         "creationTime": {
+          "description": "The time that this resource was created in the control plane. This is in RFC3339 text format. Output only.",
           "type": "string"
         },
         "description": {
+          "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the resource's function.",
           "type": "string"
         },
         "digests": {
+          "description": "Cryptographic hashes of the DNSKEY resource record associated with this DnsKey. These digests are needed to construct a DS record that points at this DNS key. Output only.",
           "items": {
             "$ref": "DnsKeyDigest"
           },
           "type": "array"
         },
         "id": {
+          "description": "Unique identifier for the resource; defined by the server (output only).",
           "type": "string"
         },
         "isActive": {
+          "description": "Active keys will be used to sign subsequent changes to the ManagedZone. Inactive keys will still be present as DNSKEY Resource Records for the use of resolvers validating existing signatures.",
           "type": "boolean"
         },
         "keyLength": {
+          "description": "Length of the key in bits. Specified at creation time then immutable.",
           "format": "uint32",
           "type": "integer"
         },
         "keyTag": {
+          "description": "The key tag is a non-cryptographic hash of the a DNSKEY resource record associated with this DnsKey. The key tag can be used to identify a DNSKEY more quickly (but it is not a unique identifier). In particular, the key tag is used in a parent zone's DS record to point at the DNSKEY in this child ManagedZone. The key tag is a number in the range [0, 65535] and the algorithm to calculate it is specified in RFC4034 Appendix B. Output only.",
           "format": "int32",
           "type": "integer"
         },
@@ -823,9 +900,11 @@
           "type": "string"
         },
         "publicKey": {
+          "description": "Base64 encoded public half of this key. Output only.",
           "type": "string"
         },
         "type": {
+          "description": "One of \"KEY_SIGNING\" or \"ZONE_SIGNING\". Keys of type KEY_SIGNING have the Secure Entry Point flag set and, when active, will be used to sign only resource record sets of type DNSKEY. Otherwise, the Secure Entry Point flag will be cleared and this key will be used to sign only resource record sets of other types. Immutable after creation time.",
           "enum": [
             "KEY_SIGNING",
             "ZONE_SIGNING"
@@ -843,9 +922,11 @@
       "id": "DnsKeyDigest",
       "properties": {
         "digest": {
+          "description": "The base-16 encoded bytes of this digest. Suitable for use in a DS resource record.",
           "type": "string"
         },
         "type": {
+          "description": "Specifies the algorithm used to calculate this digest.",
           "enum": [
             "SHA1",
             "SHA256",
@@ -862,9 +943,11 @@
       "type": "object"
     },
     "DnsKeySpec": {
+      "description": "Parameters for DnsKey key generation. Used for generating initial keys for a new ManagedZone and as default when adding a new DnsKey.",
       "id": "DnsKeySpec",
       "properties": {
         "algorithm": {
+          "description": "String mnemonic specifying the DNSSEC algorithm of this key.",
           "enum": [
             "ECDSAP256SHA256",
             "ECDSAP384SHA384",
@@ -882,10 +965,12 @@
           "type": "string"
         },
         "keyLength": {
+          "description": "Length of the keys in bits.",
           "format": "uint32",
           "type": "integer"
         },
         "keyType": {
+          "description": "Specifies whether this is a key signing key (KSK) or a zone signing key (ZSK). Key signing keys have the Secure Entry Point flag set and, when active, will only be used to sign resource record sets of type DNSKEY. Zone signing keys do not have the Secure Entry Point flag set and will be used to sign all other types of resource record sets.",
           "enum": [
             "KEY_SIGNING",
             "ZONE_SIGNING"
@@ -905,9 +990,11 @@
       "type": "object"
     },
     "DnsKeysListResponse": {
+      "description": "The response to a request to enumerate DnsKeys in a ManagedZone.",
       "id": "DnsKeysListResponse",
       "properties": {
         "dnsKeys": {
+          "description": "The requested resources.",
           "items": {
             "$ref": "DnsKey"
           },
@@ -922,27 +1009,34 @@
           "type": "string"
         },
         "nextPageToken": {
+          "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a \"snapshot\" of collections larger than the maximum page size.",
           "type": "string"
         }
       },
       "type": "object"
     },
     "ManagedZone": {
+      "description": "A zone is a subtree of the DNS namespace under one administrative responsibility. A ManagedZone is a resource that represents a DNS zone hosted by the Cloud DNS service.",
       "id": "ManagedZone",
       "properties": {
         "creationTime": {
+          "description": "The time that this resource was created on the server. This is in RFC3339 text format. Output only.",
           "type": "string"
         },
         "description": {
+          "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the managed zone's function.",
           "type": "string"
         },
         "dnsName": {
+          "description": "The DNS name of this managed zone, for instance \"example.com.\".",
           "type": "string"
         },
         "dnssecConfig": {
-          "$ref": "ManagedZoneDnsSecConfig"
+          "$ref": "ManagedZoneDnsSecConfig",
+          "description": "DNSSEC configuration."
         },
         "id": {
+          "description": "Unique identifier for the resource; defined by the server (output only)",
           "format": "uint64",
           "type": "string"
         },
@@ -955,24 +1049,30 @@
           "additionalProperties": {
             "type": "string"
           },
+          "description": "User labels.",
           "type": "object"
         },
         "name": {
+          "description": "User assigned name for this resource. Must be unique within the project. The name must be 1-63 characters long, must begin with a letter, end with a letter or digit, and only contain lowercase letters, digits or dashes.",
           "type": "string"
         },
         "nameServerSet": {
+          "description": "Optionally specifies the NameServerSet for this ManagedZone. A NameServerSet is a set of DNS name servers that all host the same ManagedZones. Most users will leave this field unset.",
           "type": "string"
         },
         "nameServers": {
+          "description": "Delegate your managed_zone to these virtual name servers; defined by the server (output only)",
           "items": {
             "type": "string"
           },
           "type": "array"
         },
         "privateVisibilityConfig": {
-          "$ref": "ManagedZonePrivateVisibilityConfig"
+          "$ref": "ManagedZonePrivateVisibilityConfig",
+          "description": "For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from."
         },
         "visibility": {
+          "description": "The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources.",
           "enum": [
             "PRIVATE",
             "PUBLIC"
@@ -990,6 +1090,7 @@
       "id": "ManagedZoneDnsSecConfig",
       "properties": {
         "defaultKeySpecs": {
+          "description": "Specifies parameters that will be used for generating initial DnsKeys for this ManagedZone. Output only while state is not OFF.",
           "items": {
             "$ref": "DnsKeySpec"
           },
@@ -1001,6 +1102,7 @@
           "type": "string"
         },
         "nonExistence": {
+          "description": "Specifies the mechanism used to provide authenticated denial-of-existence responses. Output only while state is not OFF.",
           "enum": [
             "NSEC",
             "NSEC3"
@@ -1012,6 +1114,7 @@
           "type": "string"
         },
         "state": {
+          "description": "Specifies whether DNSSEC is enabled, and what mode it is in.",
           "enum": [
             "OFF",
             "ON",
@@ -1039,9 +1142,11 @@
           "type": "string"
         },
         "nextPageToken": {
+          "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your page token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size.",
           "type": "string"
         },
         "operations": {
+          "description": "The operation resources.",
           "items": {
             "$ref": "Operation"
           },
@@ -1059,6 +1164,7 @@
           "type": "string"
         },
         "networks": {
+          "description": "The list of VPC networks that can see this zone.",
           "items": {
             "$ref": "ManagedZonePrivateVisibilityConfigNetwork"
           },
@@ -1076,6 +1182,7 @@
           "type": "string"
         },
         "networkUrl": {
+          "description": "The fully qualified URL of the VPC network to bind to. This should be formatted like https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}",
           "type": "string"
         }
       },
@@ -1093,24 +1200,29 @@
           "type": "string"
         },
         "managedZones": {
+          "description": "The managed zone resources.",
           "items": {
             "$ref": "ManagedZone"
           },
           "type": "array"
         },
         "nextPageToken": {
+          "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your page token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size.",
           "type": "string"
         }
       },
       "type": "object"
     },
     "Operation": {
+      "description": "An operation represents a successful mutation performed on a Cloud DNS resource. Operations provide: - An audit log of server resource mutations. - A way to recover/retry API calls in the case where the response is never received by the caller. Use the caller specified client_operation_id.",
       "id": "Operation",
       "properties": {
         "dnsKeyContext": {
-          "$ref": "OperationDnsKeyContext"
+          "$ref": "OperationDnsKeyContext",
+          "description": "Only populated if the operation targeted a DnsKey (output only)."
         },
         "id": {
+          "description": "Unique identifier for the resource. This is the client_operation_id if the client specified it when the mutation was initiated, otherwise, it is generated by the server. The name must be 1-63 characters long and match the regular expression [-a-z0-9]? (output only)",
           "type": "string"
         },
         "kind": {
@@ -1119,9 +1231,11 @@
           "type": "string"
         },
         "startTime": {
+          "description": "The time that this operation was started by the server. This is in RFC3339 text format (output only).",
           "type": "string"
         },
         "status": {
+          "description": "Status of the operation. Can be one of the following: \"PENDING\" or \"DONE\" (output only). A status of \"DONE\" means that the request to update the authoritative servers has been sent, but the servers might not be updated yet.",
           "enum": [
             "DONE",
             "PENDING"
@@ -1133,13 +1247,16 @@
           "type": "string"
         },
         "type": {
+          "description": "Type of the operation. Operations include insert, update, and delete (output only).",
           "type": "string"
         },
         "user": {
+          "description": "User who requested the operation, for example: user@example.com. cloud-dns-system for operations automatically done by the system. (output only)",
           "type": "string"
         },
         "zoneContext": {
-          "$ref": "OperationManagedZoneContext"
+          "$ref": "OperationManagedZoneContext",
+          "description": "Only populated if the operation targeted a ManagedZone (output only)."
         }
       },
       "type": "object"
@@ -1148,10 +1265,12 @@
       "id": "OperationDnsKeyContext",
       "properties": {
         "newValue": {
-          "$ref": "DnsKey"
+          "$ref": "DnsKey",
+          "description": "The post-operation DnsKey resource."
         },
         "oldValue": {
-          "$ref": "DnsKey"
+          "$ref": "DnsKey",
+          "description": "The pre-operation DnsKey resource."
         }
       },
       "type": "object"
@@ -1160,18 +1279,22 @@
       "id": "OperationManagedZoneContext",
       "properties": {
         "newValue": {
-          "$ref": "ManagedZone"
+          "$ref": "ManagedZone",
+          "description": "The post-operation ManagedZone resource."
         },
         "oldValue": {
-          "$ref": "ManagedZone"
+          "$ref": "ManagedZone",
+          "description": "The pre-operation ManagedZone resource."
         }
       },
       "type": "object"
     },
     "Project": {
+      "description": "A project resource. The project is a top level container for resources including Cloud DNS ManagedZones. Projects can be created only in the APIs console.",
       "id": "Project",
       "properties": {
         "id": {
+          "description": "User assigned unique identifier for the resource (output only).",
           "type": "string"
         },
         "kind": {
@@ -1180,19 +1303,23 @@
           "type": "string"
         },
         "number": {
+          "description": "Unique numeric identifier for the resource; defined by the server (output only).",
           "format": "uint64",
           "type": "string"
         },
         "quota": {
-          "$ref": "Quota"
+          "$ref": "Quota",
+          "description": "Quotas assigned to this project (output only)."
         }
       },
       "type": "object"
     },
     "Quota": {
+      "description": "Limits associated with a Project.",
       "id": "Quota",
       "properties": {
         "dnsKeysPerManagedZone": {
+          "description": "Maximum allowed number of DnsKeys per ManagedZone.",
           "format": "int32",
           "type": "integer"
         },
@@ -1202,38 +1329,47 @@
           "type": "string"
         },
         "managedZones": {
+          "description": "Maximum allowed number of managed zones in the project.",
           "format": "int32",
           "type": "integer"
         },
         "managedZonesPerNetwork": {
+          "description": "Maximum allowed number of managed zones which can be attached to a network.",
           "format": "int32",
           "type": "integer"
         },
         "networksPerManagedZone": {
+          "description": "Maximum allowed number of networks to which a privately scoped zone can be attached.",
           "format": "int32",
           "type": "integer"
         },
         "resourceRecordsPerRrset": {
+          "description": "Maximum allowed number of ResourceRecords per ResourceRecordSet.",
           "format": "int32",
           "type": "integer"
         },
         "rrsetAdditionsPerChange": {
+          "description": "Maximum allowed number of ResourceRecordSets to add per ChangesCreateRequest.",
           "format": "int32",
           "type": "integer"
         },
         "rrsetDeletionsPerChange": {
+          "description": "Maximum allowed number of ResourceRecordSets to delete per ChangesCreateRequest.",
           "format": "int32",
           "type": "integer"
         },
         "rrsetsPerManagedZone": {
+          "description": "Maximum allowed number of ResourceRecordSets per zone in the project.",
           "format": "int32",
           "type": "integer"
         },
         "totalRrdataSizePerChange": {
+          "description": "Maximum allowed size for total rrdata in one ChangesCreateRequest in bytes.",
           "format": "int32",
           "type": "integer"
         },
         "whitelistedKeySpecs": {
+          "description": "DNSSEC algorithm and key length types that can be used for DnsKeys.",
           "items": {
             "$ref": "DnsKeySpec"
           },
@@ -1243,6 +1379,7 @@
       "type": "object"
     },
     "ResourceRecordSet": {
+      "description": "A unit of data that will be returned by the DNS servers.",
       "id": "ResourceRecordSet",
       "properties": {
         "kind": {
@@ -1251,25 +1388,30 @@
           "type": "string"
         },
         "name": {
+          "description": "For example, www.example.com.",
           "type": "string"
         },
         "rrdatas": {
+          "description": "As defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1) -- see examples.",
           "items": {
             "type": "string"
           },
           "type": "array"
         },
         "signatureRrdatas": {
+          "description": "As defined in RFC 4034 (section 3.2).",
           "items": {
             "type": "string"
           },
           "type": "array"
         },
         "ttl": {
+          "description": "Number of seconds that this ResourceRecordSet can be cached by resolvers.",
           "format": "int32",
           "type": "integer"
         },
         "type": {
+          "description": "The identifier of a supported record type. See the list of Supported DNS record types.",
           "type": "string"
         }
       },
@@ -1287,9 +1429,11 @@
           "type": "string"
         },
         "nextPageToken": {
+          "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size.",
           "type": "string"
         },
         "rrsets": {
+          "description": "The resource record set resources.",
           "items": {
             "$ref": "ResourceRecordSet"
           },
@@ -1299,9 +1443,11 @@
       "type": "object"
     },
     "ResponseHeader": {
+      "description": "Elements common to every response.",
       "id": "ResponseHeader",
       "properties": {
         "operationId": {
+          "description": "For mutating operation requests that completed successfully. This is the client_operation_id if the client specified it, otherwise it is generated by the server (output only).",
           "type": "string"
         }
       },
diff --git a/dns/v2beta1/dns-gen.go b/dns/v2beta1/dns-gen.go
index 61944bf..dd9fe2f 100644
--- a/dns/v2beta1/dns-gen.go
+++ b/dns/v2beta1/dns-gen.go
@@ -215,21 +215,40 @@
 	s *Service
 }
 
+// Change: A Change represents a set of ResourceRecordSet additions and
+// deletions applied atomically to a ManagedZone. ResourceRecordSets
+// within a ManagedZone are modified by creating a new Change element in
+// the Changes collection. In turn the Changes collection also records
+// the past modifications to the ResourceRecordSets in a ManagedZone.
+// The current state of the ManagedZone is the sum effect of applying
+// all Change elements in the Changes collection in sequence.
 type Change struct {
+	// Additions: Which ResourceRecordSets to add?
 	Additions []*ResourceRecordSet `json:"additions,omitempty"`
 
+	// Deletions: Which ResourceRecordSets to remove? Must match existing
+	// data exactly.
 	Deletions []*ResourceRecordSet `json:"deletions,omitempty"`
 
+	// Id: Unique identifier for the resource; defined by the server (output
+	// only).
 	Id string `json:"id,omitempty"`
 
+	// IsServing: If the DNS queries for the zone will be served.
 	IsServing bool `json:"isServing,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#change".
 	Kind string `json:"kind,omitempty"`
 
+	// StartTime: The time that this operation was started by the server
+	// (output only). This is in RFC3339 text format.
 	StartTime string `json:"startTime,omitempty"`
 
+	// Status: Status of the operation (output only). A status of "done"
+	// means that the request to update the authoritative servers has been
+	// sent, but the servers might not be updated yet.
+	//
 	// Possible values:
 	//   "DONE"
 	//   "PENDING"
@@ -262,7 +281,10 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// ChangesListResponse: The response to a request to enumerate Changes
+// to a ResourceRecordSets collection.
 type ChangesListResponse struct {
+	// Changes: The requested changes.
 	Changes []*Change `json:"changes,omitempty"`
 
 	Header *ResponseHeader `json:"header,omitempty"`
@@ -270,6 +292,17 @@
 	// Kind: Type of resource.
 	Kind string `json:"kind,omitempty"`
 
+	// NextPageToken: The presence of this field indicates that there exist
+	// more results following your last page of results in pagination order.
+	// To fetch them, make another list request using this value as your
+	// pagination token.
+	//
+	// In this way you can retrieve the complete contents of even very large
+	// collections one page at a time. However, if the contents of the
+	// collection change between the first and last paginated list request,
+	// the set of all elements returned will be an inconsistent view of the
+	// collection. There is no way to retrieve a "snapshot" of collections
+	// larger than the maximum page size.
 	NextPageToken string `json:"nextPageToken,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -299,7 +332,11 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// DnsKey: A DNSSEC key pair.
 type DnsKey struct {
+	// Algorithm: String mnemonic specifying the DNSSEC algorithm of this
+	// key. Immutable after creation time.
+	//
 	// Possible values:
 	//   "ECDSAP256SHA256"
 	//   "ECDSAP384SHA384"
@@ -308,26 +345,56 @@
 	//   "RSASHA512"
 	Algorithm string `json:"algorithm,omitempty"`
 
+	// CreationTime: The time that this resource was created in the control
+	// plane. This is in RFC3339 text format. Output only.
 	CreationTime string `json:"creationTime,omitempty"`
 
+	// Description: A mutable string of at most 1024 characters associated
+	// with this resource for the user's convenience. Has no effect on the
+	// resource's function.
 	Description string `json:"description,omitempty"`
 
+	// Digests: Cryptographic hashes of the DNSKEY resource record
+	// associated with this DnsKey. These digests are needed to construct a
+	// DS record that points at this DNS key. Output only.
 	Digests []*DnsKeyDigest `json:"digests,omitempty"`
 
+	// Id: Unique identifier for the resource; defined by the server (output
+	// only).
 	Id string `json:"id,omitempty"`
 
+	// IsActive: Active keys will be used to sign subsequent changes to the
+	// ManagedZone. Inactive keys will still be present as DNSKEY Resource
+	// Records for the use of resolvers validating existing signatures.
 	IsActive bool `json:"isActive,omitempty"`
 
+	// KeyLength: Length of the key in bits. Specified at creation time then
+	// immutable.
 	KeyLength int64 `json:"keyLength,omitempty"`
 
+	// KeyTag: The key tag is a non-cryptographic hash of the a DNSKEY
+	// resource record associated with this DnsKey. The key tag can be used
+	// to identify a DNSKEY more quickly (but it is not a unique
+	// identifier). In particular, the key tag is used in a parent zone's DS
+	// record to point at the DNSKEY in this child ManagedZone. The key tag
+	// is a number in the range [0, 65535] and the algorithm to calculate it
+	// is specified in RFC4034 Appendix B. Output only.
 	KeyTag int64 `json:"keyTag,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#dnsKey".
 	Kind string `json:"kind,omitempty"`
 
+	// PublicKey: Base64 encoded public half of this key. Output only.
 	PublicKey string `json:"publicKey,omitempty"`
 
+	// Type: One of "KEY_SIGNING" or "ZONE_SIGNING". Keys of type
+	// KEY_SIGNING have the Secure Entry Point flag set and, when active,
+	// will be used to sign only resource record sets of type DNSKEY.
+	// Otherwise, the Secure Entry Point flag will be cleared and this key
+	// will be used to sign only resource record sets of other types.
+	// Immutable after creation time.
+	//
 	// Possible values:
 	//   "KEY_SIGNING"
 	//   "ZONE_SIGNING"
@@ -361,8 +428,12 @@
 }
 
 type DnsKeyDigest struct {
+	// Digest: The base-16 encoded bytes of this digest. Suitable for use in
+	// a DS resource record.
 	Digest string `json:"digest,omitempty"`
 
+	// Type: Specifies the algorithm used to calculate this digest.
+	//
 	// Possible values:
 	//   "SHA1"
 	//   "SHA256"
@@ -392,7 +463,13 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// DnsKeySpec: Parameters for DnsKey key generation. Used for generating
+// initial keys for a new ManagedZone and as default when adding a new
+// DnsKey.
 type DnsKeySpec struct {
+	// Algorithm: String mnemonic specifying the DNSSEC algorithm of this
+	// key.
+	//
 	// Possible values:
 	//   "ECDSAP256SHA256"
 	//   "ECDSAP384SHA384"
@@ -401,8 +478,16 @@
 	//   "RSASHA512"
 	Algorithm string `json:"algorithm,omitempty"`
 
+	// KeyLength: Length of the keys in bits.
 	KeyLength int64 `json:"keyLength,omitempty"`
 
+	// KeyType: Specifies whether this is a key signing key (KSK) or a zone
+	// signing key (ZSK). Key signing keys have the Secure Entry Point flag
+	// set and, when active, will only be used to sign resource record sets
+	// of type DNSKEY. Zone signing keys do not have the Secure Entry Point
+	// flag set and will be used to sign all other types of resource record
+	// sets.
+	//
 	// Possible values:
 	//   "KEY_SIGNING"
 	//   "ZONE_SIGNING"
@@ -435,7 +520,10 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// DnsKeysListResponse: The response to a request to enumerate DnsKeys
+// in a ManagedZone.
 type DnsKeysListResponse struct {
+	// DnsKeys: The requested resources.
 	DnsKeys []*DnsKey `json:"dnsKeys,omitempty"`
 
 	Header *ResponseHeader `json:"header,omitempty"`
@@ -443,6 +531,17 @@
 	// Kind: Type of resource.
 	Kind string `json:"kind,omitempty"`
 
+	// NextPageToken: The presence of this field indicates that there exist
+	// more results following your last page of results in pagination order.
+	// To fetch them, make another list request using this value as your
+	// pagination token.
+	//
+	// In this way you can retrieve the complete contents of even very large
+	// collections one page at a time. However, if the contents of the
+	// collection change between the first and last paginated list request,
+	// the set of all elements returned will be an inconsistent view of the
+	// collection. There is no way to retrieve a "snapshot" of collections
+	// larger than the maximum page size.
 	NextPageToken string `json:"nextPageToken,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -472,31 +571,60 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// ManagedZone: A zone is a subtree of the DNS namespace under one
+// administrative responsibility. A ManagedZone is a resource that
+// represents a DNS zone hosted by the Cloud DNS service.
 type ManagedZone struct {
+	// CreationTime: The time that this resource was created on the server.
+	// This is in RFC3339 text format. Output only.
 	CreationTime string `json:"creationTime,omitempty"`
 
+	// Description: A mutable string of at most 1024 characters associated
+	// with this resource for the user's convenience. Has no effect on the
+	// managed zone's function.
 	Description string `json:"description,omitempty"`
 
+	// DnsName: The DNS name of this managed zone, for instance
+	// "example.com.".
 	DnsName string `json:"dnsName,omitempty"`
 
+	// DnssecConfig: DNSSEC configuration.
 	DnssecConfig *ManagedZoneDnsSecConfig `json:"dnssecConfig,omitempty"`
 
+	// Id: Unique identifier for the resource; defined by the server (output
+	// only)
 	Id uint64 `json:"id,omitempty,string"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#managedZone".
 	Kind string `json:"kind,omitempty"`
 
+	// Labels: User labels.
 	Labels map[string]string `json:"labels,omitempty"`
 
+	// Name: User assigned name for this resource. Must be unique within the
+	// project. The name must be 1-63 characters long, must begin with a
+	// letter, end with a letter or digit, and only contain lowercase
+	// letters, digits or dashes.
 	Name string `json:"name,omitempty"`
 
+	// NameServerSet: Optionally specifies the NameServerSet for this
+	// ManagedZone. A NameServerSet is a set of DNS name servers that all
+	// host the same ManagedZones. Most users will leave this field unset.
 	NameServerSet string `json:"nameServerSet,omitempty"`
 
+	// NameServers: Delegate your managed_zone to these virtual name
+	// servers; defined by the server (output only)
 	NameServers []string `json:"nameServers,omitempty"`
 
+	// PrivateVisibilityConfig: For privately visible zones, the set of
+	// Virtual Private Cloud resources that the zone is visible from.
 	PrivateVisibilityConfig *ManagedZonePrivateVisibilityConfig `json:"privateVisibilityConfig,omitempty"`
 
+	// Visibility: The zone's visibility: public zones are exposed to the
+	// Internet, while private zones are visible only to Virtual Private
+	// Cloud resources.
+	//
 	// Possible values:
 	//   "PRIVATE"
 	//   "PUBLIC"
@@ -530,17 +658,25 @@
 }
 
 type ManagedZoneDnsSecConfig struct {
+	// DefaultKeySpecs: Specifies parameters that will be used for
+	// generating initial DnsKeys for this ManagedZone. Output only while
+	// state is not OFF.
 	DefaultKeySpecs []*DnsKeySpec `json:"defaultKeySpecs,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#managedZoneDnsSecConfig".
 	Kind string `json:"kind,omitempty"`
 
+	// NonExistence: Specifies the mechanism used to provide authenticated
+	// denial-of-existence responses. Output only while state is not OFF.
+	//
 	// Possible values:
 	//   "NSEC"
 	//   "NSEC3"
 	NonExistence string `json:"nonExistence,omitempty"`
 
+	// State: Specifies whether DNSSEC is enabled, and what mode it is in.
+	//
 	// Possible values:
 	//   "OFF"
 	//   "ON"
@@ -577,8 +713,20 @@
 	// Kind: Type of resource.
 	Kind string `json:"kind,omitempty"`
 
+	// NextPageToken: The presence of this field indicates that there exist
+	// more results following your last page of results in pagination order.
+	// To fetch them, make another list request using this value as your
+	// page token.
+	//
+	// In this way you can retrieve the complete contents of even very large
+	// collections one page at a time. However, if the contents of the
+	// collection change between the first and last paginated list request,
+	// the set of all elements returned will be an inconsistent view of the
+	// collection. There is no way to retrieve a consistent snapshot of a
+	// collection larger than the maximum page size.
 	NextPageToken string `json:"nextPageToken,omitempty"`
 
+	// Operations: The operation resources.
 	Operations []*Operation `json:"operations,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -613,6 +761,7 @@
 	// string "dns#managedZonePrivateVisibilityConfig".
 	Kind string `json:"kind,omitempty"`
 
+	// Networks: The list of VPC networks that can see this zone.
 	Networks []*ManagedZonePrivateVisibilityConfigNetwork `json:"networks,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "Kind") to
@@ -643,6 +792,9 @@
 	// string "dns#managedZonePrivateVisibilityConfigNetwork".
 	Kind string `json:"kind,omitempty"`
 
+	// NetworkUrl: The fully qualified URL of the VPC network to bind to.
+	// This should be formatted like
+	// https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}
 	NetworkUrl string `json:"networkUrl,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "Kind") to
@@ -674,8 +826,20 @@
 	// Kind: Type of resource.
 	Kind string `json:"kind,omitempty"`
 
+	// ManagedZones: The managed zone resources.
 	ManagedZones []*ManagedZone `json:"managedZones,omitempty"`
 
+	// NextPageToken: The presence of this field indicates that there exist
+	// more results following your last page of results in pagination order.
+	// To fetch them, make another list request using this value as your
+	// page token.
+	//
+	// In this way you can retrieve the complete contents of even very large
+	// collections one page at a time. However, if the contents of the
+	// collection change between the first and last paginated list request,
+	// the set of all elements returned will be an inconsistent view of the
+	// collection. There is no way to retrieve a consistent snapshot of a
+	// collection larger than the maximum page size.
 	NextPageToken string `json:"nextPageToken,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -705,26 +869,52 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// Operation: An operation represents a successful mutation performed on
+// a Cloud DNS resource. Operations provide: - An audit log of server
+// resource mutations. - A way to recover/retry API calls in the case
+// where the response is never received by the caller. Use the caller
+// specified client_operation_id.
 type Operation struct {
+	// DnsKeyContext: Only populated if the operation targeted a DnsKey
+	// (output only).
 	DnsKeyContext *OperationDnsKeyContext `json:"dnsKeyContext,omitempty"`
 
+	// Id: Unique identifier for the resource. This is the
+	// client_operation_id if the client specified it when the mutation was
+	// initiated, otherwise, it is generated by the server. The name must be
+	// 1-63 characters long and match the regular expression [-a-z0-9]?
+	// (output only)
 	Id string `json:"id,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#operation".
 	Kind string `json:"kind,omitempty"`
 
+	// StartTime: The time that this operation was started by the server.
+	// This is in RFC3339 text format (output only).
 	StartTime string `json:"startTime,omitempty"`
 
+	// Status: Status of the operation. Can be one of the following:
+	// "PENDING" or "DONE" (output only). A status of "DONE" means that the
+	// request to update the authoritative servers has been sent, but the
+	// servers might not be updated yet.
+	//
 	// Possible values:
 	//   "DONE"
 	//   "PENDING"
 	Status string `json:"status,omitempty"`
 
+	// Type: Type of the operation. Operations include insert, update, and
+	// delete (output only).
 	Type string `json:"type,omitempty"`
 
+	// User: User who requested the operation, for example:
+	// user@example.com. cloud-dns-system for operations automatically done
+	// by the system. (output only)
 	User string `json:"user,omitempty"`
 
+	// ZoneContext: Only populated if the operation targeted a ManagedZone
+	// (output only).
 	ZoneContext *OperationManagedZoneContext `json:"zoneContext,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -755,8 +945,10 @@
 }
 
 type OperationDnsKeyContext struct {
+	// NewValue: The post-operation DnsKey resource.
 	NewValue *DnsKey `json:"newValue,omitempty"`
 
+	// OldValue: The pre-operation DnsKey resource.
 	OldValue *DnsKey `json:"oldValue,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "NewValue") to
@@ -783,8 +975,10 @@
 }
 
 type OperationManagedZoneContext struct {
+	// NewValue: The post-operation ManagedZone resource.
 	NewValue *ManagedZone `json:"newValue,omitempty"`
 
+	// OldValue: The pre-operation ManagedZone resource.
 	OldValue *ManagedZone `json:"oldValue,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "NewValue") to
@@ -810,15 +1004,22 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// Project: A project resource. The project is a top level container for
+// resources including Cloud DNS ManagedZones. Projects can be created
+// only in the APIs console.
 type Project struct {
+	// Id: User assigned unique identifier for the resource (output only).
 	Id string `json:"id,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#project".
 	Kind string `json:"kind,omitempty"`
 
+	// Number: Unique numeric identifier for the resource; defined by the
+	// server (output only).
 	Number uint64 `json:"number,omitempty,string"`
 
+	// Quota: Quotas assigned to this project (output only).
 	Quota *Quota `json:"quota,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -848,29 +1049,49 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// Quota: Limits associated with a Project.
 type Quota struct {
+	// DnsKeysPerManagedZone: Maximum allowed number of DnsKeys per
+	// ManagedZone.
 	DnsKeysPerManagedZone int64 `json:"dnsKeysPerManagedZone,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#quota".
 	Kind string `json:"kind,omitempty"`
 
+	// ManagedZones: Maximum allowed number of managed zones in the project.
 	ManagedZones int64 `json:"managedZones,omitempty"`
 
+	// ManagedZonesPerNetwork: Maximum allowed number of managed zones which
+	// can be attached to a network.
 	ManagedZonesPerNetwork int64 `json:"managedZonesPerNetwork,omitempty"`
 
+	// NetworksPerManagedZone: Maximum allowed number of networks to which a
+	// privately scoped zone can be attached.
 	NetworksPerManagedZone int64 `json:"networksPerManagedZone,omitempty"`
 
+	// ResourceRecordsPerRrset: Maximum allowed number of ResourceRecords
+	// per ResourceRecordSet.
 	ResourceRecordsPerRrset int64 `json:"resourceRecordsPerRrset,omitempty"`
 
+	// RrsetAdditionsPerChange: Maximum allowed number of ResourceRecordSets
+	// to add per ChangesCreateRequest.
 	RrsetAdditionsPerChange int64 `json:"rrsetAdditionsPerChange,omitempty"`
 
+	// RrsetDeletionsPerChange: Maximum allowed number of ResourceRecordSets
+	// to delete per ChangesCreateRequest.
 	RrsetDeletionsPerChange int64 `json:"rrsetDeletionsPerChange,omitempty"`
 
+	// RrsetsPerManagedZone: Maximum allowed number of ResourceRecordSets
+	// per zone in the project.
 	RrsetsPerManagedZone int64 `json:"rrsetsPerManagedZone,omitempty"`
 
+	// TotalRrdataSizePerChange: Maximum allowed size for total rrdata in
+	// one ChangesCreateRequest in bytes.
 	TotalRrdataSizePerChange int64 `json:"totalRrdataSizePerChange,omitempty"`
 
+	// WhitelistedKeySpecs: DNSSEC algorithm and key length types that can
+	// be used for DnsKeys.
 	WhitelistedKeySpecs []*DnsKeySpec `json:"whitelistedKeySpecs,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g.
@@ -898,19 +1119,29 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// ResourceRecordSet: A unit of data that will be returned by the DNS
+// servers.
 type ResourceRecordSet struct {
 	// Kind: Identifies what kind of resource this is. Value: the fixed
 	// string "dns#resourceRecordSet".
 	Kind string `json:"kind,omitempty"`
 
+	// Name: For example, www.example.com.
 	Name string `json:"name,omitempty"`
 
+	// Rrdatas: As defined in RFC 1035 (section 5) and RFC 1034 (section
+	// 3.6.1) -- see examples.
 	Rrdatas []string `json:"rrdatas,omitempty"`
 
+	// SignatureRrdatas: As defined in RFC 4034 (section 3.2).
 	SignatureRrdatas []string `json:"signatureRrdatas,omitempty"`
 
+	// Ttl: Number of seconds that this ResourceRecordSet can be cached by
+	// resolvers.
 	Ttl int64 `json:"ttl,omitempty"`
 
+	// Type: The identifier of a supported record type. See the list of
+	// Supported DNS record types.
 	Type string `json:"type,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "Kind") to
@@ -942,8 +1173,20 @@
 	// Kind: Type of resource.
 	Kind string `json:"kind,omitempty"`
 
+	// NextPageToken: The presence of this field indicates that there exist
+	// more results following your last page of results in pagination order.
+	// To fetch them, make another list request using this value as your
+	// pagination token.
+	//
+	// In this way you can retrieve the complete contents of even very large
+	// collections one page at a time. However, if the contents of the
+	// collection change between the first and last paginated list request,
+	// the set of all elements returned will be an inconsistent view of the
+	// collection. There is no way to retrieve a consistent snapshot of a
+	// collection larger than the maximum page size.
 	NextPageToken string `json:"nextPageToken,omitempty"`
 
+	// Rrsets: The resource record set resources.
 	Rrsets []*ResourceRecordSet `json:"rrsets,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -973,7 +1216,11 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// ResponseHeader: Elements common to every response.
 type ResponseHeader struct {
+	// OperationId: For mutating operation requests that completed
+	// successfully. This is the client_operation_id if the client specified
+	// it, otherwise it is generated by the server (output only).
 	OperationId string `json:"operationId,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "OperationId") to
@@ -1011,7 +1258,7 @@
 	header_     http.Header
 }
 
-// Create:
+// Create: Atomically update the ResourceRecordSet collection.
 func (r *ChangesService) Create(project string, managedZone string, change *Change) *ChangesCreateCall {
 	c := &ChangesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -1021,6 +1268,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ChangesCreateCall) ClientOperationId(clientOperationId string) *ChangesCreateCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -1117,7 +1367,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Atomically update the ResourceRecordSet collection.",
 	//   "httpMethod": "POST",
 	//   "id": "dns.changes.create",
 	//   "parameterOrder": [
@@ -1126,15 +1376,18 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -1168,7 +1421,7 @@
 	header_      http.Header
 }
 
-// Get:
+// Get: Fetch the representation of an existing Change.
 func (r *ChangesService) Get(project string, managedZone string, changeId string) *ChangesGetCall {
 	c := &ChangesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -1178,6 +1431,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ChangesGetCall) ClientOperationId(clientOperationId string) *ChangesGetCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -1283,7 +1539,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Fetch the representation of an existing Change.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.changes.get",
 	//   "parameterOrder": [
@@ -1293,20 +1549,24 @@
 	//   ],
 	//   "parameters": {
 	//     "changeId": {
+	//       "description": "The identifier of the requested change, from a previous ResourceRecordSetsChangeResponse.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -1338,7 +1598,7 @@
 	header_      http.Header
 }
 
-// List:
+// List: Enumerate Changes to a ResourceRecordSet collection.
 func (r *ChangesService) List(project string, managedZone string) *ChangesListCall {
 	c := &ChangesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -1346,19 +1606,24 @@
 	return c
 }
 
-// MaxResults sets the optional parameter "maxResults":
+// MaxResults sets the optional parameter "maxResults": Maximum number
+// of results to be returned. If unspecified, the server will decide how
+// many results to return.
 func (c *ChangesListCall) MaxResults(maxResults int64) *ChangesListCall {
 	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 	return c
 }
 
-// PageToken sets the optional parameter "pageToken":
+// PageToken sets the optional parameter "pageToken": A tag returned by
+// a previous list request that was truncated. Use this parameter to
+// continue a previous list request.
 func (c *ChangesListCall) PageToken(pageToken string) *ChangesListCall {
 	c.urlParams_.Set("pageToken", pageToken)
 	return c
 }
 
-// SortBy sets the optional parameter "sortBy":
+// SortBy sets the optional parameter "sortBy": Sorting criterion. The
+// only supported value is change sequence.
 //
 // Possible values:
 //   "CHANGE_SEQUENCE" (default)
@@ -1367,7 +1632,8 @@
 	return c
 }
 
-// SortOrder sets the optional parameter "sortOrder":
+// SortOrder sets the optional parameter "sortOrder": Sorting order
+// direction: 'ascending' or 'descending'.
 func (c *ChangesListCall) SortOrder(sortOrder string) *ChangesListCall {
 	c.urlParams_.Set("sortOrder", sortOrder)
 	return c
@@ -1472,7 +1738,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Enumerate Changes to a ResourceRecordSet collection.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.changes.list",
 	//   "parameterOrder": [
@@ -1481,26 +1747,31 @@
 	//   ],
 	//   "parameters": {
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "maxResults": {
+	//       "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
 	//       "format": "int32",
 	//       "location": "query",
 	//       "type": "integer"
 	//     },
 	//     "pageToken": {
+	//       "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "sortBy": {
 	//       "default": "CHANGE_SEQUENCE",
+	//       "description": "Sorting criterion. The only supported value is change sequence.",
 	//       "enum": [
 	//         "CHANGE_SEQUENCE"
 	//       ],
@@ -1511,6 +1782,7 @@
 	//       "type": "string"
 	//     },
 	//     "sortOrder": {
+	//       "description": "Sorting order direction: 'ascending' or 'descending'.",
 	//       "location": "query",
 	//       "type": "string"
 	//     }
@@ -1563,7 +1835,7 @@
 	header_      http.Header
 }
 
-// Get:
+// Get: Fetch the representation of an existing DnsKey.
 func (r *DnsKeysService) Get(project string, managedZone string, dnsKeyId string) *DnsKeysGetCall {
 	c := &DnsKeysGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -1573,12 +1845,18 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *DnsKeysGetCall) ClientOperationId(clientOperationId string) *DnsKeysGetCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
 }
 
-// DigestType sets the optional parameter "digestType":
+// DigestType sets the optional parameter "digestType": An optional
+// comma-separated list of digest types to compute and display for key
+// signing keys. If omitted, the recommended digest type will be
+// computed and displayed.
 func (c *DnsKeysGetCall) DigestType(digestType string) *DnsKeysGetCall {
 	c.urlParams_.Set("digestType", digestType)
 	return c
@@ -1684,7 +1962,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Fetch the representation of an existing DnsKey.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.dnsKeys.get",
 	//   "parameterOrder": [
@@ -1694,24 +1972,29 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "digestType": {
+	//       "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "dnsKeyId": {
+	//       "description": "The identifier of the requested DnsKey.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -1743,7 +2026,7 @@
 	header_      http.Header
 }
 
-// List:
+// List: Enumerate DnsKeys to a ResourceRecordSet collection.
 func (r *DnsKeysService) List(project string, managedZone string) *DnsKeysListCall {
 	c := &DnsKeysListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -1751,19 +2034,26 @@
 	return c
 }
 
-// DigestType sets the optional parameter "digestType":
+// DigestType sets the optional parameter "digestType": An optional
+// comma-separated list of digest types to compute and display for key
+// signing keys. If omitted, the recommended digest type will be
+// computed and displayed.
 func (c *DnsKeysListCall) DigestType(digestType string) *DnsKeysListCall {
 	c.urlParams_.Set("digestType", digestType)
 	return c
 }
 
-// MaxResults sets the optional parameter "maxResults":
+// MaxResults sets the optional parameter "maxResults": Maximum number
+// of results to be returned. If unspecified, the server will decide how
+// many results to return.
 func (c *DnsKeysListCall) MaxResults(maxResults int64) *DnsKeysListCall {
 	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 	return c
 }
 
-// PageToken sets the optional parameter "pageToken":
+// PageToken sets the optional parameter "pageToken": A tag returned by
+// a previous list request that was truncated. Use this parameter to
+// continue a previous list request.
 func (c *DnsKeysListCall) PageToken(pageToken string) *DnsKeysListCall {
 	c.urlParams_.Set("pageToken", pageToken)
 	return c
@@ -1868,7 +2158,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Enumerate DnsKeys to a ResourceRecordSet collection.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.dnsKeys.list",
 	//   "parameterOrder": [
@@ -1877,24 +2167,29 @@
 	//   ],
 	//   "parameters": {
 	//     "digestType": {
+	//       "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "maxResults": {
+	//       "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
 	//       "format": "int32",
 	//       "location": "query",
 	//       "type": "integer"
 	//     },
 	//     "pageToken": {
+	//       "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -1948,7 +2243,7 @@
 	header_      http.Header
 }
 
-// Get:
+// Get: Fetch the representation of an existing Operation.
 func (r *ManagedZoneOperationsService) Get(project string, managedZone string, operation string) *ManagedZoneOperationsGetCall {
 	c := &ManagedZoneOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -1958,6 +2253,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ManagedZoneOperationsGetCall) ClientOperationId(clientOperationId string) *ManagedZoneOperationsGetCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -2063,7 +2361,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Fetch the representation of an existing Operation.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.managedZoneOperations.get",
 	//   "parameterOrder": [
@@ -2073,20 +2371,24 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "operation": {
+	//       "description": "Identifies the operation addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -2118,7 +2420,7 @@
 	header_      http.Header
 }
 
-// List:
+// List: Enumerate Operations for the given ManagedZone.
 func (r *ManagedZoneOperationsService) List(project string, managedZone string) *ManagedZoneOperationsListCall {
 	c := &ManagedZoneOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -2126,19 +2428,24 @@
 	return c
 }
 
-// MaxResults sets the optional parameter "maxResults":
+// MaxResults sets the optional parameter "maxResults": Maximum number
+// of results to be returned. If unspecified, the server will decide how
+// many results to return.
 func (c *ManagedZoneOperationsListCall) MaxResults(maxResults int64) *ManagedZoneOperationsListCall {
 	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 	return c
 }
 
-// PageToken sets the optional parameter "pageToken":
+// PageToken sets the optional parameter "pageToken": A tag returned by
+// a previous list request that was truncated. Use this parameter to
+// continue a previous list request.
 func (c *ManagedZoneOperationsListCall) PageToken(pageToken string) *ManagedZoneOperationsListCall {
 	c.urlParams_.Set("pageToken", pageToken)
 	return c
 }
 
-// SortBy sets the optional parameter "sortBy":
+// SortBy sets the optional parameter "sortBy": Sorting criterion. The
+// only supported values are START_TIME and ID.
 //
 // Possible values:
 //   "ID"
@@ -2248,7 +2555,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Enumerate Operations for the given ManagedZone.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.managedZoneOperations.list",
 	//   "parameterOrder": [
@@ -2257,26 +2564,31 @@
 	//   ],
 	//   "parameters": {
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "maxResults": {
+	//       "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
 	//       "format": "int32",
 	//       "location": "query",
 	//       "type": "integer"
 	//     },
 	//     "pageToken": {
+	//       "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "sortBy": {
 	//       "default": "START_TIME",
+	//       "description": "Sorting criterion. The only supported values are START_TIME and ID.",
 	//       "enum": [
 	//         "ID",
 	//         "START_TIME"
@@ -2335,7 +2647,7 @@
 	header_     http.Header
 }
 
-// Create:
+// Create: Create a new ManagedZone.
 func (r *ManagedZonesService) Create(project string, managedzone *ManagedZone) *ManagedZonesCreateCall {
 	c := &ManagedZonesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -2344,6 +2656,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ManagedZonesCreateCall) ClientOperationId(clientOperationId string) *ManagedZonesCreateCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -2439,7 +2754,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Create a new ManagedZone.",
 	//   "httpMethod": "POST",
 	//   "id": "dns.managedZones.create",
 	//   "parameterOrder": [
@@ -2447,10 +2762,12 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -2482,7 +2799,7 @@
 	header_     http.Header
 }
 
-// Delete:
+// Delete: Delete a previously created ManagedZone.
 func (r *ManagedZonesService) Delete(project string, managedZone string) *ManagedZonesDeleteCall {
 	c := &ManagedZonesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -2491,6 +2808,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ManagedZonesDeleteCall) ClientOperationId(clientOperationId string) *ManagedZonesDeleteCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -2557,7 +2877,7 @@
 	}
 	return nil
 	// {
-	//   "description": "",
+	//   "description": "Delete a previously created ManagedZone.",
 	//   "httpMethod": "DELETE",
 	//   "id": "dns.managedZones.delete",
 	//   "parameterOrder": [
@@ -2566,15 +2886,18 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -2601,7 +2924,7 @@
 	header_      http.Header
 }
 
-// Get:
+// Get: Fetch the representation of an existing ManagedZone.
 func (r *ManagedZonesService) Get(project string, managedZone string) *ManagedZonesGetCall {
 	c := &ManagedZonesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -2610,6 +2933,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ManagedZonesGetCall) ClientOperationId(clientOperationId string) *ManagedZonesGetCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -2714,7 +3040,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Fetch the representation of an existing ManagedZone.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.managedZones.get",
 	//   "parameterOrder": [
@@ -2723,15 +3049,18 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -2762,26 +3091,32 @@
 	header_      http.Header
 }
 
-// List:
+// List: Enumerate ManagedZones that have been created but not yet
+// deleted.
 func (r *ManagedZonesService) List(project string) *ManagedZonesListCall {
 	c := &ManagedZonesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
 	return c
 }
 
-// DnsName sets the optional parameter "dnsName":
+// DnsName sets the optional parameter "dnsName": Restricts the list to
+// return only zones with this domain name.
 func (c *ManagedZonesListCall) DnsName(dnsName string) *ManagedZonesListCall {
 	c.urlParams_.Set("dnsName", dnsName)
 	return c
 }
 
-// MaxResults sets the optional parameter "maxResults":
+// MaxResults sets the optional parameter "maxResults": Maximum number
+// of results to be returned. If unspecified, the server will decide how
+// many results to return.
 func (c *ManagedZonesListCall) MaxResults(maxResults int64) *ManagedZonesListCall {
 	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 	return c
 }
 
-// PageToken sets the optional parameter "pageToken":
+// PageToken sets the optional parameter "pageToken": A tag returned by
+// a previous list request that was truncated. Use this parameter to
+// continue a previous list request.
 func (c *ManagedZonesListCall) PageToken(pageToken string) *ManagedZonesListCall {
 	c.urlParams_.Set("pageToken", pageToken)
 	return c
@@ -2885,7 +3220,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Enumerate ManagedZones that have been created but not yet deleted.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.managedZones.list",
 	//   "parameterOrder": [
@@ -2893,19 +3228,23 @@
 	//   ],
 	//   "parameters": {
 	//     "dnsName": {
+	//       "description": "Restricts the list to return only zones with this domain name.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "maxResults": {
+	//       "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
 	//       "format": "int32",
 	//       "location": "query",
 	//       "type": "integer"
 	//     },
 	//     "pageToken": {
+	//       "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -2958,7 +3297,7 @@
 	header_     http.Header
 }
 
-// Patch:
+// Patch: Apply a partial update to an existing ManagedZone.
 func (r *ManagedZonesService) Patch(project string, managedZone string, managedzone *ManagedZone) *ManagedZonesPatchCall {
 	c := &ManagedZonesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -2968,6 +3307,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ManagedZonesPatchCall) ClientOperationId(clientOperationId string) *ManagedZonesPatchCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -3064,7 +3406,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Apply a partial update to an existing ManagedZone.",
 	//   "httpMethod": "PATCH",
 	//   "id": "dns.managedZones.patch",
 	//   "parameterOrder": [
@@ -3073,15 +3415,18 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -3114,7 +3459,7 @@
 	header_     http.Header
 }
 
-// Update:
+// Update: Update an existing ManagedZone.
 func (r *ManagedZonesService) Update(project string, managedZone string, managedzone *ManagedZone) *ManagedZonesUpdateCall {
 	c := &ManagedZonesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -3124,6 +3469,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ManagedZonesUpdateCall) ClientOperationId(clientOperationId string) *ManagedZonesUpdateCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -3220,7 +3568,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Update an existing ManagedZone.",
 	//   "httpMethod": "PUT",
 	//   "id": "dns.managedZones.update",
 	//   "parameterOrder": [
@@ -3229,15 +3577,18 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -3269,7 +3620,7 @@
 	header_      http.Header
 }
 
-// Get:
+// Get: Fetch the representation of an existing Project.
 func (r *ProjectsService) Get(project string) *ProjectsGetCall {
 	c := &ProjectsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -3277,6 +3628,9 @@
 }
 
 // ClientOperationId sets the optional parameter "clientOperationId":
+// For mutating operation requests only. An optional identifier
+// specified by the client. Must be unique for operation resources in
+// the Operations collection.
 func (c *ProjectsGetCall) ClientOperationId(clientOperationId string) *ProjectsGetCall {
 	c.urlParams_.Set("clientOperationId", clientOperationId)
 	return c
@@ -3380,7 +3734,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Fetch the representation of an existing Project.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.projects.get",
 	//   "parameterOrder": [
@@ -3388,10 +3742,12 @@
 	//   ],
 	//   "parameters": {
 	//     "clientOperationId": {
+	//       "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -3423,7 +3779,8 @@
 	header_      http.Header
 }
 
-// List:
+// List: Enumerate ResourceRecordSets that have been created but not yet
+// deleted.
 func (r *ResourceRecordSetsService) List(project string, managedZone string) *ResourceRecordSetsListCall {
 	c := &ResourceRecordSetsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.project = project
@@ -3431,25 +3788,32 @@
 	return c
 }
 
-// MaxResults sets the optional parameter "maxResults":
+// MaxResults sets the optional parameter "maxResults": Maximum number
+// of results to be returned. If unspecified, the server will decide how
+// many results to return.
 func (c *ResourceRecordSetsListCall) MaxResults(maxResults int64) *ResourceRecordSetsListCall {
 	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 	return c
 }
 
-// Name sets the optional parameter "name":
+// Name sets the optional parameter "name": Restricts the list to return
+// only records with this fully qualified domain name.
 func (c *ResourceRecordSetsListCall) Name(name string) *ResourceRecordSetsListCall {
 	c.urlParams_.Set("name", name)
 	return c
 }
 
-// PageToken sets the optional parameter "pageToken":
+// PageToken sets the optional parameter "pageToken": A tag returned by
+// a previous list request that was truncated. Use this parameter to
+// continue a previous list request.
 func (c *ResourceRecordSetsListCall) PageToken(pageToken string) *ResourceRecordSetsListCall {
 	c.urlParams_.Set("pageToken", pageToken)
 	return c
 }
 
-// Type sets the optional parameter "type":
+// Type sets the optional parameter "type": Restricts the list to return
+// only records of this type. If present, the "name" parameter must also
+// be present.
 func (c *ResourceRecordSetsListCall) Type(type_ string) *ResourceRecordSetsListCall {
 	c.urlParams_.Set("type", type_)
 	return c
@@ -3554,7 +3918,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "",
+	//   "description": "Enumerate ResourceRecordSets that have been created but not yet deleted.",
 	//   "httpMethod": "GET",
 	//   "id": "dns.resourceRecordSets.list",
 	//   "parameterOrder": [
@@ -3563,29 +3927,35 @@
 	//   ],
 	//   "parameters": {
 	//     "managedZone": {
+	//       "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "maxResults": {
+	//       "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.",
 	//       "format": "int32",
 	//       "location": "query",
 	//       "type": "integer"
 	//     },
 	//     "name": {
+	//       "description": "Restricts the list to return only records with this fully qualified domain name.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "pageToken": {
+	//       "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
 	//     "project": {
+	//       "description": "Identifies the project addressed by this request.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "type": {
+	//       "description": "Restricts the list to return only records of this type. If present, the \"name\" parameter must also be present.",
 	//       "location": "query",
 	//       "type": "string"
 	//     }
diff --git a/drive/v2/drive-api.json b/drive/v2/drive-api.json
index 9ca2693..e7ff169 100644
--- a/drive/v2/drive-api.json
+++ b/drive/v2/drive-api.json
@@ -38,7 +38,7 @@
   "description": "Manages files in Drive including uploading, downloading, searching, detecting changes, and updating sharing permissions.",
   "discoveryVersion": "v1",
   "documentationLink": "https://developers.google.com/drive/",
-  "etag": "\"VPK3KBfpaEgZ16pozGOoMYfKc0U/lKOGBhFMu3-vffJ-yofbFGthirM\"",
+  "etag": "\"VPK3KBfpaEgZ16pozGOoMYfKc0U/hsVC9ZXMn4MD97V8ehCW4FF2Fws\"",
   "icons": {
     "x16": "https://ssl.gstatic.com/docs/doclist/images/drive_icon_16.png",
     "x32": "https://ssl.gstatic.com/docs/doclist/images/drive_icon_32.png"
@@ -218,14 +218,25 @@
               "required": true,
               "type": "string"
             },
+            "driveId": {
+              "description": "The shared drive from which the change will be returned.",
+              "location": "query",
+              "type": "string"
+            },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
             "teamDriveId": {
-              "description": "The Team Drive from which the change will be returned.",
+              "description": "Deprecated use driveId instead.",
               "location": "query",
               "type": "string"
             }
@@ -250,14 +261,25 @@
           "httpMethod": "GET",
           "id": "drive.changes.getStartPageToken",
           "parameters": {
+            "driveId": {
+              "description": "The ID of the shared drive for which the starting pageToken for listing future changes from that shared drive will be returned.",
+              "location": "query",
+              "type": "string"
+            },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
             "teamDriveId": {
-              "description": "The ID of the Team Drive for which the starting pageToken for listing future changes from that Team Drive will be returned.",
+              "description": "Deprecated use driveId instead.",
               "location": "query",
               "type": "string"
             }
@@ -278,10 +300,15 @@
           ]
         },
         "list": {
-          "description": "Lists the changes for a user or Team Drive.",
+          "description": "Lists the changes for a user or shared drive.",
           "httpMethod": "GET",
           "id": "drive.changes.list",
           "parameters": {
+            "driveId": {
+              "description": "The shared drive from which changes will be returned. If specified the change IDs will be reflective of the shared drive; use the combined drive ID and change ID as an identifier.",
+              "location": "query",
+              "type": "string"
+            },
             "includeCorpusRemovals": {
               "default": "false",
               "description": "Whether changes should include the file resource if the file is still accessible by the user at the time of the request, even when a file was removed from the list of changes and there will be no further change entries for this file.",
@@ -294,6 +321,12 @@
               "location": "query",
               "type": "boolean"
             },
+            "includeItemsFromAllDrives": {
+              "default": "false",
+              "description": "Whether both My Drive and shared drive items should be included in results.",
+              "location": "query",
+              "type": "boolean"
+            },
             "includeSubscribed": {
               "default": "true",
               "description": "Whether to include changes outside the My Drive hierarchy in the result. When set to false, changes to files such as those in the Application Data folder or shared files which have not been added to My Drive will be omitted from the result.",
@@ -302,7 +335,7 @@
             },
             "includeTeamDriveItems": {
               "default": "false",
-              "description": "Whether Team Drive files or changes should be included in results.",
+              "description": "Deprecated use includeItemsFromAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
@@ -330,14 +363,20 @@
               "location": "query",
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
             "teamDriveId": {
-              "description": "The Team Drive from which changes will be returned. If specified the change IDs will be reflective of the Team Drive; use the combined Team Drive ID and change ID as an identifier.",
+              "description": "Deprecated use driveId instead.",
               "location": "query",
               "type": "string"
             }
@@ -363,6 +402,11 @@
           "httpMethod": "POST",
           "id": "drive.changes.watch",
           "parameters": {
+            "driveId": {
+              "description": "The shared drive from which changes will be returned. If specified the change IDs will be reflective of the shared drive; use the combined drive ID and change ID as an identifier.",
+              "location": "query",
+              "type": "string"
+            },
             "includeCorpusRemovals": {
               "default": "false",
               "description": "Whether changes should include the file resource if the file is still accessible by the user at the time of the request, even when a file was removed from the list of changes and there will be no further change entries for this file.",
@@ -375,6 +419,12 @@
               "location": "query",
               "type": "boolean"
             },
+            "includeItemsFromAllDrives": {
+              "default": "false",
+              "description": "Whether both My Drive and shared drive items should be included in results.",
+              "location": "query",
+              "type": "boolean"
+            },
             "includeSubscribed": {
               "default": "true",
               "description": "Whether to include changes outside the My Drive hierarchy in the result. When set to false, changes to files such as those in the Application Data folder or shared files which have not been added to My Drive will be omitted from the result.",
@@ -383,7 +433,7 @@
             },
             "includeTeamDriveItems": {
               "default": "false",
-              "description": "Whether Team Drive files or changes should be included in results.",
+              "description": "Deprecated use includeItemsFromAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
@@ -411,14 +461,20 @@
               "location": "query",
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
             "teamDriveId": {
-              "description": "The Team Drive from which changes will be returned. If specified the change IDs will be reflective of the Team Drive; use the combined Team Drive ID and change ID as an identifier.",
+              "description": "Deprecated use driveId instead.",
               "location": "query",
               "type": "string"
             }
@@ -549,9 +605,15 @@
               "required": true,
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             }
@@ -838,6 +900,204 @@
         }
       }
     },
+    "drives": {
+      "methods": {
+        "delete": {
+          "description": "Permanently deletes a shared drive for which the user is an organizer. The shared drive cannot contain any untrashed items.",
+          "httpMethod": "DELETE",
+          "id": "drive.drives.delete",
+          "parameterOrder": [
+            "driveId"
+          ],
+          "parameters": {
+            "driveId": {
+              "description": "The ID of the shared drive.",
+              "location": "path",
+              "required": true,
+              "type": "string"
+            }
+          },
+          "path": "drives/{driveId}",
+          "scopes": [
+            "https://www.googleapis.com/auth/drive"
+          ]
+        },
+        "get": {
+          "description": "Gets a shared drive's metadata by ID.",
+          "httpMethod": "GET",
+          "id": "drive.drives.get",
+          "parameterOrder": [
+            "driveId"
+          ],
+          "parameters": {
+            "driveId": {
+              "description": "The ID of the shared drive.",
+              "location": "path",
+              "required": true,
+              "type": "string"
+            },
+            "useDomainAdminAccess": {
+              "default": "false",
+              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the shared drive belongs.",
+              "location": "query",
+              "type": "boolean"
+            }
+          },
+          "path": "drives/{driveId}",
+          "response": {
+            "$ref": "Drive"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/drive",
+            "https://www.googleapis.com/auth/drive.readonly"
+          ]
+        },
+        "hide": {
+          "description": "Hides a shared drive from the default view.",
+          "httpMethod": "POST",
+          "id": "drive.drives.hide",
+          "parameterOrder": [
+            "driveId"
+          ],
+          "parameters": {
+            "driveId": {
+              "description": "The ID of the shared drive.",
+              "location": "path",
+              "required": true,
+              "type": "string"
+            }
+          },
+          "path": "drives/{driveId}/hide",
+          "response": {
+            "$ref": "Drive"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/drive"
+          ]
+        },
+        "insert": {
+          "description": "Creates a new shared drive.",
+          "httpMethod": "POST",
+          "id": "drive.drives.insert",
+          "parameterOrder": [
+            "requestId"
+          ],
+          "parameters": {
+            "requestId": {
+              "description": "An ID, such as a random UUID, which uniquely identifies this user's request for idempotent creation of a shared drive. A repeated request by the same user and with the same request ID will avoid creating duplicates by attempting to create the same shared drive. If the shared drive already exists a 409 error will be returned.",
+              "location": "query",
+              "required": true,
+              "type": "string"
+            }
+          },
+          "path": "drives",
+          "request": {
+            "$ref": "Drive"
+          },
+          "response": {
+            "$ref": "Drive"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/drive"
+          ]
+        },
+        "list": {
+          "description": "Lists the user's shared drives.",
+          "httpMethod": "GET",
+          "id": "drive.drives.list",
+          "parameters": {
+            "maxResults": {
+              "default": "10",
+              "description": "Maximum number of shared drives to return.",
+              "format": "int32",
+              "location": "query",
+              "maximum": "100",
+              "minimum": "1",
+              "type": "integer"
+            },
+            "pageToken": {
+              "description": "Page token for shared drives.",
+              "location": "query",
+              "type": "string"
+            },
+            "q": {
+              "description": "Query string for searching shared drives.",
+              "location": "query",
+              "type": "string"
+            },
+            "useDomainAdminAccess": {
+              "default": "false",
+              "description": "Issue the request as a domain administrator; if set to true, then all shared drives of the domain in which the requester is an administrator are returned.",
+              "location": "query",
+              "type": "boolean"
+            }
+          },
+          "path": "drives",
+          "response": {
+            "$ref": "DriveList"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/drive",
+            "https://www.googleapis.com/auth/drive.readonly"
+          ]
+        },
+        "unhide": {
+          "description": "Restores a shared drive to the default view.",
+          "httpMethod": "POST",
+          "id": "drive.drives.unhide",
+          "parameterOrder": [
+            "driveId"
+          ],
+          "parameters": {
+            "driveId": {
+              "description": "The ID of the shared drive.",
+              "location": "path",
+              "required": true,
+              "type": "string"
+            }
+          },
+          "path": "drives/{driveId}/unhide",
+          "response": {
+            "$ref": "Drive"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/drive"
+          ]
+        },
+        "update": {
+          "description": "Updates the metadata for a shared drive.",
+          "httpMethod": "PUT",
+          "id": "drive.drives.update",
+          "parameterOrder": [
+            "driveId"
+          ],
+          "parameters": {
+            "driveId": {
+              "description": "The ID of the shared drive.",
+              "location": "path",
+              "required": true,
+              "type": "string"
+            },
+            "useDomainAdminAccess": {
+              "default": "false",
+              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the shared drive belongs.",
+              "location": "query",
+              "type": "boolean"
+            }
+          },
+          "path": "drives/{driveId}",
+          "request": {
+            "$ref": "Drive"
+          },
+          "response": {
+            "$ref": "Drive"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/drive"
+          ]
+        }
+      }
+    },
     "files": {
       "methods": {
         "copy": {
@@ -877,9 +1137,15 @@
               "location": "query",
               "type": "boolean"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
@@ -924,7 +1190,7 @@
           ]
         },
         "delete": {
-          "description": "Permanently deletes a file by ID. Skips the trash. The currently authenticated user must own the file or be an organizer on the parent for Team Drive files.",
+          "description": "Permanently deletes a file by ID. Skips the trash. The currently authenticated user must own the file or be an organizer on the parent for shared drive files.",
           "httpMethod": "DELETE",
           "id": "drive.files.delete",
           "parameterOrder": [
@@ -937,9 +1203,15 @@
               "required": true,
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             }
@@ -1059,9 +1331,15 @@
               "location": "query",
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
@@ -1133,9 +1411,15 @@
               "location": "query",
               "type": "boolean"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
@@ -1192,7 +1476,7 @@
           "id": "drive.files.list",
           "parameters": {
             "corpora": {
-              "description": "Comma-separated list of bodies of items (files/documents) to which the query applies. Supported bodies are 'default', 'domain', 'teamDrive' and 'allTeamDrives'. 'allTeamDrives' must be combined with 'default'; all other values must be used in isolation. Prefer 'default' or 'teamDrive' to 'allTeamDrives' for efficiency.",
+              "description": "Bodies of items (files/documents) to which the query applies. Supported bodies are 'default', 'domain', 'drive' and 'allDrives'. Prefer 'default' or 'drive' to 'allDrives' for efficiency.",
               "location": "query",
               "type": "string"
             },
@@ -1209,9 +1493,20 @@
               "location": "query",
               "type": "string"
             },
+            "driveId": {
+              "description": "ID of the shared drive to search.",
+              "location": "query",
+              "type": "string"
+            },
+            "includeItemsFromAllDrives": {
+              "default": "false",
+              "description": "Whether both My Drive and shared drive items should be included in results.",
+              "location": "query",
+              "type": "boolean"
+            },
             "includeTeamDriveItems": {
               "default": "false",
-              "description": "Whether Team Drive items should be included in results.",
+              "description": "Deprecated use includeItemsFromAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
@@ -1256,14 +1551,20 @@
               "location": "query",
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
             "teamDriveId": {
-              "description": "ID of Team Drive to search.",
+              "description": "Deprecated use driveId instead.",
               "location": "query",
               "type": "string"
             }
@@ -1363,9 +1664,15 @@
               "location": "query",
               "type": "boolean"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
@@ -1422,9 +1729,15 @@
               "required": true,
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             }
@@ -1442,7 +1755,7 @@
           ]
         },
         "trash": {
-          "description": "Moves a file to the trash. The currently authenticated user must own the file or be at least a fileOrganizer on the parent for Team Drive files.",
+          "description": "Moves a file to the trash. The currently authenticated user must own the file or be at least a fileOrganizer on the parent for shared drive files.",
           "httpMethod": "POST",
           "id": "drive.files.trash",
           "parameterOrder": [
@@ -1455,9 +1768,15 @@
               "required": true,
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             }
@@ -1487,9 +1806,15 @@
               "required": true,
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             }
@@ -1601,9 +1926,15 @@
               "location": "query",
               "type": "boolean"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
@@ -1685,9 +2016,15 @@
               "location": "query",
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
@@ -1801,9 +2138,15 @@
               "required": true,
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             }
@@ -1855,7 +2198,7 @@
     "permissions": {
       "methods": {
         "delete": {
-          "description": "Deletes a permission from a file or Team Drive.",
+          "description": "Deletes a permission from a file or shared drive.",
           "httpMethod": "DELETE",
           "id": "drive.permissions.delete",
           "parameterOrder": [
@@ -1864,7 +2207,7 @@
           ],
           "parameters": {
             "fileId": {
-              "description": "The ID for the file or Team Drive.",
+              "description": "The ID for the file or shared drive.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -1875,15 +2218,21 @@
               "required": true,
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
             "useDomainAdminAccess": {
               "default": "false",
-              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
               "location": "query",
               "type": "boolean"
             }
@@ -1904,7 +2253,7 @@
           ],
           "parameters": {
             "fileId": {
-              "description": "The ID for the file or Team Drive.",
+              "description": "The ID for the file or shared drive.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -1915,15 +2264,21 @@
               "required": true,
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
             "useDomainAdminAccess": {
               "default": "false",
-              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
               "location": "query",
               "type": "boolean"
             }
@@ -1972,7 +2327,7 @@
           ]
         },
         "insert": {
-          "description": "Inserts a permission for a file or Team Drive.",
+          "description": "Inserts a permission for a file or shared drive.",
           "httpMethod": "POST",
           "id": "drive.permissions.insert",
           "parameterOrder": [
@@ -1985,7 +2340,7 @@
               "type": "string"
             },
             "fileId": {
-              "description": "The ID for the file or Team Drive.",
+              "description": "The ID for the file or shared drive.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -1996,15 +2351,21 @@
               "location": "query",
               "type": "boolean"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
             "useDomainAdminAccess": {
               "default": "false",
-              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
               "location": "query",
               "type": "boolean"
             }
@@ -2022,7 +2383,7 @@
           ]
         },
         "list": {
-          "description": "Lists a file's or Team Drive's permissions.",
+          "description": "Lists a file's or shared drive's permissions.",
           "httpMethod": "GET",
           "id": "drive.permissions.list",
           "parameterOrder": [
@@ -2030,13 +2391,13 @@
           ],
           "parameters": {
             "fileId": {
-              "description": "The ID for the file or Team Drive.",
+              "description": "The ID for the file or shared drive.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "maxResults": {
-              "description": "The maximum number of permissions to return per page. When not set for files in a Team Drive, at most 100 results will be returned. When not set for files that are not in a Team Drive, the entire list will be returned.",
+              "description": "The maximum number of permissions to return per page. When not set for files in a shared drive, at most 100 results will be returned. When not set for files that are not in a shared drive, the entire list will be returned.",
               "format": "int32",
               "location": "query",
               "maximum": "100",
@@ -2048,15 +2409,21 @@
               "location": "query",
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
             "useDomainAdminAccess": {
               "default": "false",
-              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
               "location": "query",
               "type": "boolean"
             }
@@ -2084,7 +2451,7 @@
           ],
           "parameters": {
             "fileId": {
-              "description": "The ID for the file or Team Drive.",
+              "description": "The ID for the file or shared drive.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -2101,9 +2468,15 @@
               "location": "query",
               "type": "boolean"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
@@ -2115,7 +2488,7 @@
             },
             "useDomainAdminAccess": {
               "default": "false",
-              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
               "location": "query",
               "type": "boolean"
             }
@@ -2142,7 +2515,7 @@
           ],
           "parameters": {
             "fileId": {
-              "description": "The ID for the file or Team Drive.",
+              "description": "The ID for the file or shared drive.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -2159,9 +2532,15 @@
               "location": "query",
               "type": "boolean"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
@@ -2173,7 +2552,7 @@
             },
             "useDomainAdminAccess": {
               "default": "false",
-              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
               "location": "query",
               "type": "boolean"
             }
@@ -2930,7 +3309,7 @@
     "teamdrives": {
       "methods": {
         "delete": {
-          "description": "Permanently deletes a Team Drive for which the user is an organizer. The Team Drive cannot contain any untrashed items.",
+          "description": "Deprecated use drives.delete instead.",
           "httpMethod": "DELETE",
           "id": "drive.teamdrives.delete",
           "parameterOrder": [
@@ -2950,7 +3329,7 @@
           ]
         },
         "get": {
-          "description": "Gets a Team Drive's metadata by ID.",
+          "description": "Deprecated use drives.get instead.",
           "httpMethod": "GET",
           "id": "drive.teamdrives.get",
           "parameterOrder": [
@@ -2980,7 +3359,7 @@
           ]
         },
         "insert": {
-          "description": "Creates a new Team Drive.",
+          "description": "Deprecated use drives.insert instead.",
           "httpMethod": "POST",
           "id": "drive.teamdrives.insert",
           "parameterOrder": [
@@ -3006,7 +3385,7 @@
           ]
         },
         "list": {
-          "description": "Lists the user's Team Drives.",
+          "description": "Deprecated use drives.list instead.",
           "httpMethod": "GET",
           "id": "drive.teamdrives.list",
           "parameters": {
@@ -3046,7 +3425,7 @@
           ]
         },
         "update": {
-          "description": "Updates a Team Drive's metadata",
+          "description": "Deprecated use drives.update instead.",
           "httpMethod": "PUT",
           "id": "drive.teamdrives.update",
           "parameterOrder": [
@@ -3080,7 +3459,7 @@
       }
     }
   },
-  "revision": "20190404",
+  "revision": "20190416",
   "rootUrl": "https://www.googleapis.com/",
   "schemas": {
     "About": {
@@ -3120,14 +3499,39 @@
           },
           "type": "array"
         },
+        "canCreateDrives": {
+          "description": "Whether the user can create shared drives.",
+          "type": "boolean"
+        },
         "canCreateTeamDrives": {
-          "description": "Whether the user can create Team Drives.",
+          "description": "Deprecated - use canCreateDrives instead.",
           "type": "boolean"
         },
         "domainSharingPolicy": {
           "description": "The domain sharing policy for the current user. Possible values are:  \n- allowed \n- allowedWithWarning \n- incomingOnly \n- disallowed",
           "type": "string"
         },
+        "driveThemes": {
+          "description": "A list of themes that are supported for shared drives.",
+          "items": {
+            "properties": {
+              "backgroundImageLink": {
+                "description": "A link to this theme's background image.",
+                "type": "string"
+              },
+              "colorRgb": {
+                "description": "The color of this theme as an RGB hex string.",
+                "type": "string"
+              },
+              "id": {
+                "description": "The ID of the theme.",
+                "type": "string"
+              }
+            },
+            "type": "object"
+          },
+          "type": "array"
+        },
         "etag": {
           "description": "The ETag of the item.",
           "type": "string"
@@ -3297,7 +3701,7 @@
           "type": "string"
         },
         "teamDriveThemes": {
-          "description": "A list of themes that are supported for Team Drives.",
+          "description": "Deprecated - use driveThemes instead.",
           "items": {
             "properties": {
               "backgroundImageLink": {
@@ -3493,13 +3897,25 @@
       "type": "object"
     },
     "Change": {
-      "description": "Representation of a change to a file or Team Drive.",
+      "description": "Representation of a change to a file or shared drive.",
       "id": "Change",
       "properties": {
+        "changeType": {
+          "description": "The type of the change. Possible values are file and drive.",
+          "type": "string"
+        },
         "deleted": {
-          "description": "Whether the file or Team Drive has been removed from this list of changes, for example by deletion or loss of access.",
+          "description": "Whether the file or shared drive has been removed from this list of changes, for example by deletion or loss of access.",
           "type": "boolean"
         },
+        "drive": {
+          "$ref": "Drive",
+          "description": "The updated state of the shared drive. Present if the changeType is drive, the user is still a member of the shared drive, and the shared drive has not been deleted."
+        },
+        "driveId": {
+          "description": "The ID of the shared drive associated with this change.",
+          "type": "string"
+        },
         "file": {
           "$ref": "File",
           "description": "The updated state of the file. Present if the type is file and the file has not been removed from this list of changes."
@@ -3529,14 +3945,14 @@
         },
         "teamDrive": {
           "$ref": "TeamDrive",
-          "description": "The updated state of the Team Drive. Present if the type is teamDrive, the user is still a member of the Team Drive, and the Team Drive has not been deleted."
+          "description": "Deprecated - use drive instead."
         },
         "teamDriveId": {
-          "description": "The ID of the Team Drive associated with this change.",
+          "description": "Deprecated - use driveId instead.",
           "type": "string"
         },
         "type": {
-          "description": "The type of the change. Possible values are file and teamDrive.",
+          "description": "Deprecated - use changeType instead.",
           "type": "string"
         }
       },
@@ -3907,6 +4323,200 @@
       },
       "type": "object"
     },
+    "Drive": {
+      "description": "Representation of a shared drive.",
+      "id": "Drive",
+      "properties": {
+        "backgroundImageFile": {
+          "description": "An image file and cropping parameters from which a background image for this shared drive is set. This is a write only field; it can only be set on drive.drives.update requests that don't set themeId. When specified, all fields of the backgroundImageFile must be set.",
+          "properties": {
+            "id": {
+              "description": "The ID of an image file in Google Drive to use for the background image.",
+              "type": "string"
+            },
+            "width": {
+              "description": "The width of the cropped image in the closed range of 0 to 1. This value represents the width of the cropped image divided by the width of the entire image. The height is computed by applying a width to height aspect ratio of 80 to 9. The resulting image must be at least 1280 pixels wide and 144 pixels high.",
+              "format": "float",
+              "type": "number"
+            },
+            "xCoordinate": {
+              "description": "The X coordinate of the upper left corner of the cropping area in the background image. This is a value in the closed range of 0 to 1. This value represents the horizontal distance from the left side of the entire image to the left side of the cropping area divided by the width of the entire image.",
+              "format": "float",
+              "type": "number"
+            },
+            "yCoordinate": {
+              "description": "The Y coordinate of the upper left corner of the cropping area in the background image. This is a value in the closed range of 0 to 1. This value represents the vertical distance from the top side of the entire image to the top side of the cropping area divided by the height of the entire image.",
+              "format": "float",
+              "type": "number"
+            }
+          },
+          "type": "object"
+        },
+        "backgroundImageLink": {
+          "description": "A short-lived link to this shared drive's background image.",
+          "type": "string"
+        },
+        "capabilities": {
+          "description": "Capabilities the current user has on this shared drive.",
+          "properties": {
+            "canAddChildren": {
+              "description": "Whether the current user can add children to folders in this shared drive.",
+              "type": "boolean"
+            },
+            "canChangeCopyRequiresWriterPermissionRestriction": {
+              "description": "Whether the current user can change the copyRequiresWriterPermission restriction of this shared drive.",
+              "type": "boolean"
+            },
+            "canChangeDomainUsersOnlyRestriction": {
+              "description": "Whether the current user can change the domainUsersOnly restriction of this shared drive.",
+              "type": "boolean"
+            },
+            "canChangeDriveBackground": {
+              "description": "Whether the current user can change the background of this shared drive.",
+              "type": "boolean"
+            },
+            "canChangeDriveMembersOnlyRestriction": {
+              "description": "Whether the current user can change the driveMembersOnly restriction of this shared drive.",
+              "type": "boolean"
+            },
+            "canComment": {
+              "description": "Whether the current user can comment on files in this shared drive.",
+              "type": "boolean"
+            },
+            "canCopy": {
+              "description": "Whether the current user can copy files in this shared drive.",
+              "type": "boolean"
+            },
+            "canDeleteChildren": {
+              "description": "Whether the current user can delete children from folders in this shared drive.",
+              "type": "boolean"
+            },
+            "canDeleteDrive": {
+              "description": "Whether the current user can delete this shared drive. Attempting to delete the shared drive may still fail if there are untrashed items inside the shared drive.",
+              "type": "boolean"
+            },
+            "canDownload": {
+              "description": "Whether the current user can download files in this shared drive.",
+              "type": "boolean"
+            },
+            "canEdit": {
+              "description": "Whether the current user can edit files in this shared drive",
+              "type": "boolean"
+            },
+            "canListChildren": {
+              "description": "Whether the current user can list the children of folders in this shared drive.",
+              "type": "boolean"
+            },
+            "canManageMembers": {
+              "description": "Whether the current user can add members to this shared drive or remove them or change their role.",
+              "type": "boolean"
+            },
+            "canReadRevisions": {
+              "description": "Whether the current user can read the revisions resource of files in this shared drive.",
+              "type": "boolean"
+            },
+            "canRename": {
+              "description": "Whether the current user can rename files or folders in this shared drive.",
+              "type": "boolean"
+            },
+            "canRenameDrive": {
+              "description": "Whether the current user can rename this shared drive.",
+              "type": "boolean"
+            },
+            "canShare": {
+              "description": "Whether the current user can share files or folders in this shared drive.",
+              "type": "boolean"
+            },
+            "canTrashChildren": {
+              "description": "Whether the current user can trash children from folders in this shared drive.",
+              "type": "boolean"
+            }
+          },
+          "type": "object"
+        },
+        "colorRgb": {
+          "description": "The color of this shared drive as an RGB hex string. It can only be set on a drive.drives.update request that does not set themeId.",
+          "type": "string"
+        },
+        "createdDate": {
+          "description": "The time at which the shared drive was created (RFC 3339 date-time).",
+          "format": "date-time",
+          "type": "string"
+        },
+        "hidden": {
+          "description": "Whether the shared drive is hidden from default view.",
+          "type": "boolean"
+        },
+        "id": {
+          "description": "The ID of this shared drive which is also the ID of the top level folder of this shared drive.",
+          "type": "string"
+        },
+        "kind": {
+          "default": "drive#drive",
+          "description": "This is always drive#drive",
+          "type": "string"
+        },
+        "name": {
+          "annotations": {
+            "required": [
+              "drive.drives.insert"
+            ]
+          },
+          "description": "The name of this shared drive.",
+          "type": "string"
+        },
+        "restrictions": {
+          "description": "A set of restrictions that apply to this shared drive or items inside this shared drive.",
+          "properties": {
+            "adminManagedRestrictions": {
+              "description": "Whether administrative privileges on this shared drive are required to modify restrictions.",
+              "type": "boolean"
+            },
+            "copyRequiresWriterPermission": {
+              "description": "Whether the options to copy, print, or download files inside this shared drive, should be disabled for readers and commenters. When this restriction is set to true, it will override the similarly named field to true for any file inside this shared drive.",
+              "type": "boolean"
+            },
+            "domainUsersOnly": {
+              "description": "Whether access to this shared drive and items inside this shared drive is restricted to users of the domain to which this shared drive belongs. This restriction may be overridden by other sharing policies controlled outside of this shared drive.",
+              "type": "boolean"
+            },
+            "driveMembersOnly": {
+              "description": "Whether access to items inside this shared drive is restricted to its members.",
+              "type": "boolean"
+            }
+          },
+          "type": "object"
+        },
+        "themeId": {
+          "description": "The ID of the theme from which the background image and color will be set. The set of possible driveThemes can be retrieved from a drive.about.get response. When not specified on a drive.drives.insert request, a random theme is chosen from which the background image and color are set. This is a write-only field; it can only be set on requests that don't set colorRgb or backgroundImageFile.",
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
+    "DriveList": {
+      "description": "A list of shared drives.",
+      "id": "DriveList",
+      "properties": {
+        "items": {
+          "description": "The list of shared drives. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.",
+          "items": {
+            "$ref": "Drive"
+          },
+          "type": "array"
+        },
+        "kind": {
+          "default": "drive#driveList",
+          "description": "This is always drive#driveList",
+          "type": "string"
+        },
+        "nextPageToken": {
+          "description": "The page token for the next page of shared drives. This will be absent if the end of the list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results.",
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
     "File": {
       "description": "The metadata for a file.",
       "id": "File",
@@ -3947,7 +4557,7 @@
               "type": "boolean"
             },
             "canCopy": {
-              "description": "Whether the current user can copy this file. For a Team Drive item, whether the current user can copy non-folder descendants of this item, or this item itself if it is not a folder.",
+              "description": "Whether the current user can copy this file. For an item in a shared drive, whether the current user can copy non-folder descendants of this item, or this item itself if it is not a folder.",
               "type": "boolean"
             },
             "canDelete": {
@@ -3955,7 +4565,7 @@
               "type": "boolean"
             },
             "canDeleteChildren": {
-              "description": "Whether the current user can delete children of this folder. This is false when the item is not a folder. Only populated for Team Drive items.",
+              "description": "Whether the current user can delete children of this folder. This is false when the item is not a folder. Only populated for items in shared drives.",
               "type": "boolean"
             },
             "canDownload": {
@@ -3970,40 +4580,60 @@
               "description": "Whether the current user can list the children of this folder. This is always false when the item is not a folder.",
               "type": "boolean"
             },
+            "canMoveChildrenOutOfDrive": {
+              "description": "Whether the current user can move children of this folder outside of the shared drive. This is false when the item is not a folder. Only populated for items in shared drives.",
+              "type": "boolean"
+            },
             "canMoveChildrenOutOfTeamDrive": {
-              "description": "Whether the current user can move children of this folder outside of the Team Drive. This is false when the item is not a folder. Only populated for Team Drive items.",
+              "description": "Deprecated - use canMoveChildrenOutOfDrive instead.",
+              "type": "boolean"
+            },
+            "canMoveChildrenWithinDrive": {
+              "description": "Whether the current user can move children of this folder within the shared drive. This is false when the item is not a folder. Only populated for items in shared drives.",
               "type": "boolean"
             },
             "canMoveChildrenWithinTeamDrive": {
-              "description": "Whether the current user can move children of this folder within the Team Drive. This is false when the item is not a folder. Only populated for Team Drive items.",
+              "description": "Deprecated - use canMoveChildrenWithinDrive instead.",
               "type": "boolean"
             },
             "canMoveItemIntoTeamDrive": {
-              "description": "Whether the current user can move this item into a Team Drive. If the item is in a Team Drive, this field is equivalent to canMoveTeamDriveItem.",
+              "description": "Deprecated - use canMoveItemOutOfDrive instead.",
+              "type": "boolean"
+            },
+            "canMoveItemOutOfDrive": {
+              "description": "Whether the current user can move this item outside of this drive by changing its parent. Note that a request to change the parent of the item may still fail depending on the new parent that is being added.",
               "type": "boolean"
             },
             "canMoveItemOutOfTeamDrive": {
-              "description": "Whether the current user can move this Team Drive item outside of this Team Drive by changing its parent. Note that a request to change the parent of the item may still fail depending on the new parent that is being added. Only populated for Team Drive items.",
+              "description": "Deprecated - use canMoveItemOutOfDrive instead.",
+              "type": "boolean"
+            },
+            "canMoveItemWithinDrive": {
+              "description": "Whether the current user can move this item within this shared drive. Note that a request to change the parent of the item may still fail depending on the new parent that is being added. Only populated for items in shared drives.",
               "type": "boolean"
             },
             "canMoveItemWithinTeamDrive": {
-              "description": "Whether the current user can move this Team Drive item within this Team Drive. Note that a request to change the parent of the item may still fail depending on the new parent that is being added. Only populated for Team Drive items.",
+              "description": "Deprecated - use canMoveItemWithinDrive instead.",
               "type": "boolean"
             },
             "canMoveTeamDriveItem": {
-              "description": "Deprecated - use canMoveItemWithinTeamDrive or canMoveItemOutOfTeamDrive instead.",
+              "description": "Deprecated - use canMoveItemWithinDrive or canMoveItemOutOfDrive instead.",
+              "type": "boolean"
+            },
+            "canReadDrive": {
+              "description": "Whether the current user can read the shared drive to which this file belongs. Only populated for items in shared drives.",
               "type": "boolean"
             },
             "canReadRevisions": {
-              "description": "Whether the current user can read the revisions resource of this file. For a Team Drive item, whether revisions of non-folder descendants of this item, or this item itself if it is not a folder, can be read.",
+              "description": "Whether the current user can read the revisions resource of this file. For a shared drive item, whether revisions of non-folder descendants of this item, or this item itself if it is not a folder, can be read.",
               "type": "boolean"
             },
             "canReadTeamDrive": {
-              "description": "Whether the current user can read the Team Drive to which this file belongs. Only populated for Team Drive files.",
+              "description": "Deprecated - use canReadDrive instead.",
               "type": "boolean"
             },
             "canRemoveChildren": {
-              "description": "Whether the current user can remove children from this folder. This is always false when the item is not a folder. For Team Drive items, use canDeleteChildren or canTrashChildren instead.",
+              "description": "Whether the current user can remove children from this folder. This is always false when the item is not a folder. For a folder in a shared drive, use canDeleteChildren or canTrashChildren instead.",
               "type": "boolean"
             },
             "canRename": {
@@ -4019,7 +4649,7 @@
               "type": "boolean"
             },
             "canTrashChildren": {
-              "description": "Whether the current user can trash children of this folder. This is false when the item is not a folder. Only populated for Team Drive items.",
+              "description": "Whether the current user can trash children of this folder. This is false when the item is not a folder. Only populated for items in shared drives.",
               "type": "boolean"
             },
             "canUntrash": {
@@ -4051,7 +4681,11 @@
           "type": "string"
         },
         "downloadUrl": {
-          "description": "Short lived download URL for the file. This field is only populated for files with content stored in Drive; it is not populated for Google Docs or shortcut files.",
+          "description": "Short lived download URL for the file. This field is only populated for files with content stored in Google Drive; it is not populated for Google Docs or shortcut files.",
+          "type": "string"
+        },
+        "driveId": {
+          "description": "ID of the shared drive the file resides in. Only populated for items in shared drives.",
           "type": "string"
         },
         "editable": {
@@ -4079,24 +4713,24 @@
           "type": "object"
         },
         "fileExtension": {
-          "description": "The final component of fullFileExtension with trailing text that does not appear to be part of the extension removed. This field is only populated for files with content stored in Drive; it is not populated for Google Docs or shortcut files.",
+          "description": "The final component of fullFileExtension with trailing text that does not appear to be part of the extension removed. This field is only populated for files with content stored in Google Drive; it is not populated for Google Docs or shortcut files.",
           "type": "string"
         },
         "fileSize": {
-          "description": "The size of the file in bytes. This field is only populated for files with content stored in Drive; it is not populated for Google Docs or shortcut files.",
+          "description": "The size of the file in bytes. This field is only populated for files with content stored in Google Drive; it is not populated for Google Docs or shortcut files.",
           "format": "int64",
           "type": "string"
         },
         "folderColorRgb": {
-          "description": "Folder color as an RGB hex string if the file is a folder. The list of supported colors is available in the folderColorPalette field of the About resource. If an unsupported color is specified, it will be changed to the closest color in the palette. Not populated for Team Drive files.",
+          "description": "Folder color as an RGB hex string if the file is a folder. The list of supported colors is available in the folderColorPalette field of the About resource. If an unsupported color is specified, it will be changed to the closest color in the palette. Not populated for items in shared drives.",
           "type": "string"
         },
         "fullFileExtension": {
-          "description": "The full file extension; extracted from the title. May contain multiple concatenated extensions, such as \"tar.gz\". Removing an extension from the title does not clear this field; however, changing the extension on the title does update this field. This field is only populated for files with content stored in Drive; it is not populated for Google Docs or shortcut files.",
+          "description": "The full file extension; extracted from the title. May contain multiple concatenated extensions, such as \"tar.gz\". Removing an extension from the title does not clear this field; however, changing the extension on the title does update this field. This field is only populated for files with content stored in Google Drive; it is not populated for Google Docs or shortcut files.",
           "type": "string"
         },
         "hasAugmentedPermissions": {
-          "description": "Whether any users are granted file access directly on this file. This field is only populated for Team Drive files.",
+          "description": "Whether any users are granted file access directly on this file. This field is only populated for items in shared drives.",
           "type": "boolean"
         },
         "hasThumbnail": {
@@ -4104,7 +4738,7 @@
           "type": "boolean"
         },
         "headRevisionId": {
-          "description": "The ID of the file's head revision. This field is only populated for files with content stored in Drive; it is not populated for Google Docs or shortcut files.",
+          "description": "The ID of the file's head revision. This field is only populated for files with content stored in Google Drive; it is not populated for Google Docs or shortcut files.",
           "type": "string"
         },
         "iconLink": {
@@ -4300,7 +4934,7 @@
           "type": "string"
         },
         "md5Checksum": {
-          "description": "An MD5 checksum for the content of this file. This field is only populated for files with content stored in Drive; it is not populated for Google Docs or shortcut files.",
+          "description": "An MD5 checksum for the content of this file. This field is only populated for files with content stored in Google Drive; it is not populated for Google Docs or shortcut files.",
           "type": "string"
         },
         "mimeType": {
@@ -4325,22 +4959,22 @@
           "type": "object"
         },
         "originalFilename": {
-          "description": "The original filename of the uploaded content if available, or else the original value of the title field. This is only available for files with binary content in Drive.",
+          "description": "The original filename of the uploaded content if available, or else the original value of the title field. This is only available for files with binary content in Google Drive.",
           "type": "string"
         },
         "ownedByMe": {
-          "description": "Whether the file is owned by the current user. Not populated for Team Drive files.",
+          "description": "Whether the file is owned by the current user. Not populated for items in shared drives.",
           "type": "boolean"
         },
         "ownerNames": {
-          "description": "Name(s) of the owner(s) of this file. Not populated for Team Drive files.",
+          "description": "Name(s) of the owner(s) of this file. Not populated for items in shared drives.",
           "items": {
             "type": "string"
           },
           "type": "array"
         },
         "owners": {
-          "description": "The owner(s) of this file. Not populated for Team Drive files.",
+          "description": "The owner(s) of this file. Not populated for items in shared drives.",
           "items": {
             "$ref": "User"
           },
@@ -4361,7 +4995,7 @@
           "type": "array"
         },
         "permissions": {
-          "description": "The list of permissions for users with access to this file. Not populated for Team Drive files.",
+          "description": "The list of permissions for users with access to this file. Not populated for items in shared drives.",
           "items": {
             "$ref": "Permission"
           },
@@ -4388,7 +5022,7 @@
           "type": "boolean"
         },
         "shared": {
-          "description": "Whether the file has been shared. Not populated for Team Drive files.",
+          "description": "Whether the file has been shared. Not populated for items in shared drives.",
           "type": "boolean"
         },
         "sharedWithMeDate": {
@@ -4408,11 +5042,11 @@
           "type": "array"
         },
         "teamDriveId": {
-          "description": "ID of the Team Drive the file resides in.",
+          "description": "Deprecated - use driveId instead.",
           "type": "string"
         },
         "thumbnail": {
-          "description": "A thumbnail for the file. This will only be used if Drive cannot generate a standard thumbnail.",
+          "description": "A thumbnail for the file. This will only be used if a standard thumbnail cannot be generated.",
           "properties": {
             "image": {
               "description": "The URL-safe Base64 encoded bytes of the thumbnail image. It should conform to RFC 4648 section 5.",
@@ -4436,17 +5070,17 @@
           "type": "string"
         },
         "title": {
-          "description": "The title of this file. Note that for immutable items such as the top level folders of Team Drives, My Drive root folder, and Application Data folder the title is constant.",
+          "description": "The title of this file. Note that for immutable items such as the top level folders of shared drives, My Drive root folder, and Application Data folder the title is constant.",
           "type": "string"
         },
         "trashedDate": {
-          "description": "The time that the item was trashed (formatted RFC 3339 timestamp). Only populated for Team Drive files.",
+          "description": "The time that the item was trashed (formatted RFC 3339 timestamp). Only populated for items in shared drives.",
           "format": "date-time",
           "type": "string"
         },
         "trashingUser": {
           "$ref": "User",
-          "description": "If the file has been explicitly trashed, the user who trashed it. Only populated for Team Drive files."
+          "description": "If the file has been explicitly trashed, the user who trashed it. Only populated for items in shared drives."
         },
         "userPermission": {
           "$ref": "Permission",
@@ -4487,7 +5121,7 @@
           "type": "string"
         },
         "writersCanShare": {
-          "description": "Whether writers can share the document with other users. Not populated for Team Drive files.",
+          "description": "Whether writers can share the document with other users. Not populated for items in shared drives.",
           "type": "boolean"
         }
       },
@@ -4502,7 +5136,7 @@
           "type": "string"
         },
         "incompleteSearch": {
-          "description": "Whether the search process was incomplete. If true, then some search results may be missing, since all documents were not searched. This may occur when searching multiple Team Drives with the \"default,allTeamDrives\" corpora, but all corpora could not be searched. When this happens, it is suggested that clients narrow their query by choosing a different corpus such as \"default\" or \"teamDrive\".",
+          "description": "Whether the search process was incomplete. If true, then some search results may be missing, since all documents were not searched. This may occur when searching multiple drives with the \"allDrives\" corpora, but all corpora could not be searched. When this happens, it is suggested that clients narrow their query by choosing a different corpus such as \"default\" or \"drive\".",
           "type": "boolean"
         },
         "items": {
@@ -4664,6 +5298,38 @@
           "description": "The name for this permission.",
           "type": "string"
         },
+        "permissionDetails": {
+          "description": "Details of whether the permissions on this shared drive item are inherited or directly on this item. This is an output-only field which is present only for shared drive items.",
+          "items": {
+            "properties": {
+              "additionalRoles": {
+                "description": "Additional roles for this user. Only commenter is currently possible, though more may be supported in the future.",
+                "items": {
+                  "type": "string"
+                },
+                "type": "array"
+              },
+              "inherited": {
+                "description": "Whether this permission is inherited. This field is always populated. This is an output-only field.",
+                "type": "boolean"
+              },
+              "inheritedFrom": {
+                "description": "The ID of the item from which this permission is inherited. This is an output-only field and is only populated for members of the shared drive.",
+                "type": "string"
+              },
+              "permissionType": {
+                "description": "The permission type for this user. While new values may be added in future, the following are currently possible:  \n- file \n- member",
+                "type": "string"
+              },
+              "role": {
+                "description": "The primary role for this user. While new values may be added in the future, the following are currently possible:  \n- organizer \n- fileOrganizer \n- writer \n- reader",
+                "type": "string"
+              }
+            },
+            "type": "object"
+          },
+          "type": "array"
+        },
         "photoLink": {
           "description": "A link to the profile photo, if available.",
           "type": "string"
@@ -4682,7 +5348,7 @@
           "type": "string"
         },
         "teamDrivePermissionDetails": {
-          "description": "Details of whether the permissions on this Team Drive item are inherited or directly on this item. This is an output-only field which is present only for Team Drive items.",
+          "description": "Deprecated - use permissionDetails instead.",
           "items": {
             "properties": {
               "additionalRoles": {
diff --git a/drive/v2/drive-gen.go b/drive/v2/drive-gen.go
index ea50ae5..3225e7b 100644
--- a/drive/v2/drive-gen.go
+++ b/drive/v2/drive-gen.go
@@ -154,6 +154,7 @@
 	s.Channels = NewChannelsService(s)
 	s.Children = NewChildrenService(s)
 	s.Comments = NewCommentsService(s)
+	s.Drives = NewDrivesService(s)
 	s.Files = NewFilesService(s)
 	s.Parents = NewParentsService(s)
 	s.Permissions = NewPermissionsService(s)
@@ -182,6 +183,8 @@
 
 	Comments *CommentsService
 
+	Drives *DrivesService
+
 	Files *FilesService
 
 	Parents *ParentsService
@@ -260,6 +263,15 @@
 	s *Service
 }
 
+func NewDrivesService(s *Service) *DrivesService {
+	rs := &DrivesService{s: s}
+	return rs
+}
+
+type DrivesService struct {
+	s *Service
+}
+
 func NewFilesService(s *Service) *FilesService {
 	rs := &FilesService{s: s}
 	return rs
@@ -338,7 +350,10 @@
 	// file type. The most specific type takes precedence.
 	AdditionalRoleInfo []*AboutAdditionalRoleInfo `json:"additionalRoleInfo,omitempty"`
 
-	// CanCreateTeamDrives: Whether the user can create Team Drives.
+	// CanCreateDrives: Whether the user can create shared drives.
+	CanCreateDrives bool `json:"canCreateDrives,omitempty"`
+
+	// CanCreateTeamDrives: Deprecated - use canCreateDrives instead.
 	CanCreateTeamDrives bool `json:"canCreateTeamDrives,omitempty"`
 
 	// DomainSharingPolicy: The domain sharing policy for the current user.
@@ -349,6 +364,9 @@
 	// - disallowed
 	DomainSharingPolicy string `json:"domainSharingPolicy,omitempty"`
 
+	// DriveThemes: A list of themes that are supported for shared drives.
+	DriveThemes []*AboutDriveThemes `json:"driveThemes,omitempty"`
+
 	// Etag: The ETag of the item.
 	Etag string `json:"etag,omitempty"`
 
@@ -425,7 +443,7 @@
 	// SelfLink: A link back to this item.
 	SelfLink string `json:"selfLink,omitempty"`
 
-	// TeamDriveThemes: A list of themes that are supported for Team Drives.
+	// TeamDriveThemes: Deprecated - use driveThemes instead.
 	TeamDriveThemes []*AboutTeamDriveThemes `json:"teamDriveThemes,omitempty"`
 
 	// User: The authenticated user.
@@ -521,6 +539,40 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+type AboutDriveThemes struct {
+	// BackgroundImageLink: A link to this theme's background image.
+	BackgroundImageLink string `json:"backgroundImageLink,omitempty"`
+
+	// ColorRgb: The color of this theme as an RGB hex string.
+	ColorRgb string `json:"colorRgb,omitempty"`
+
+	// Id: The ID of the theme.
+	Id string `json:"id,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "BackgroundImageLink")
+	// to unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "BackgroundImageLink") to
+	// include in API requests with the JSON null value. By default, fields
+	// with empty values are omitted from API requests. However, any field
+	// with an empty value appearing in NullFields will be sent to the
+	// server as null. It is an error if a field in this list has a
+	// non-empty value. This may be used to include null fields in Patch
+	// requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *AboutDriveThemes) MarshalJSON() ([]byte, error) {
+	type NoMethod AboutDriveThemes
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
 type AboutExportFormats struct {
 	// Source: The content type to convert from.
 	Source string `json:"source,omitempty"`
@@ -917,12 +969,24 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
-// Change: Representation of a change to a file or Team Drive.
+// Change: Representation of a change to a file or shared drive.
 type Change struct {
-	// Deleted: Whether the file or Team Drive has been removed from this
+	// ChangeType: The type of the change. Possible values are file and
+	// drive.
+	ChangeType string `json:"changeType,omitempty"`
+
+	// Deleted: Whether the file or shared drive has been removed from this
 	// list of changes, for example by deletion or loss of access.
 	Deleted bool `json:"deleted,omitempty"`
 
+	// Drive: The updated state of the shared drive. Present if the
+	// changeType is drive, the user is still a member of the shared drive,
+	// and the shared drive has not been deleted.
+	Drive *Drive `json:"drive,omitempty"`
+
+	// DriveId: The ID of the shared drive associated with this change.
+	DriveId string `json:"driveId,omitempty"`
+
 	// File: The updated state of the file. Present if the type is file and
 	// the file has not been removed from this list of changes.
 	File *File `json:"file,omitempty"`
@@ -942,22 +1006,20 @@
 	// SelfLink: A link back to this change.
 	SelfLink string `json:"selfLink,omitempty"`
 
-	// TeamDrive: The updated state of the Team Drive. Present if the type
-	// is teamDrive, the user is still a member of the Team Drive, and the
-	// Team Drive has not been deleted.
+	// TeamDrive: Deprecated - use drive instead.
 	TeamDrive *TeamDrive `json:"teamDrive,omitempty"`
 
-	// TeamDriveId: The ID of the Team Drive associated with this change.
+	// TeamDriveId: Deprecated - use driveId instead.
 	TeamDriveId string `json:"teamDriveId,omitempty"`
 
-	// Type: The type of the change. Possible values are file and teamDrive.
+	// Type: Deprecated - use changeType instead.
 	Type string `json:"type,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
 	// server.
 	googleapi.ServerResponse `json:"-"`
 
-	// ForceSendFields is a list of field names (e.g. "Deleted") to
+	// ForceSendFields is a list of field names (e.g. "ChangeType") to
 	// unconditionally include in API requests. By default, fields with
 	// empty values are omitted from API requests. However, any non-pointer,
 	// non-interface field appearing in ForceSendFields will be sent to the
@@ -965,7 +1027,7 @@
 	// used to include empty fields in Patch requests.
 	ForceSendFields []string `json:"-"`
 
-	// NullFields is a list of field names (e.g. "Deleted") to include in
+	// NullFields is a list of field names (e.g. "ChangeType") to include in
 	// API requests with the JSON null value. By default, fields with empty
 	// values are omitted from API requests. However, any field with an
 	// empty value appearing in NullFields will be sent to the server as
@@ -1480,6 +1542,349 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// Drive: Representation of a shared drive.
+type Drive struct {
+	// BackgroundImageFile: An image file and cropping parameters from which
+	// a background image for this shared drive is set. This is a write only
+	// field; it can only be set on drive.drives.update requests that don't
+	// set themeId. When specified, all fields of the backgroundImageFile
+	// must be set.
+	BackgroundImageFile *DriveBackgroundImageFile `json:"backgroundImageFile,omitempty"`
+
+	// BackgroundImageLink: A short-lived link to this shared drive's
+	// background image.
+	BackgroundImageLink string `json:"backgroundImageLink,omitempty"`
+
+	// Capabilities: Capabilities the current user has on this shared drive.
+	Capabilities *DriveCapabilities `json:"capabilities,omitempty"`
+
+	// ColorRgb: The color of this shared drive as an RGB hex string. It can
+	// only be set on a drive.drives.update request that does not set
+	// themeId.
+	ColorRgb string `json:"colorRgb,omitempty"`
+
+	// CreatedDate: The time at which the shared drive was created (RFC 3339
+	// date-time).
+	CreatedDate string `json:"createdDate,omitempty"`
+
+	// Hidden: Whether the shared drive is hidden from default view.
+	Hidden bool `json:"hidden,omitempty"`
+
+	// Id: The ID of this shared drive which is also the ID of the top level
+	// folder of this shared drive.
+	Id string `json:"id,omitempty"`
+
+	// Kind: This is always drive#drive
+	Kind string `json:"kind,omitempty"`
+
+	// Name: The name of this shared drive.
+	Name string `json:"name,omitempty"`
+
+	// Restrictions: A set of restrictions that apply to this shared drive
+	// or items inside this shared drive.
+	Restrictions *DriveRestrictions `json:"restrictions,omitempty"`
+
+	// ThemeId: The ID of the theme from which the background image and
+	// color will be set. The set of possible driveThemes can be retrieved
+	// from a drive.about.get response. When not specified on a
+	// drive.drives.insert request, a random theme is chosen from which the
+	// background image and color are set. This is a write-only field; it
+	// can only be set on requests that don't set colorRgb or
+	// backgroundImageFile.
+	ThemeId string `json:"themeId,omitempty"`
+
+	// ServerResponse contains the HTTP response code and headers from the
+	// server.
+	googleapi.ServerResponse `json:"-"`
+
+	// ForceSendFields is a list of field names (e.g. "BackgroundImageFile")
+	// to unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "BackgroundImageFile") to
+	// include in API requests with the JSON null value. By default, fields
+	// with empty values are omitted from API requests. However, any field
+	// with an empty value appearing in NullFields will be sent to the
+	// server as null. It is an error if a field in this list has a
+	// non-empty value. This may be used to include null fields in Patch
+	// requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *Drive) MarshalJSON() ([]byte, error) {
+	type NoMethod Drive
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// DriveBackgroundImageFile: An image file and cropping parameters from
+// which a background image for this shared drive is set. This is a
+// write only field; it can only be set on drive.drives.update requests
+// that don't set themeId. When specified, all fields of the
+// backgroundImageFile must be set.
+type DriveBackgroundImageFile struct {
+	// Id: The ID of an image file in Google Drive to use for the background
+	// image.
+	Id string `json:"id,omitempty"`
+
+	// Width: The width of the cropped image in the closed range of 0 to 1.
+	// This value represents the width of the cropped image divided by the
+	// width of the entire image. The height is computed by applying a width
+	// to height aspect ratio of 80 to 9. The resulting image must be at
+	// least 1280 pixels wide and 144 pixels high.
+	Width float64 `json:"width,omitempty"`
+
+	// XCoordinate: The X coordinate of the upper left corner of the
+	// cropping area in the background image. This is a value in the closed
+	// range of 0 to 1. This value represents the horizontal distance from
+	// the left side of the entire image to the left side of the cropping
+	// area divided by the width of the entire image.
+	XCoordinate float64 `json:"xCoordinate,omitempty"`
+
+	// YCoordinate: The Y coordinate of the upper left corner of the
+	// cropping area in the background image. This is a value in the closed
+	// range of 0 to 1. This value represents the vertical distance from the
+	// top side of the entire image to the top side of the cropping area
+	// divided by the height of the entire image.
+	YCoordinate float64 `json:"yCoordinate,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "Id") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "Id") to include in API
+	// requests with the JSON null value. By default, fields with empty
+	// values are omitted from API requests. However, any field with an
+	// empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *DriveBackgroundImageFile) MarshalJSON() ([]byte, error) {
+	type NoMethod DriveBackgroundImageFile
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+func (s *DriveBackgroundImageFile) UnmarshalJSON(data []byte) error {
+	type NoMethod DriveBackgroundImageFile
+	var s1 struct {
+		Width       gensupport.JSONFloat64 `json:"width"`
+		XCoordinate gensupport.JSONFloat64 `json:"xCoordinate"`
+		YCoordinate gensupport.JSONFloat64 `json:"yCoordinate"`
+		*NoMethod
+	}
+	s1.NoMethod = (*NoMethod)(s)
+	if err := json.Unmarshal(data, &s1); err != nil {
+		return err
+	}
+	s.Width = float64(s1.Width)
+	s.XCoordinate = float64(s1.XCoordinate)
+	s.YCoordinate = float64(s1.YCoordinate)
+	return nil
+}
+
+// DriveCapabilities: Capabilities the current user has on this shared
+// drive.
+type DriveCapabilities struct {
+	// CanAddChildren: Whether the current user can add children to folders
+	// in this shared drive.
+	CanAddChildren bool `json:"canAddChildren,omitempty"`
+
+	// CanChangeCopyRequiresWriterPermissionRestriction: Whether the current
+	// user can change the copyRequiresWriterPermission restriction of this
+	// shared drive.
+	CanChangeCopyRequiresWriterPermissionRestriction bool `json:"canChangeCopyRequiresWriterPermissionRestriction,omitempty"`
+
+	// CanChangeDomainUsersOnlyRestriction: Whether the current user can
+	// change the domainUsersOnly restriction of this shared drive.
+	CanChangeDomainUsersOnlyRestriction bool `json:"canChangeDomainUsersOnlyRestriction,omitempty"`
+
+	// CanChangeDriveBackground: Whether the current user can change the
+	// background of this shared drive.
+	CanChangeDriveBackground bool `json:"canChangeDriveBackground,omitempty"`
+
+	// CanChangeDriveMembersOnlyRestriction: Whether the current user can
+	// change the driveMembersOnly restriction of this shared drive.
+	CanChangeDriveMembersOnlyRestriction bool `json:"canChangeDriveMembersOnlyRestriction,omitempty"`
+
+	// CanComment: Whether the current user can comment on files in this
+	// shared drive.
+	CanComment bool `json:"canComment,omitempty"`
+
+	// CanCopy: Whether the current user can copy files in this shared
+	// drive.
+	CanCopy bool `json:"canCopy,omitempty"`
+
+	// CanDeleteChildren: Whether the current user can delete children from
+	// folders in this shared drive.
+	CanDeleteChildren bool `json:"canDeleteChildren,omitempty"`
+
+	// CanDeleteDrive: Whether the current user can delete this shared
+	// drive. Attempting to delete the shared drive may still fail if there
+	// are untrashed items inside the shared drive.
+	CanDeleteDrive bool `json:"canDeleteDrive,omitempty"`
+
+	// CanDownload: Whether the current user can download files in this
+	// shared drive.
+	CanDownload bool `json:"canDownload,omitempty"`
+
+	// CanEdit: Whether the current user can edit files in this shared drive
+	CanEdit bool `json:"canEdit,omitempty"`
+
+	// CanListChildren: Whether the current user can list the children of
+	// folders in this shared drive.
+	CanListChildren bool `json:"canListChildren,omitempty"`
+
+	// CanManageMembers: Whether the current user can add members to this
+	// shared drive or remove them or change their role.
+	CanManageMembers bool `json:"canManageMembers,omitempty"`
+
+	// CanReadRevisions: Whether the current user can read the revisions
+	// resource of files in this shared drive.
+	CanReadRevisions bool `json:"canReadRevisions,omitempty"`
+
+	// CanRename: Whether the current user can rename files or folders in
+	// this shared drive.
+	CanRename bool `json:"canRename,omitempty"`
+
+	// CanRenameDrive: Whether the current user can rename this shared
+	// drive.
+	CanRenameDrive bool `json:"canRenameDrive,omitempty"`
+
+	// CanShare: Whether the current user can share files or folders in this
+	// shared drive.
+	CanShare bool `json:"canShare,omitempty"`
+
+	// CanTrashChildren: Whether the current user can trash children from
+	// folders in this shared drive.
+	CanTrashChildren bool `json:"canTrashChildren,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "CanAddChildren") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "CanAddChildren") to
+	// include in API requests with the JSON null value. By default, fields
+	// with empty values are omitted from API requests. However, any field
+	// with an empty value appearing in NullFields will be sent to the
+	// server as null. It is an error if a field in this list has a
+	// non-empty value. This may be used to include null fields in Patch
+	// requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *DriveCapabilities) MarshalJSON() ([]byte, error) {
+	type NoMethod DriveCapabilities
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// DriveRestrictions: A set of restrictions that apply to this shared
+// drive or items inside this shared drive.
+type DriveRestrictions struct {
+	// AdminManagedRestrictions: Whether administrative privileges on this
+	// shared drive are required to modify restrictions.
+	AdminManagedRestrictions bool `json:"adminManagedRestrictions,omitempty"`
+
+	// CopyRequiresWriterPermission: Whether the options to copy, print, or
+	// download files inside this shared drive, should be disabled for
+	// readers and commenters. When this restriction is set to true, it will
+	// override the similarly named field to true for any file inside this
+	// shared drive.
+	CopyRequiresWriterPermission bool `json:"copyRequiresWriterPermission,omitempty"`
+
+	// DomainUsersOnly: Whether access to this shared drive and items inside
+	// this shared drive is restricted to users of the domain to which this
+	// shared drive belongs. This restriction may be overridden by other
+	// sharing policies controlled outside of this shared drive.
+	DomainUsersOnly bool `json:"domainUsersOnly,omitempty"`
+
+	// DriveMembersOnly: Whether access to items inside this shared drive is
+	// restricted to its members.
+	DriveMembersOnly bool `json:"driveMembersOnly,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g.
+	// "AdminManagedRestrictions") to unconditionally include in API
+	// requests. By default, fields with empty values are omitted from API
+	// requests. However, any non-pointer, non-interface field appearing in
+	// ForceSendFields will be sent to the server regardless of whether the
+	// field is empty or not. This may be used to include empty fields in
+	// Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "AdminManagedRestrictions")
+	// to include in API requests with the JSON null value. By default,
+	// fields with empty values are omitted from API requests. However, any
+	// field with an empty value appearing in NullFields will be sent to the
+	// server as null. It is an error if a field in this list has a
+	// non-empty value. This may be used to include null fields in Patch
+	// requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *DriveRestrictions) MarshalJSON() ([]byte, error) {
+	type NoMethod DriveRestrictions
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// DriveList: A list of shared drives.
+type DriveList struct {
+	// Items: The list of shared drives. If nextPageToken is populated, then
+	// this list may be incomplete and an additional page of results should
+	// be fetched.
+	Items []*Drive `json:"items,omitempty"`
+
+	// Kind: This is always drive#driveList
+	Kind string `json:"kind,omitempty"`
+
+	// NextPageToken: The page token for the next page of shared drives.
+	// This will be absent if the end of the list has been reached. If the
+	// token is rejected for any reason, it should be discarded, and
+	// pagination should be restarted from the first page of results.
+	NextPageToken string `json:"nextPageToken,omitempty"`
+
+	// ServerResponse contains the HTTP response code and headers from the
+	// server.
+	googleapi.ServerResponse `json:"-"`
+
+	// ForceSendFields is a list of field names (e.g. "Items") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "Items") to include in API
+	// requests with the JSON null value. By default, fields with empty
+	// values are omitted from API requests. However, any field with an
+	// empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *DriveList) MarshalJSON() ([]byte, error) {
+	type NoMethod DriveList
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
 // File: The metadata for a file.
 type File struct {
 	// AlternateLink: A link for opening the file in a relevant Google
@@ -1519,10 +1924,14 @@
 	Description string `json:"description,omitempty"`
 
 	// DownloadUrl: Short lived download URL for the file. This field is
-	// only populated for files with content stored in Drive; it is not
-	// populated for Google Docs or shortcut files.
+	// only populated for files with content stored in Google Drive; it is
+	// not populated for Google Docs or shortcut files.
 	DownloadUrl string `json:"downloadUrl,omitempty"`
 
+	// DriveId: ID of the shared drive the file resides in. Only populated
+	// for items in shared drives.
+	DriveId string `json:"driveId,omitempty"`
+
 	// Editable: Deprecated: use capabilities/canEdit.
 	Editable bool `json:"editable,omitempty"`
 
@@ -1541,33 +1950,33 @@
 
 	// FileExtension: The final component of fullFileExtension with trailing
 	// text that does not appear to be part of the extension removed. This
-	// field is only populated for files with content stored in Drive; it is
-	// not populated for Google Docs or shortcut files.
+	// field is only populated for files with content stored in Google
+	// Drive; it is not populated for Google Docs or shortcut files.
 	FileExtension string `json:"fileExtension,omitempty"`
 
 	// FileSize: The size of the file in bytes. This field is only populated
-	// for files with content stored in Drive; it is not populated for
-	// Google Docs or shortcut files.
+	// for files with content stored in Google Drive; it is not populated
+	// for Google Docs or shortcut files.
 	FileSize int64 `json:"fileSize,omitempty,string"`
 
 	// FolderColorRgb: Folder color as an RGB hex string if the file is a
 	// folder. The list of supported colors is available in the
 	// folderColorPalette field of the About resource. If an unsupported
 	// color is specified, it will be changed to the closest color in the
-	// palette. Not populated for Team Drive files.
+	// palette. Not populated for items in shared drives.
 	FolderColorRgb string `json:"folderColorRgb,omitempty"`
 
 	// FullFileExtension: The full file extension; extracted from the title.
 	// May contain multiple concatenated extensions, such as "tar.gz".
 	// Removing an extension from the title does not clear this field;
 	// however, changing the extension on the title does update this field.
-	// This field is only populated for files with content stored in Drive;
-	// it is not populated for Google Docs or shortcut files.
+	// This field is only populated for files with content stored in Google
+	// Drive; it is not populated for Google Docs or shortcut files.
 	FullFileExtension string `json:"fullFileExtension,omitempty"`
 
 	// HasAugmentedPermissions: Whether any users are granted file access
-	// directly on this file. This field is only populated for Team Drive
-	// files.
+	// directly on this file. This field is only populated for items in
+	// shared drives.
 	HasAugmentedPermissions bool `json:"hasAugmentedPermissions,omitempty"`
 
 	// HasThumbnail: Whether this file has a thumbnail. This does not
@@ -1576,8 +1985,8 @@
 	HasThumbnail bool `json:"hasThumbnail,omitempty"`
 
 	// HeadRevisionId: The ID of the file's head revision. This field is
-	// only populated for files with content stored in Drive; it is not
-	// populated for Google Docs or shortcut files.
+	// only populated for files with content stored in Google Drive; it is
+	// not populated for Google Docs or shortcut files.
 	HeadRevisionId string `json:"headRevisionId,omitempty"`
 
 	// IconLink: A link to the file's icon.
@@ -1619,8 +2028,8 @@
 	MarkedViewedByMeDate string `json:"markedViewedByMeDate,omitempty"`
 
 	// Md5Checksum: An MD5 checksum for the content of this file. This field
-	// is only populated for files with content stored in Drive; it is not
-	// populated for Google Docs or shortcut files.
+	// is only populated for files with content stored in Google Drive; it
+	// is not populated for Google Docs or shortcut files.
 	Md5Checksum string `json:"md5Checksum,omitempty"`
 
 	// MimeType: The MIME type of the file. This is only mutable on update
@@ -1645,19 +2054,19 @@
 
 	// OriginalFilename: The original filename of the uploaded content if
 	// available, or else the original value of the title field. This is
-	// only available for files with binary content in Drive.
+	// only available for files with binary content in Google Drive.
 	OriginalFilename string `json:"originalFilename,omitempty"`
 
 	// OwnedByMe: Whether the file is owned by the current user. Not
-	// populated for Team Drive files.
+	// populated for items in shared drives.
 	OwnedByMe bool `json:"ownedByMe,omitempty"`
 
 	// OwnerNames: Name(s) of the owner(s) of this file. Not populated for
-	// Team Drive files.
+	// items in shared drives.
 	OwnerNames []string `json:"ownerNames,omitempty"`
 
-	// Owners: The owner(s) of this file. Not populated for Team Drive
-	// files.
+	// Owners: The owner(s) of this file. Not populated for items in shared
+	// drives.
 	Owners []*User `json:"owners,omitempty"`
 
 	// Parents: Collection of parent folders which contain this file.
@@ -1673,7 +2082,7 @@
 	PermissionIds []string `json:"permissionIds,omitempty"`
 
 	// Permissions: The list of permissions for users with access to this
-	// file. Not populated for Team Drive files.
+	// file. Not populated for items in shared drives.
 	Permissions []*Permission `json:"permissions,omitempty"`
 
 	// Properties: The list of properties.
@@ -1688,8 +2097,8 @@
 	// Shareable: Deprecated: use capabilities/canShare.
 	Shareable bool `json:"shareable,omitempty"`
 
-	// Shared: Whether the file has been shared. Not populated for Team
-	// Drive files.
+	// Shared: Whether the file has been shared. Not populated for items in
+	// shared drives.
 	Shared bool `json:"shared,omitempty"`
 
 	// SharedWithMeDate: Time at which this file was shared with the user
@@ -1704,11 +2113,11 @@
 	// are 'drive', 'appDataFolder' and 'photos'.
 	Spaces []string `json:"spaces,omitempty"`
 
-	// TeamDriveId: ID of the Team Drive the file resides in.
+	// TeamDriveId: Deprecated - use driveId instead.
 	TeamDriveId string `json:"teamDriveId,omitempty"`
 
-	// Thumbnail: A thumbnail for the file. This will only be used if Drive
-	// cannot generate a standard thumbnail.
+	// Thumbnail: A thumbnail for the file. This will only be used if a
+	// standard thumbnail cannot be generated.
 	Thumbnail *FileThumbnail `json:"thumbnail,omitempty"`
 
 	// ThumbnailLink: A short-lived link to the file's thumbnail. Typically
@@ -1721,16 +2130,16 @@
 	ThumbnailVersion int64 `json:"thumbnailVersion,omitempty,string"`
 
 	// Title: The title of this file. Note that for immutable items such as
-	// the top level folders of Team Drives, My Drive root folder, and
+	// the top level folders of shared drives, My Drive root folder, and
 	// Application Data folder the title is constant.
 	Title string `json:"title,omitempty"`
 
 	// TrashedDate: The time that the item was trashed (formatted RFC 3339
-	// timestamp). Only populated for Team Drive files.
+	// timestamp). Only populated for items in shared drives.
 	TrashedDate string `json:"trashedDate,omitempty"`
 
 	// TrashingUser: If the file has been explicitly trashed, the user who
-	// trashed it. Only populated for Team Drive files.
+	// trashed it. Only populated for items in shared drives.
 	TrashingUser *User `json:"trashingUser,omitempty"`
 
 	// UserPermission: The permissions for the authenticated user on this
@@ -1758,7 +2167,7 @@
 	WebViewLink string `json:"webViewLink,omitempty"`
 
 	// WritersCanShare: Whether writers can share the document with other
-	// users. Not populated for Team Drive files.
+	// users. Not populated for items in shared drives.
 	WritersCanShare bool `json:"writersCanShare,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -1806,9 +2215,9 @@
 	// CanComment: Whether the current user can comment on this file.
 	CanComment bool `json:"canComment,omitempty"`
 
-	// CanCopy: Whether the current user can copy this file. For a Team
-	// Drive item, whether the current user can copy non-folder descendants
-	// of this item, or this item itself if it is not a folder.
+	// CanCopy: Whether the current user can copy this file. For an item in
+	// a shared drive, whether the current user can copy non-folder
+	// descendants of this item, or this item itself if it is not a folder.
 	CanCopy bool `json:"canCopy,omitempty"`
 
 	// CanDelete: Whether the current user can delete this file.
@@ -1816,7 +2225,7 @@
 
 	// CanDeleteChildren: Whether the current user can delete children of
 	// this folder. This is false when the item is not a folder. Only
-	// populated for Team Drive items.
+	// populated for items in shared drives.
 	CanDeleteChildren bool `json:"canDeleteChildren,omitempty"`
 
 	// CanDownload: Whether the current user can download this file.
@@ -1829,51 +2238,69 @@
 	// this folder. This is always false when the item is not a folder.
 	CanListChildren bool `json:"canListChildren,omitempty"`
 
-	// CanMoveChildrenOutOfTeamDrive: Whether the current user can move
-	// children of this folder outside of the Team Drive. This is false when
-	// the item is not a folder. Only populated for Team Drive items.
+	// CanMoveChildrenOutOfDrive: Whether the current user can move children
+	// of this folder outside of the shared drive. This is false when the
+	// item is not a folder. Only populated for items in shared drives.
+	CanMoveChildrenOutOfDrive bool `json:"canMoveChildrenOutOfDrive,omitempty"`
+
+	// CanMoveChildrenOutOfTeamDrive: Deprecated - use
+	// canMoveChildrenOutOfDrive instead.
 	CanMoveChildrenOutOfTeamDrive bool `json:"canMoveChildrenOutOfTeamDrive,omitempty"`
 
-	// CanMoveChildrenWithinTeamDrive: Whether the current user can move
-	// children of this folder within the Team Drive. This is false when the
-	// item is not a folder. Only populated for Team Drive items.
+	// CanMoveChildrenWithinDrive: Whether the current user can move
+	// children of this folder within the shared drive. This is false when
+	// the item is not a folder. Only populated for items in shared drives.
+	CanMoveChildrenWithinDrive bool `json:"canMoveChildrenWithinDrive,omitempty"`
+
+	// CanMoveChildrenWithinTeamDrive: Deprecated - use
+	// canMoveChildrenWithinDrive instead.
 	CanMoveChildrenWithinTeamDrive bool `json:"canMoveChildrenWithinTeamDrive,omitempty"`
 
-	// CanMoveItemIntoTeamDrive: Whether the current user can move this item
-	// into a Team Drive. If the item is in a Team Drive, this field is
-	// equivalent to canMoveTeamDriveItem.
+	// CanMoveItemIntoTeamDrive: Deprecated - use canMoveItemOutOfDrive
+	// instead.
 	CanMoveItemIntoTeamDrive bool `json:"canMoveItemIntoTeamDrive,omitempty"`
 
-	// CanMoveItemOutOfTeamDrive: Whether the current user can move this
-	// Team Drive item outside of this Team Drive by changing its parent.
-	// Note that a request to change the parent of the item may still fail
-	// depending on the new parent that is being added. Only populated for
-	// Team Drive items.
+	// CanMoveItemOutOfDrive: Whether the current user can move this item
+	// outside of this drive by changing its parent. Note that a request to
+	// change the parent of the item may still fail depending on the new
+	// parent that is being added.
+	CanMoveItemOutOfDrive bool `json:"canMoveItemOutOfDrive,omitempty"`
+
+	// CanMoveItemOutOfTeamDrive: Deprecated - use canMoveItemOutOfDrive
+	// instead.
 	CanMoveItemOutOfTeamDrive bool `json:"canMoveItemOutOfTeamDrive,omitempty"`
 
-	// CanMoveItemWithinTeamDrive: Whether the current user can move this
-	// Team Drive item within this Team Drive. Note that a request to change
-	// the parent of the item may still fail depending on the new parent
-	// that is being added. Only populated for Team Drive items.
+	// CanMoveItemWithinDrive: Whether the current user can move this item
+	// within this shared drive. Note that a request to change the parent of
+	// the item may still fail depending on the new parent that is being
+	// added. Only populated for items in shared drives.
+	CanMoveItemWithinDrive bool `json:"canMoveItemWithinDrive,omitempty"`
+
+	// CanMoveItemWithinTeamDrive: Deprecated - use canMoveItemWithinDrive
+	// instead.
 	CanMoveItemWithinTeamDrive bool `json:"canMoveItemWithinTeamDrive,omitempty"`
 
-	// CanMoveTeamDriveItem: Deprecated - use canMoveItemWithinTeamDrive or
-	// canMoveItemOutOfTeamDrive instead.
+	// CanMoveTeamDriveItem: Deprecated - use canMoveItemWithinDrive or
+	// canMoveItemOutOfDrive instead.
 	CanMoveTeamDriveItem bool `json:"canMoveTeamDriveItem,omitempty"`
 
+	// CanReadDrive: Whether the current user can read the shared drive to
+	// which this file belongs. Only populated for items in shared drives.
+	CanReadDrive bool `json:"canReadDrive,omitempty"`
+
 	// CanReadRevisions: Whether the current user can read the revisions
-	// resource of this file. For a Team Drive item, whether revisions of
+	// resource of this file. For a shared drive item, whether revisions of
 	// non-folder descendants of this item, or this item itself if it is not
 	// a folder, can be read.
 	CanReadRevisions bool `json:"canReadRevisions,omitempty"`
 
-	// CanReadTeamDrive: Whether the current user can read the Team Drive to
-	// which this file belongs. Only populated for Team Drive files.
+	// CanReadTeamDrive: Deprecated - use canReadDrive instead.
 	CanReadTeamDrive bool `json:"canReadTeamDrive,omitempty"`
 
 	// CanRemoveChildren: Whether the current user can remove children from
 	// this folder. This is always false when the item is not a folder. For
-	// Team Drive items, use canDeleteChildren or canTrashChildren instead.
+	// a folder in a shared drive, use canDeleteChildren or canTrashChildren
+	// instead.
 	CanRemoveChildren bool `json:"canRemoveChildren,omitempty"`
 
 	// CanRename: Whether the current user can rename this file.
@@ -1888,7 +2315,7 @@
 
 	// CanTrashChildren: Whether the current user can trash children of this
 	// folder. This is false when the item is not a folder. Only populated
-	// for Team Drive items.
+	// for items in shared drives.
 	CanTrashChildren bool `json:"canTrashChildren,omitempty"`
 
 	// CanUntrash: Whether the current user can restore this file from
@@ -2161,8 +2588,8 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
-// FileThumbnail: A thumbnail for the file. This will only be used if
-// Drive cannot generate a standard thumbnail.
+// FileThumbnail: A thumbnail for the file. This will only be used if a
+// standard thumbnail cannot be generated.
 type FileThumbnail struct {
 	// Image: The URL-safe Base64 encoded bytes of the thumbnail image. It
 	// should conform to RFC 4648 section 5.
@@ -2237,11 +2664,10 @@
 
 	// IncompleteSearch: Whether the search process was incomplete. If true,
 	// then some search results may be missing, since all documents were not
-	// searched. This may occur when searching multiple Team Drives with the
-	// "default,allTeamDrives" corpora, but all corpora could not be
-	// searched. When this happens, it is suggested that clients narrow
-	// their query by choosing a different corpus such as "default" or
-	// "teamDrive".
+	// searched. This may occur when searching multiple drives with the
+	// "allDrives" corpora, but all corpora could not be searched. When this
+	// happens, it is suggested that clients narrow their query by choosing
+	// a different corpus such as "default" or "drive".
 	IncompleteSearch bool `json:"incompleteSearch,omitempty"`
 
 	// Items: The list of files. If nextPageToken is populated, then this
@@ -2465,6 +2891,11 @@
 	// Name: The name for this permission.
 	Name string `json:"name,omitempty"`
 
+	// PermissionDetails: Details of whether the permissions on this shared
+	// drive item are inherited or directly on this item. This is an
+	// output-only field which is present only for shared drive items.
+	PermissionDetails []*PermissionPermissionDetails `json:"permissionDetails,omitempty"`
+
 	// PhotoLink: A link to the profile photo, if available.
 	PhotoLink string `json:"photoLink,omitempty"`
 
@@ -2480,9 +2911,8 @@
 	// SelfLink: A link back to this permission.
 	SelfLink string `json:"selfLink,omitempty"`
 
-	// TeamDrivePermissionDetails: Details of whether the permissions on
-	// this Team Drive item are inherited or directly on this item. This is
-	// an output-only field which is present only for Team Drive items.
+	// TeamDrivePermissionDetails: Deprecated - use permissionDetails
+	// instead.
 	TeamDrivePermissionDetails []*PermissionTeamDrivePermissionDetails `json:"teamDrivePermissionDetails,omitempty"`
 
 	// Type: The account type. Allowed values are:
@@ -2530,6 +2960,58 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+type PermissionPermissionDetails struct {
+	// AdditionalRoles: Additional roles for this user. Only commenter is
+	// currently possible, though more may be supported in the future.
+	AdditionalRoles []string `json:"additionalRoles,omitempty"`
+
+	// Inherited: Whether this permission is inherited. This field is always
+	// populated. This is an output-only field.
+	Inherited bool `json:"inherited,omitempty"`
+
+	// InheritedFrom: The ID of the item from which this permission is
+	// inherited. This is an output-only field and is only populated for
+	// members of the shared drive.
+	InheritedFrom string `json:"inheritedFrom,omitempty"`
+
+	// PermissionType: The permission type for this user. While new values
+	// may be added in future, the following are currently possible:
+	// - file
+	// - member
+	PermissionType string `json:"permissionType,omitempty"`
+
+	// Role: The primary role for this user. While new values may be added
+	// in the future, the following are currently possible:
+	// - organizer
+	// - fileOrganizer
+	// - writer
+	// - reader
+	Role string `json:"role,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "AdditionalRoles") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "AdditionalRoles") to
+	// include in API requests with the JSON null value. By default, fields
+	// with empty values are omitted from API requests. However, any field
+	// with an empty value appearing in NullFields will be sent to the
+	// server as null. It is an error if a field in this list has a
+	// non-empty value. This may be used to include null fields in Patch
+	// requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *PermissionPermissionDetails) MarshalJSON() ([]byte, error) {
+	type NoMethod PermissionPermissionDetails
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
 type PermissionTeamDrivePermissionDetails struct {
 	// AdditionalRoles: Additional roles for this user. Only commenter is
 	// currently possible, though more may be supported in the future.
@@ -3873,15 +4355,30 @@
 	return c
 }
 
+// DriveId sets the optional parameter "driveId": The shared drive from
+// which the change will be returned.
+func (c *ChangesGetCall) DriveId(driveId string) *ChangesGetCall {
+	c.urlParams_.Set("driveId", driveId)
+	return c
+}
+
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *ChangesGetCall) SupportsAllDrives(supportsAllDrives bool) *ChangesGetCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *ChangesGetCall) SupportsTeamDrives(supportsTeamDrives bool) *ChangesGetCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
 }
 
-// TeamDriveId sets the optional parameter "teamDriveId": The Team Drive
-// from which the change will be returned.
+// TeamDriveId sets the optional parameter "teamDriveId": Deprecated use
+// driveId instead.
 func (c *ChangesGetCall) TeamDriveId(teamDriveId string) *ChangesGetCall {
 	c.urlParams_.Set("teamDriveId", teamDriveId)
 	return c
@@ -3998,14 +4495,25 @@
 	//       "required": true,
 	//       "type": "string"
 	//     },
+	//     "driveId": {
+	//       "description": "The shared drive from which the change will be returned.",
+	//       "location": "query",
+	//       "type": "string"
+	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
 	//     "teamDriveId": {
-	//       "description": "The Team Drive from which the change will be returned.",
+	//       "description": "Deprecated use driveId instead.",
 	//       "location": "query",
 	//       "type": "string"
 	//     }
@@ -4045,16 +4553,31 @@
 	return c
 }
 
+// DriveId sets the optional parameter "driveId": The ID of the shared
+// drive for which the starting pageToken for listing future changes
+// from that shared drive will be returned.
+func (c *ChangesGetStartPageTokenCall) DriveId(driveId string) *ChangesGetStartPageTokenCall {
+	c.urlParams_.Set("driveId", driveId)
+	return c
+}
+
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *ChangesGetStartPageTokenCall) SupportsAllDrives(supportsAllDrives bool) *ChangesGetStartPageTokenCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *ChangesGetStartPageTokenCall) SupportsTeamDrives(supportsTeamDrives bool) *ChangesGetStartPageTokenCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
 }
 
-// TeamDriveId sets the optional parameter "teamDriveId": The ID of the
-// Team Drive for which the starting pageToken for listing future
-// changes from that Team Drive will be returned.
+// TeamDriveId sets the optional parameter "teamDriveId": Deprecated use
+// driveId instead.
 func (c *ChangesGetStartPageTokenCall) TeamDriveId(teamDriveId string) *ChangesGetStartPageTokenCall {
 	c.urlParams_.Set("teamDriveId", teamDriveId)
 	return c
@@ -4159,14 +4682,25 @@
 	//   "httpMethod": "GET",
 	//   "id": "drive.changes.getStartPageToken",
 	//   "parameters": {
+	//     "driveId": {
+	//       "description": "The ID of the shared drive for which the starting pageToken for listing future changes from that shared drive will be returned.",
+	//       "location": "query",
+	//       "type": "string"
+	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
 	//     "teamDriveId": {
-	//       "description": "The ID of the Team Drive for which the starting pageToken for listing future changes from that Team Drive will be returned.",
+	//       "description": "Deprecated use driveId instead.",
 	//       "location": "query",
 	//       "type": "string"
 	//     }
@@ -4199,12 +4733,21 @@
 	header_      http.Header
 }
 
-// List: Lists the changes for a user or Team Drive.
+// List: Lists the changes for a user or shared drive.
 func (r *ChangesService) List() *ChangesListCall {
 	c := &ChangesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	return c
 }
 
+// DriveId sets the optional parameter "driveId": The shared drive from
+// which changes will be returned. If specified the change IDs will be
+// reflective of the shared drive; use the combined drive ID and change
+// ID as an identifier.
+func (c *ChangesListCall) DriveId(driveId string) *ChangesListCall {
+	c.urlParams_.Set("driveId", driveId)
+	return c
+}
+
 // IncludeCorpusRemovals sets the optional parameter
 // "includeCorpusRemovals": Whether changes should include the file
 // resource if the file is still accessible by the user at the time of
@@ -4223,6 +4766,14 @@
 	return c
 }
 
+// IncludeItemsFromAllDrives sets the optional parameter
+// "includeItemsFromAllDrives": Whether both My Drive and shared drive
+// items should be included in results.
+func (c *ChangesListCall) IncludeItemsFromAllDrives(includeItemsFromAllDrives bool) *ChangesListCall {
+	c.urlParams_.Set("includeItemsFromAllDrives", fmt.Sprint(includeItemsFromAllDrives))
+	return c
+}
+
 // IncludeSubscribed sets the optional parameter "includeSubscribed":
 // Whether to include changes outside the My Drive hierarchy in the
 // result. When set to false, changes to files such as those in the
@@ -4234,8 +4785,8 @@
 }
 
 // IncludeTeamDriveItems sets the optional parameter
-// "includeTeamDriveItems": Whether Team Drive files or changes should
-// be included in results.
+// "includeTeamDriveItems": Deprecated use includeItemsFromAllDrives
+// instead.
 func (c *ChangesListCall) IncludeTeamDriveItems(includeTeamDriveItems bool) *ChangesListCall {
 	c.urlParams_.Set("includeTeamDriveItems", fmt.Sprint(includeTeamDriveItems))
 	return c
@@ -4272,17 +4823,23 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *ChangesListCall) SupportsAllDrives(supportsAllDrives bool) *ChangesListCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *ChangesListCall) SupportsTeamDrives(supportsTeamDrives bool) *ChangesListCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
 }
 
-// TeamDriveId sets the optional parameter "teamDriveId": The Team Drive
-// from which changes will be returned. If specified the change IDs will
-// be reflective of the Team Drive; use the combined Team Drive ID and
-// change ID as an identifier.
+// TeamDriveId sets the optional parameter "teamDriveId": Deprecated use
+// driveId instead.
 func (c *ChangesListCall) TeamDriveId(teamDriveId string) *ChangesListCall {
 	c.urlParams_.Set("teamDriveId", teamDriveId)
 	return c
@@ -4383,10 +4940,15 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Lists the changes for a user or Team Drive.",
+	//   "description": "Lists the changes for a user or shared drive.",
 	//   "httpMethod": "GET",
 	//   "id": "drive.changes.list",
 	//   "parameters": {
+	//     "driveId": {
+	//       "description": "The shared drive from which changes will be returned. If specified the change IDs will be reflective of the shared drive; use the combined drive ID and change ID as an identifier.",
+	//       "location": "query",
+	//       "type": "string"
+	//     },
 	//     "includeCorpusRemovals": {
 	//       "default": "false",
 	//       "description": "Whether changes should include the file resource if the file is still accessible by the user at the time of the request, even when a file was removed from the list of changes and there will be no further change entries for this file.",
@@ -4399,6 +4961,12 @@
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
+	//     "includeItemsFromAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether both My Drive and shared drive items should be included in results.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "includeSubscribed": {
 	//       "default": "true",
 	//       "description": "Whether to include changes outside the My Drive hierarchy in the result. When set to false, changes to files such as those in the Application Data folder or shared files which have not been added to My Drive will be omitted from the result.",
@@ -4407,7 +4975,7 @@
 	//     },
 	//     "includeTeamDriveItems": {
 	//       "default": "false",
-	//       "description": "Whether Team Drive files or changes should be included in results.",
+	//       "description": "Deprecated use includeItemsFromAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -4435,14 +5003,20 @@
 	//       "location": "query",
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
 	//     "teamDriveId": {
-	//       "description": "The Team Drive from which changes will be returned. If specified the change IDs will be reflective of the Team Drive; use the combined Team Drive ID and change ID as an identifier.",
+	//       "description": "Deprecated use driveId instead.",
 	//       "location": "query",
 	//       "type": "string"
 	//     }
@@ -4504,6 +5078,15 @@
 	return c
 }
 
+// DriveId sets the optional parameter "driveId": The shared drive from
+// which changes will be returned. If specified the change IDs will be
+// reflective of the shared drive; use the combined drive ID and change
+// ID as an identifier.
+func (c *ChangesWatchCall) DriveId(driveId string) *ChangesWatchCall {
+	c.urlParams_.Set("driveId", driveId)
+	return c
+}
+
 // IncludeCorpusRemovals sets the optional parameter
 // "includeCorpusRemovals": Whether changes should include the file
 // resource if the file is still accessible by the user at the time of
@@ -4522,6 +5105,14 @@
 	return c
 }
 
+// IncludeItemsFromAllDrives sets the optional parameter
+// "includeItemsFromAllDrives": Whether both My Drive and shared drive
+// items should be included in results.
+func (c *ChangesWatchCall) IncludeItemsFromAllDrives(includeItemsFromAllDrives bool) *ChangesWatchCall {
+	c.urlParams_.Set("includeItemsFromAllDrives", fmt.Sprint(includeItemsFromAllDrives))
+	return c
+}
+
 // IncludeSubscribed sets the optional parameter "includeSubscribed":
 // Whether to include changes outside the My Drive hierarchy in the
 // result. When set to false, changes to files such as those in the
@@ -4533,8 +5124,8 @@
 }
 
 // IncludeTeamDriveItems sets the optional parameter
-// "includeTeamDriveItems": Whether Team Drive files or changes should
-// be included in results.
+// "includeTeamDriveItems": Deprecated use includeItemsFromAllDrives
+// instead.
 func (c *ChangesWatchCall) IncludeTeamDriveItems(includeTeamDriveItems bool) *ChangesWatchCall {
 	c.urlParams_.Set("includeTeamDriveItems", fmt.Sprint(includeTeamDriveItems))
 	return c
@@ -4571,17 +5162,23 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *ChangesWatchCall) SupportsAllDrives(supportsAllDrives bool) *ChangesWatchCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *ChangesWatchCall) SupportsTeamDrives(supportsTeamDrives bool) *ChangesWatchCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
 }
 
-// TeamDriveId sets the optional parameter "teamDriveId": The Team Drive
-// from which changes will be returned. If specified the change IDs will
-// be reflective of the Team Drive; use the combined Team Drive ID and
-// change ID as an identifier.
+// TeamDriveId sets the optional parameter "teamDriveId": Deprecated use
+// driveId instead.
 func (c *ChangesWatchCall) TeamDriveId(teamDriveId string) *ChangesWatchCall {
 	c.urlParams_.Set("teamDriveId", teamDriveId)
 	return c
@@ -4678,6 +5275,11 @@
 	//   "httpMethod": "POST",
 	//   "id": "drive.changes.watch",
 	//   "parameters": {
+	//     "driveId": {
+	//       "description": "The shared drive from which changes will be returned. If specified the change IDs will be reflective of the shared drive; use the combined drive ID and change ID as an identifier.",
+	//       "location": "query",
+	//       "type": "string"
+	//     },
 	//     "includeCorpusRemovals": {
 	//       "default": "false",
 	//       "description": "Whether changes should include the file resource if the file is still accessible by the user at the time of the request, even when a file was removed from the list of changes and there will be no further change entries for this file.",
@@ -4690,6 +5292,12 @@
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
+	//     "includeItemsFromAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether both My Drive and shared drive items should be included in results.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "includeSubscribed": {
 	//       "default": "true",
 	//       "description": "Whether to include changes outside the My Drive hierarchy in the result. When set to false, changes to files such as those in the Application Data folder or shared files which have not been added to My Drive will be omitted from the result.",
@@ -4698,7 +5306,7 @@
 	//     },
 	//     "includeTeamDriveItems": {
 	//       "default": "false",
-	//       "description": "Whether Team Drive files or changes should be included in results.",
+	//       "description": "Deprecated use includeItemsFromAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -4726,14 +5334,20 @@
 	//       "location": "query",
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
 	//     "teamDriveId": {
-	//       "description": "The Team Drive from which changes will be returned. If specified the change IDs will be reflective of the Team Drive; use the combined Team Drive ID and change ID as an identifier.",
+	//       "description": "Deprecated use driveId instead.",
 	//       "location": "query",
 	//       "type": "string"
 	//     }
@@ -5148,8 +5762,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *ChildrenInsertCall) SupportsAllDrives(supportsAllDrives bool) *ChildrenInsertCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *ChildrenInsertCall) SupportsTeamDrives(supportsTeamDrives bool) *ChildrenInsertCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -5258,9 +5880,15 @@
 	//       "required": true,
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -6440,6 +7068,1006 @@
 
 }
 
+// method id "drive.drives.delete":
+
+type DrivesDeleteCall struct {
+	s          *Service
+	driveId    string
+	urlParams_ gensupport.URLParams
+	ctx_       context.Context
+	header_    http.Header
+}
+
+// Delete: Permanently deletes a shared drive for which the user is an
+// organizer. The shared drive cannot contain any untrashed items.
+func (r *DrivesService) Delete(driveId string) *DrivesDeleteCall {
+	c := &DrivesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.driveId = driveId
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *DrivesDeleteCall) Fields(s ...googleapi.Field) *DrivesDeleteCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *DrivesDeleteCall) Context(ctx context.Context) *DrivesDeleteCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *DrivesDeleteCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *DrivesDeleteCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	var body io.Reader = nil
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "drives/{driveId}")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("DELETE", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	googleapi.Expand(req.URL, map[string]string{
+		"driveId": c.driveId,
+	})
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "drive.drives.delete" call.
+func (c *DrivesDeleteCall) Do(opts ...googleapi.CallOption) error {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if err != nil {
+		return err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return err
+	}
+	return nil
+	// {
+	//   "description": "Permanently deletes a shared drive for which the user is an organizer. The shared drive cannot contain any untrashed items.",
+	//   "httpMethod": "DELETE",
+	//   "id": "drive.drives.delete",
+	//   "parameterOrder": [
+	//     "driveId"
+	//   ],
+	//   "parameters": {
+	//     "driveId": {
+	//       "description": "The ID of the shared drive.",
+	//       "location": "path",
+	//       "required": true,
+	//       "type": "string"
+	//     }
+	//   },
+	//   "path": "drives/{driveId}",
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/drive"
+	//   ]
+	// }
+
+}
+
+// method id "drive.drives.get":
+
+type DrivesGetCall struct {
+	s            *Service
+	driveId      string
+	urlParams_   gensupport.URLParams
+	ifNoneMatch_ string
+	ctx_         context.Context
+	header_      http.Header
+}
+
+// Get: Gets a shared drive's metadata by ID.
+func (r *DrivesService) Get(driveId string) *DrivesGetCall {
+	c := &DrivesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.driveId = driveId
+	return c
+}
+
+// UseDomainAdminAccess sets the optional parameter
+// "useDomainAdminAccess": Issue the request as a domain administrator;
+// if set to true, then the requester will be granted access if they are
+// an administrator of the domain to which the shared drive belongs.
+func (c *DrivesGetCall) UseDomainAdminAccess(useDomainAdminAccess bool) *DrivesGetCall {
+	c.urlParams_.Set("useDomainAdminAccess", fmt.Sprint(useDomainAdminAccess))
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *DrivesGetCall) Fields(s ...googleapi.Field) *DrivesGetCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// IfNoneMatch sets the optional parameter which makes the operation
+// fail if the object's ETag matches the given value. This is useful for
+// getting updates only after the object has changed since the last
+// request. Use googleapi.IsNotModified to check whether the response
+// error from Do is the result of In-None-Match.
+func (c *DrivesGetCall) IfNoneMatch(entityTag string) *DrivesGetCall {
+	c.ifNoneMatch_ = entityTag
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *DrivesGetCall) Context(ctx context.Context) *DrivesGetCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *DrivesGetCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *DrivesGetCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	if c.ifNoneMatch_ != "" {
+		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
+	}
+	var body io.Reader = nil
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "drives/{driveId}")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("GET", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	googleapi.Expand(req.URL, map[string]string{
+		"driveId": c.driveId,
+	})
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "drive.drives.get" call.
+// Exactly one of *Drive or error will be non-nil. Any non-2xx status
+// code is an error. Response headers are in either
+// *Drive.ServerResponse.Header or (if a response was returned at all)
+// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
+// check whether the returned error was because http.StatusNotModified
+// was returned.
+func (c *DrivesGetCall) Do(opts ...googleapi.CallOption) (*Drive, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &Drive{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Gets a shared drive's metadata by ID.",
+	//   "httpMethod": "GET",
+	//   "id": "drive.drives.get",
+	//   "parameterOrder": [
+	//     "driveId"
+	//   ],
+	//   "parameters": {
+	//     "driveId": {
+	//       "description": "The ID of the shared drive.",
+	//       "location": "path",
+	//       "required": true,
+	//       "type": "string"
+	//     },
+	//     "useDomainAdminAccess": {
+	//       "default": "false",
+	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the shared drive belongs.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     }
+	//   },
+	//   "path": "drives/{driveId}",
+	//   "response": {
+	//     "$ref": "Drive"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/drive",
+	//     "https://www.googleapis.com/auth/drive.readonly"
+	//   ]
+	// }
+
+}
+
+// method id "drive.drives.hide":
+
+type DrivesHideCall struct {
+	s          *Service
+	driveId    string
+	urlParams_ gensupport.URLParams
+	ctx_       context.Context
+	header_    http.Header
+}
+
+// Hide: Hides a shared drive from the default view.
+func (r *DrivesService) Hide(driveId string) *DrivesHideCall {
+	c := &DrivesHideCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.driveId = driveId
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *DrivesHideCall) Fields(s ...googleapi.Field) *DrivesHideCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *DrivesHideCall) Context(ctx context.Context) *DrivesHideCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *DrivesHideCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *DrivesHideCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	var body io.Reader = nil
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "drives/{driveId}/hide")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("POST", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	googleapi.Expand(req.URL, map[string]string{
+		"driveId": c.driveId,
+	})
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "drive.drives.hide" call.
+// Exactly one of *Drive or error will be non-nil. Any non-2xx status
+// code is an error. Response headers are in either
+// *Drive.ServerResponse.Header or (if a response was returned at all)
+// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
+// check whether the returned error was because http.StatusNotModified
+// was returned.
+func (c *DrivesHideCall) Do(opts ...googleapi.CallOption) (*Drive, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &Drive{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Hides a shared drive from the default view.",
+	//   "httpMethod": "POST",
+	//   "id": "drive.drives.hide",
+	//   "parameterOrder": [
+	//     "driveId"
+	//   ],
+	//   "parameters": {
+	//     "driveId": {
+	//       "description": "The ID of the shared drive.",
+	//       "location": "path",
+	//       "required": true,
+	//       "type": "string"
+	//     }
+	//   },
+	//   "path": "drives/{driveId}/hide",
+	//   "response": {
+	//     "$ref": "Drive"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/drive"
+	//   ]
+	// }
+
+}
+
+// method id "drive.drives.insert":
+
+type DrivesInsertCall struct {
+	s          *Service
+	drive      *Drive
+	urlParams_ gensupport.URLParams
+	ctx_       context.Context
+	header_    http.Header
+}
+
+// Insert: Creates a new shared drive.
+func (r *DrivesService) Insert(requestId string, drive *Drive) *DrivesInsertCall {
+	c := &DrivesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.urlParams_.Set("requestId", requestId)
+	c.drive = drive
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *DrivesInsertCall) Fields(s ...googleapi.Field) *DrivesInsertCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *DrivesInsertCall) Context(ctx context.Context) *DrivesInsertCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *DrivesInsertCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *DrivesInsertCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	var body io.Reader = nil
+	body, err := googleapi.WithoutDataWrapper.JSONReader(c.drive)
+	if err != nil {
+		return nil, err
+	}
+	reqHeaders.Set("Content-Type", "application/json")
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "drives")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("POST", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "drive.drives.insert" call.
+// Exactly one of *Drive or error will be non-nil. Any non-2xx status
+// code is an error. Response headers are in either
+// *Drive.ServerResponse.Header or (if a response was returned at all)
+// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
+// check whether the returned error was because http.StatusNotModified
+// was returned.
+func (c *DrivesInsertCall) Do(opts ...googleapi.CallOption) (*Drive, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &Drive{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Creates a new shared drive.",
+	//   "httpMethod": "POST",
+	//   "id": "drive.drives.insert",
+	//   "parameterOrder": [
+	//     "requestId"
+	//   ],
+	//   "parameters": {
+	//     "requestId": {
+	//       "description": "An ID, such as a random UUID, which uniquely identifies this user's request for idempotent creation of a shared drive. A repeated request by the same user and with the same request ID will avoid creating duplicates by attempting to create the same shared drive. If the shared drive already exists a 409 error will be returned.",
+	//       "location": "query",
+	//       "required": true,
+	//       "type": "string"
+	//     }
+	//   },
+	//   "path": "drives",
+	//   "request": {
+	//     "$ref": "Drive"
+	//   },
+	//   "response": {
+	//     "$ref": "Drive"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/drive"
+	//   ]
+	// }
+
+}
+
+// method id "drive.drives.list":
+
+type DrivesListCall struct {
+	s            *Service
+	urlParams_   gensupport.URLParams
+	ifNoneMatch_ string
+	ctx_         context.Context
+	header_      http.Header
+}
+
+// List: Lists the user's shared drives.
+func (r *DrivesService) List() *DrivesListCall {
+	c := &DrivesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	return c
+}
+
+// MaxResults sets the optional parameter "maxResults": Maximum number
+// of shared drives to return.
+func (c *DrivesListCall) MaxResults(maxResults int64) *DrivesListCall {
+	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
+	return c
+}
+
+// PageToken sets the optional parameter "pageToken": Page token for
+// shared drives.
+func (c *DrivesListCall) PageToken(pageToken string) *DrivesListCall {
+	c.urlParams_.Set("pageToken", pageToken)
+	return c
+}
+
+// Q sets the optional parameter "q": Query string for searching shared
+// drives.
+func (c *DrivesListCall) Q(q string) *DrivesListCall {
+	c.urlParams_.Set("q", q)
+	return c
+}
+
+// UseDomainAdminAccess sets the optional parameter
+// "useDomainAdminAccess": Issue the request as a domain administrator;
+// if set to true, then all shared drives of the domain in which the
+// requester is an administrator are returned.
+func (c *DrivesListCall) UseDomainAdminAccess(useDomainAdminAccess bool) *DrivesListCall {
+	c.urlParams_.Set("useDomainAdminAccess", fmt.Sprint(useDomainAdminAccess))
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *DrivesListCall) Fields(s ...googleapi.Field) *DrivesListCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// IfNoneMatch sets the optional parameter which makes the operation
+// fail if the object's ETag matches the given value. This is useful for
+// getting updates only after the object has changed since the last
+// request. Use googleapi.IsNotModified to check whether the response
+// error from Do is the result of In-None-Match.
+func (c *DrivesListCall) IfNoneMatch(entityTag string) *DrivesListCall {
+	c.ifNoneMatch_ = entityTag
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *DrivesListCall) Context(ctx context.Context) *DrivesListCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *DrivesListCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *DrivesListCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	if c.ifNoneMatch_ != "" {
+		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
+	}
+	var body io.Reader = nil
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "drives")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("GET", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "drive.drives.list" call.
+// Exactly one of *DriveList or error will be non-nil. Any non-2xx
+// status code is an error. Response headers are in either
+// *DriveList.ServerResponse.Header or (if a response was returned at
+// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
+// to check whether the returned error was because
+// http.StatusNotModified was returned.
+func (c *DrivesListCall) Do(opts ...googleapi.CallOption) (*DriveList, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &DriveList{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Lists the user's shared drives.",
+	//   "httpMethod": "GET",
+	//   "id": "drive.drives.list",
+	//   "parameters": {
+	//     "maxResults": {
+	//       "default": "10",
+	//       "description": "Maximum number of shared drives to return.",
+	//       "format": "int32",
+	//       "location": "query",
+	//       "maximum": "100",
+	//       "minimum": "1",
+	//       "type": "integer"
+	//     },
+	//     "pageToken": {
+	//       "description": "Page token for shared drives.",
+	//       "location": "query",
+	//       "type": "string"
+	//     },
+	//     "q": {
+	//       "description": "Query string for searching shared drives.",
+	//       "location": "query",
+	//       "type": "string"
+	//     },
+	//     "useDomainAdminAccess": {
+	//       "default": "false",
+	//       "description": "Issue the request as a domain administrator; if set to true, then all shared drives of the domain in which the requester is an administrator are returned.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     }
+	//   },
+	//   "path": "drives",
+	//   "response": {
+	//     "$ref": "DriveList"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/drive",
+	//     "https://www.googleapis.com/auth/drive.readonly"
+	//   ]
+	// }
+
+}
+
+// Pages invokes f for each page of results.
+// A non-nil error returned from f will halt the iteration.
+// The provided context supersedes any context provided to the Context method.
+func (c *DrivesListCall) Pages(ctx context.Context, f func(*DriveList) error) error {
+	c.ctx_ = ctx
+	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
+	for {
+		x, err := c.Do()
+		if err != nil {
+			return err
+		}
+		if err := f(x); err != nil {
+			return err
+		}
+		if x.NextPageToken == "" {
+			return nil
+		}
+		c.PageToken(x.NextPageToken)
+	}
+}
+
+// method id "drive.drives.unhide":
+
+type DrivesUnhideCall struct {
+	s          *Service
+	driveId    string
+	urlParams_ gensupport.URLParams
+	ctx_       context.Context
+	header_    http.Header
+}
+
+// Unhide: Restores a shared drive to the default view.
+func (r *DrivesService) Unhide(driveId string) *DrivesUnhideCall {
+	c := &DrivesUnhideCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.driveId = driveId
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *DrivesUnhideCall) Fields(s ...googleapi.Field) *DrivesUnhideCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *DrivesUnhideCall) Context(ctx context.Context) *DrivesUnhideCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *DrivesUnhideCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *DrivesUnhideCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	var body io.Reader = nil
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "drives/{driveId}/unhide")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("POST", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	googleapi.Expand(req.URL, map[string]string{
+		"driveId": c.driveId,
+	})
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "drive.drives.unhide" call.
+// Exactly one of *Drive or error will be non-nil. Any non-2xx status
+// code is an error. Response headers are in either
+// *Drive.ServerResponse.Header or (if a response was returned at all)
+// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
+// check whether the returned error was because http.StatusNotModified
+// was returned.
+func (c *DrivesUnhideCall) Do(opts ...googleapi.CallOption) (*Drive, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &Drive{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Restores a shared drive to the default view.",
+	//   "httpMethod": "POST",
+	//   "id": "drive.drives.unhide",
+	//   "parameterOrder": [
+	//     "driveId"
+	//   ],
+	//   "parameters": {
+	//     "driveId": {
+	//       "description": "The ID of the shared drive.",
+	//       "location": "path",
+	//       "required": true,
+	//       "type": "string"
+	//     }
+	//   },
+	//   "path": "drives/{driveId}/unhide",
+	//   "response": {
+	//     "$ref": "Drive"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/drive"
+	//   ]
+	// }
+
+}
+
+// method id "drive.drives.update":
+
+type DrivesUpdateCall struct {
+	s          *Service
+	driveId    string
+	drive      *Drive
+	urlParams_ gensupport.URLParams
+	ctx_       context.Context
+	header_    http.Header
+}
+
+// Update: Updates the metadata for a shared drive.
+func (r *DrivesService) Update(driveId string, drive *Drive) *DrivesUpdateCall {
+	c := &DrivesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.driveId = driveId
+	c.drive = drive
+	return c
+}
+
+// UseDomainAdminAccess sets the optional parameter
+// "useDomainAdminAccess": Issue the request as a domain administrator;
+// if set to true, then the requester will be granted access if they are
+// an administrator of the domain to which the shared drive belongs.
+func (c *DrivesUpdateCall) UseDomainAdminAccess(useDomainAdminAccess bool) *DrivesUpdateCall {
+	c.urlParams_.Set("useDomainAdminAccess", fmt.Sprint(useDomainAdminAccess))
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *DrivesUpdateCall) Fields(s ...googleapi.Field) *DrivesUpdateCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *DrivesUpdateCall) Context(ctx context.Context) *DrivesUpdateCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *DrivesUpdateCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *DrivesUpdateCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	var body io.Reader = nil
+	body, err := googleapi.WithoutDataWrapper.JSONReader(c.drive)
+	if err != nil {
+		return nil, err
+	}
+	reqHeaders.Set("Content-Type", "application/json")
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "drives/{driveId}")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("PUT", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	googleapi.Expand(req.URL, map[string]string{
+		"driveId": c.driveId,
+	})
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "drive.drives.update" call.
+// Exactly one of *Drive or error will be non-nil. Any non-2xx status
+// code is an error. Response headers are in either
+// *Drive.ServerResponse.Header or (if a response was returned at all)
+// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
+// check whether the returned error was because http.StatusNotModified
+// was returned.
+func (c *DrivesUpdateCall) Do(opts ...googleapi.CallOption) (*Drive, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &Drive{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Updates the metadata for a shared drive.",
+	//   "httpMethod": "PUT",
+	//   "id": "drive.drives.update",
+	//   "parameterOrder": [
+	//     "driveId"
+	//   ],
+	//   "parameters": {
+	//     "driveId": {
+	//       "description": "The ID of the shared drive.",
+	//       "location": "path",
+	//       "required": true,
+	//       "type": "string"
+	//     },
+	//     "useDomainAdminAccess": {
+	//       "default": "false",
+	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the shared drive belongs.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     }
+	//   },
+	//   "path": "drives/{driveId}",
+	//   "request": {
+	//     "$ref": "Drive"
+	//   },
+	//   "response": {
+	//     "$ref": "Drive"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/drive"
+	//   ]
+	// }
+
+}
+
 // method id "drive.files.copy":
 
 type FilesCopyCall struct {
@@ -6488,8 +8116,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *FilesCopyCall) SupportsAllDrives(supportsAllDrives bool) *FilesCopyCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *FilesCopyCall) SupportsTeamDrives(supportsTeamDrives bool) *FilesCopyCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -6648,9 +8284,15 @@
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -6709,15 +8351,23 @@
 
 // Delete: Permanently deletes a file by ID. Skips the trash. The
 // currently authenticated user must own the file or be an organizer on
-// the parent for Team Drive files.
+// the parent for shared drive files.
 func (r *FilesService) Delete(fileId string) *FilesDeleteCall {
 	c := &FilesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.fileId = fileId
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *FilesDeleteCall) SupportsAllDrives(supportsAllDrives bool) *FilesDeleteCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *FilesDeleteCall) SupportsTeamDrives(supportsTeamDrives bool) *FilesDeleteCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -6783,7 +8433,7 @@
 	}
 	return nil
 	// {
-	//   "description": "Permanently deletes a file by ID. Skips the trash. The currently authenticated user must own the file or be an organizer on the parent for Team Drive files.",
+	//   "description": "Permanently deletes a file by ID. Skips the trash. The currently authenticated user must own the file or be an organizer on the parent for shared drive files.",
 	//   "httpMethod": "DELETE",
 	//   "id": "drive.files.delete",
 	//   "parameterOrder": [
@@ -6796,9 +8446,15 @@
 	//       "required": true,
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -7243,8 +8899,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *FilesGetCall) SupportsAllDrives(supportsAllDrives bool) *FilesGetCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *FilesGetCall) SupportsTeamDrives(supportsTeamDrives bool) *FilesGetCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -7409,9 +9073,15 @@
 	//       "location": "query",
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -7489,8 +9159,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *FilesInsertCall) SupportsAllDrives(supportsAllDrives bool) *FilesInsertCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *FilesInsertCall) SupportsTeamDrives(supportsTeamDrives bool) *FilesInsertCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -7727,9 +9405,15 @@
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -7799,12 +9483,10 @@
 	return c
 }
 
-// Corpora sets the optional parameter "corpora": Comma-separated list
-// of bodies of items (files/documents) to which the query applies.
-// Supported bodies are 'default', 'domain', 'teamDrive' and
-// 'allTeamDrives'. 'allTeamDrives' must be combined with 'default'; all
-// other values must be used in isolation. Prefer 'default' or
-// 'teamDrive' to 'allTeamDrives' for efficiency.
+// Corpora sets the optional parameter "corpora": Bodies of items
+// (files/documents) to which the query applies. Supported bodies are
+// 'default', 'domain', 'drive' and 'allDrives'. Prefer 'default' or
+// 'drive' to 'allDrives' for efficiency.
 func (c *FilesListCall) Corpora(corpora string) *FilesListCall {
 	c.urlParams_.Set("corpora", corpora)
 	return c
@@ -7822,9 +9504,24 @@
 	return c
 }
 
+// DriveId sets the optional parameter "driveId": ID of the shared drive
+// to search.
+func (c *FilesListCall) DriveId(driveId string) *FilesListCall {
+	c.urlParams_.Set("driveId", driveId)
+	return c
+}
+
+// IncludeItemsFromAllDrives sets the optional parameter
+// "includeItemsFromAllDrives": Whether both My Drive and shared drive
+// items should be included in results.
+func (c *FilesListCall) IncludeItemsFromAllDrives(includeItemsFromAllDrives bool) *FilesListCall {
+	c.urlParams_.Set("includeItemsFromAllDrives", fmt.Sprint(includeItemsFromAllDrives))
+	return c
+}
+
 // IncludeTeamDriveItems sets the optional parameter
-// "includeTeamDriveItems": Whether Team Drive items should be included
-// in results.
+// "includeTeamDriveItems": Deprecated use includeItemsFromAllDrives
+// instead.
 func (c *FilesListCall) IncludeTeamDriveItems(includeTeamDriveItems bool) *FilesListCall {
 	c.urlParams_.Set("includeTeamDriveItems", fmt.Sprint(includeTeamDriveItems))
 	return c
@@ -7884,15 +9581,23 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *FilesListCall) SupportsAllDrives(supportsAllDrives bool) *FilesListCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *FilesListCall) SupportsTeamDrives(supportsTeamDrives bool) *FilesListCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
 }
 
-// TeamDriveId sets the optional parameter "teamDriveId": ID of Team
-// Drive to search.
+// TeamDriveId sets the optional parameter "teamDriveId": Deprecated use
+// driveId instead.
 func (c *FilesListCall) TeamDriveId(teamDriveId string) *FilesListCall {
 	c.urlParams_.Set("teamDriveId", teamDriveId)
 	return c
@@ -7998,7 +9703,7 @@
 	//   "id": "drive.files.list",
 	//   "parameters": {
 	//     "corpora": {
-	//       "description": "Comma-separated list of bodies of items (files/documents) to which the query applies. Supported bodies are 'default', 'domain', 'teamDrive' and 'allTeamDrives'. 'allTeamDrives' must be combined with 'default'; all other values must be used in isolation. Prefer 'default' or 'teamDrive' to 'allTeamDrives' for efficiency.",
+	//       "description": "Bodies of items (files/documents) to which the query applies. Supported bodies are 'default', 'domain', 'drive' and 'allDrives'. Prefer 'default' or 'drive' to 'allDrives' for efficiency.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
@@ -8015,9 +9720,20 @@
 	//       "location": "query",
 	//       "type": "string"
 	//     },
+	//     "driveId": {
+	//       "description": "ID of the shared drive to search.",
+	//       "location": "query",
+	//       "type": "string"
+	//     },
+	//     "includeItemsFromAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether both My Drive and shared drive items should be included in results.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "includeTeamDriveItems": {
 	//       "default": "false",
-	//       "description": "Whether Team Drive items should be included in results.",
+	//       "description": "Deprecated use includeItemsFromAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -8062,14 +9778,20 @@
 	//       "location": "query",
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
 	//     "teamDriveId": {
-	//       "description": "ID of Team Drive to search.",
+	//       "description": "Deprecated use driveId instead.",
 	//       "location": "query",
 	//       "type": "string"
 	//     }
@@ -8219,8 +9941,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *FilesPatchCall) SupportsAllDrives(supportsAllDrives bool) *FilesPatchCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *FilesPatchCall) SupportsTeamDrives(supportsTeamDrives bool) *FilesPatchCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -8424,9 +10154,15 @@
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -8489,8 +10225,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *FilesTouchCall) SupportsAllDrives(supportsAllDrives bool) *FilesTouchCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *FilesTouchCall) SupportsTeamDrives(supportsTeamDrives bool) *FilesTouchCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -8594,9 +10338,15 @@
 	//       "required": true,
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -8628,15 +10378,23 @@
 
 // Trash: Moves a file to the trash. The currently authenticated user
 // must own the file or be at least a fileOrganizer on the parent for
-// Team Drive files.
+// shared drive files.
 func (r *FilesService) Trash(fileId string) *FilesTrashCall {
 	c := &FilesTrashCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.fileId = fileId
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *FilesTrashCall) SupportsAllDrives(supportsAllDrives bool) *FilesTrashCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *FilesTrashCall) SupportsTeamDrives(supportsTeamDrives bool) *FilesTrashCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -8727,7 +10485,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Moves a file to the trash. The currently authenticated user must own the file or be at least a fileOrganizer on the parent for Team Drive files.",
+	//   "description": "Moves a file to the trash. The currently authenticated user must own the file or be at least a fileOrganizer on the parent for shared drive files.",
 	//   "httpMethod": "POST",
 	//   "id": "drive.files.trash",
 	//   "parameterOrder": [
@@ -8740,9 +10498,15 @@
 	//       "required": true,
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -8778,8 +10542,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *FilesUntrashCall) SupportsAllDrives(supportsAllDrives bool) *FilesUntrashCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *FilesUntrashCall) SupportsTeamDrives(supportsTeamDrives bool) *FilesUntrashCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -8883,9 +10655,15 @@
 	//       "required": true,
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -9010,8 +10788,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *FilesUpdateCall) SupportsAllDrives(supportsAllDrives bool) *FilesUpdateCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *FilesUpdateCall) SupportsTeamDrives(supportsTeamDrives bool) *FilesUpdateCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -9298,9 +11084,15 @@
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -9393,8 +11185,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *FilesWatchCall) SupportsAllDrives(supportsAllDrives bool) *FilesWatchCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *FilesWatchCall) SupportsTeamDrives(supportsTeamDrives bool) *FilesWatchCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -9551,9 +11351,15 @@
 	//       "location": "query",
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -9874,8 +11680,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *ParentsInsertCall) SupportsAllDrives(supportsAllDrives bool) *ParentsInsertCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *ParentsInsertCall) SupportsTeamDrives(supportsTeamDrives bool) *ParentsInsertCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -9984,9 +11798,15 @@
 	//       "required": true,
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -10165,7 +11985,7 @@
 	header_      http.Header
 }
 
-// Delete: Deletes a permission from a file or Team Drive.
+// Delete: Deletes a permission from a file or shared drive.
 func (r *PermissionsService) Delete(fileId string, permissionId string) *PermissionsDeleteCall {
 	c := &PermissionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.fileId = fileId
@@ -10173,8 +11993,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *PermissionsDeleteCall) SupportsAllDrives(supportsAllDrives bool) *PermissionsDeleteCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *PermissionsDeleteCall) SupportsTeamDrives(supportsTeamDrives bool) *PermissionsDeleteCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -10183,8 +12011,8 @@
 // UseDomainAdminAccess sets the optional parameter
 // "useDomainAdminAccess": Issue the request as a domain administrator;
 // if set to true, then the requester will be granted access if the file
-// ID parameter refers to a Team Drive and the requester is an
-// administrator of the domain to which the Team Drive belongs.
+// ID parameter refers to a shared drive and the requester is an
+// administrator of the domain to which the shared drive belongs.
 func (c *PermissionsDeleteCall) UseDomainAdminAccess(useDomainAdminAccess bool) *PermissionsDeleteCall {
 	c.urlParams_.Set("useDomainAdminAccess", fmt.Sprint(useDomainAdminAccess))
 	return c
@@ -10251,7 +12079,7 @@
 	}
 	return nil
 	// {
-	//   "description": "Deletes a permission from a file or Team Drive.",
+	//   "description": "Deletes a permission from a file or shared drive.",
 	//   "httpMethod": "DELETE",
 	//   "id": "drive.permissions.delete",
 	//   "parameterOrder": [
@@ -10260,7 +12088,7 @@
 	//   ],
 	//   "parameters": {
 	//     "fileId": {
-	//       "description": "The ID for the file or Team Drive.",
+	//       "description": "The ID for the file or shared drive.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -10271,15 +12099,21 @@
 	//       "required": true,
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
 	//     "useDomainAdminAccess": {
 	//       "default": "false",
-	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -10313,8 +12147,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *PermissionsGetCall) SupportsAllDrives(supportsAllDrives bool) *PermissionsGetCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *PermissionsGetCall) SupportsTeamDrives(supportsTeamDrives bool) *PermissionsGetCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -10323,8 +12165,8 @@
 // UseDomainAdminAccess sets the optional parameter
 // "useDomainAdminAccess": Issue the request as a domain administrator;
 // if set to true, then the requester will be granted access if the file
-// ID parameter refers to a Team Drive and the requester is an
-// administrator of the domain to which the Team Drive belongs.
+// ID parameter refers to a shared drive and the requester is an
+// administrator of the domain to which the shared drive belongs.
 func (c *PermissionsGetCall) UseDomainAdminAccess(useDomainAdminAccess bool) *PermissionsGetCall {
 	c.urlParams_.Set("useDomainAdminAccess", fmt.Sprint(useDomainAdminAccess))
 	return c
@@ -10438,7 +12280,7 @@
 	//   ],
 	//   "parameters": {
 	//     "fileId": {
-	//       "description": "The ID for the file or Team Drive.",
+	//       "description": "The ID for the file or shared drive.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -10449,15 +12291,21 @@
 	//       "required": true,
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
 	//     "useDomainAdminAccess": {
 	//       "default": "false",
-	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -10637,7 +12485,7 @@
 	header_    http.Header
 }
 
-// Insert: Inserts a permission for a file or Team Drive.
+// Insert: Inserts a permission for a file or shared drive.
 func (r *PermissionsService) Insert(fileId string, permission *Permission) *PermissionsInsertCall {
 	c := &PermissionsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.fileId = fileId
@@ -10661,8 +12509,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *PermissionsInsertCall) SupportsAllDrives(supportsAllDrives bool) *PermissionsInsertCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *PermissionsInsertCall) SupportsTeamDrives(supportsTeamDrives bool) *PermissionsInsertCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -10671,8 +12527,8 @@
 // UseDomainAdminAccess sets the optional parameter
 // "useDomainAdminAccess": Issue the request as a domain administrator;
 // if set to true, then the requester will be granted access if the file
-// ID parameter refers to a Team Drive and the requester is an
-// administrator of the domain to which the Team Drive belongs.
+// ID parameter refers to a shared drive and the requester is an
+// administrator of the domain to which the shared drive belongs.
 func (c *PermissionsInsertCall) UseDomainAdminAccess(useDomainAdminAccess bool) *PermissionsInsertCall {
 	c.urlParams_.Set("useDomainAdminAccess", fmt.Sprint(useDomainAdminAccess))
 	return c
@@ -10768,7 +12624,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Inserts a permission for a file or Team Drive.",
+	//   "description": "Inserts a permission for a file or shared drive.",
 	//   "httpMethod": "POST",
 	//   "id": "drive.permissions.insert",
 	//   "parameterOrder": [
@@ -10781,7 +12637,7 @@
 	//       "type": "string"
 	//     },
 	//     "fileId": {
-	//       "description": "The ID for the file or Team Drive.",
+	//       "description": "The ID for the file or shared drive.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -10792,15 +12648,21 @@
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
 	//     "useDomainAdminAccess": {
 	//       "default": "false",
-	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -10831,7 +12693,7 @@
 	header_      http.Header
 }
 
-// List: Lists a file's or Team Drive's permissions.
+// List: Lists a file's or shared drive's permissions.
 func (r *PermissionsService) List(fileId string) *PermissionsListCall {
 	c := &PermissionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.fileId = fileId
@@ -10840,8 +12702,9 @@
 
 // MaxResults sets the optional parameter "maxResults": The maximum
 // number of permissions to return per page. When not set for files in a
-// Team Drive, at most 100 results will be returned. When not set for
-// files that are not in a Team Drive, the entire list will be returned.
+// shared drive, at most 100 results will be returned. When not set for
+// files that are not in a shared drive, the entire list will be
+// returned.
 func (c *PermissionsListCall) MaxResults(maxResults int64) *PermissionsListCall {
 	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 	return c
@@ -10855,8 +12718,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *PermissionsListCall) SupportsAllDrives(supportsAllDrives bool) *PermissionsListCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *PermissionsListCall) SupportsTeamDrives(supportsTeamDrives bool) *PermissionsListCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -10865,8 +12736,8 @@
 // UseDomainAdminAccess sets the optional parameter
 // "useDomainAdminAccess": Issue the request as a domain administrator;
 // if set to true, then the requester will be granted access if the file
-// ID parameter refers to a Team Drive and the requester is an
-// administrator of the domain to which the Team Drive belongs.
+// ID parameter refers to a shared drive and the requester is an
+// administrator of the domain to which the shared drive belongs.
 func (c *PermissionsListCall) UseDomainAdminAccess(useDomainAdminAccess bool) *PermissionsListCall {
 	c.urlParams_.Set("useDomainAdminAccess", fmt.Sprint(useDomainAdminAccess))
 	return c
@@ -10970,7 +12841,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Lists a file's or Team Drive's permissions.",
+	//   "description": "Lists a file's or shared drive's permissions.",
 	//   "httpMethod": "GET",
 	//   "id": "drive.permissions.list",
 	//   "parameterOrder": [
@@ -10978,13 +12849,13 @@
 	//   ],
 	//   "parameters": {
 	//     "fileId": {
-	//       "description": "The ID for the file or Team Drive.",
+	//       "description": "The ID for the file or shared drive.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "maxResults": {
-	//       "description": "The maximum number of permissions to return per page. When not set for files in a Team Drive, at most 100 results will be returned. When not set for files that are not in a Team Drive, the entire list will be returned.",
+	//       "description": "The maximum number of permissions to return per page. When not set for files in a shared drive, at most 100 results will be returned. When not set for files that are not in a shared drive, the entire list will be returned.",
 	//       "format": "int32",
 	//       "location": "query",
 	//       "maximum": "100",
@@ -10996,15 +12867,21 @@
 	//       "location": "query",
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
 	//     "useDomainAdminAccess": {
 	//       "default": "false",
-	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -11074,8 +12951,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *PermissionsPatchCall) SupportsAllDrives(supportsAllDrives bool) *PermissionsPatchCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *PermissionsPatchCall) SupportsTeamDrives(supportsTeamDrives bool) *PermissionsPatchCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -11092,8 +12977,8 @@
 // UseDomainAdminAccess sets the optional parameter
 // "useDomainAdminAccess": Issue the request as a domain administrator;
 // if set to true, then the requester will be granted access if the file
-// ID parameter refers to a Team Drive and the requester is an
-// administrator of the domain to which the Team Drive belongs.
+// ID parameter refers to a shared drive and the requester is an
+// administrator of the domain to which the shared drive belongs.
 func (c *PermissionsPatchCall) UseDomainAdminAccess(useDomainAdminAccess bool) *PermissionsPatchCall {
 	c.urlParams_.Set("useDomainAdminAccess", fmt.Sprint(useDomainAdminAccess))
 	return c
@@ -11199,7 +13084,7 @@
 	//   ],
 	//   "parameters": {
 	//     "fileId": {
-	//       "description": "The ID for the file or Team Drive.",
+	//       "description": "The ID for the file or shared drive.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -11216,9 +13101,15 @@
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -11230,7 +13121,7 @@
 	//     },
 	//     "useDomainAdminAccess": {
 	//       "default": "false",
-	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -11278,8 +13169,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *PermissionsUpdateCall) SupportsAllDrives(supportsAllDrives bool) *PermissionsUpdateCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *PermissionsUpdateCall) SupportsTeamDrives(supportsTeamDrives bool) *PermissionsUpdateCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -11296,8 +13195,8 @@
 // UseDomainAdminAccess sets the optional parameter
 // "useDomainAdminAccess": Issue the request as a domain administrator;
 // if set to true, then the requester will be granted access if the file
-// ID parameter refers to a Team Drive and the requester is an
-// administrator of the domain to which the Team Drive belongs.
+// ID parameter refers to a shared drive and the requester is an
+// administrator of the domain to which the shared drive belongs.
 func (c *PermissionsUpdateCall) UseDomainAdminAccess(useDomainAdminAccess bool) *PermissionsUpdateCall {
 	c.urlParams_.Set("useDomainAdminAccess", fmt.Sprint(useDomainAdminAccess))
 	return c
@@ -11403,7 +13302,7 @@
 	//   ],
 	//   "parameters": {
 	//     "fileId": {
-	//       "description": "The ID for the file or Team Drive.",
+	//       "description": "The ID for the file or shared drive.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -11420,9 +13319,15 @@
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -11434,7 +13339,7 @@
 	//     },
 	//     "useDomainAdminAccess": {
 	//       "default": "false",
-	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -14471,8 +16376,7 @@
 	header_     http.Header
 }
 
-// Delete: Permanently deletes a Team Drive for which the user is an
-// organizer. The Team Drive cannot contain any untrashed items.
+// Delete: Deprecated use drives.delete instead.
 func (r *TeamdrivesService) Delete(teamDriveId string) *TeamdrivesDeleteCall {
 	c := &TeamdrivesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.teamDriveId = teamDriveId
@@ -14539,7 +16443,7 @@
 	}
 	return nil
 	// {
-	//   "description": "Permanently deletes a Team Drive for which the user is an organizer. The Team Drive cannot contain any untrashed items.",
+	//   "description": "Deprecated use drives.delete instead.",
 	//   "httpMethod": "DELETE",
 	//   "id": "drive.teamdrives.delete",
 	//   "parameterOrder": [
@@ -14572,7 +16476,7 @@
 	header_      http.Header
 }
 
-// Get: Gets a Team Drive's metadata by ID.
+// Get: Deprecated use drives.get instead.
 func (r *TeamdrivesService) Get(teamDriveId string) *TeamdrivesGetCall {
 	c := &TeamdrivesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.teamDriveId = teamDriveId
@@ -14686,7 +16590,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Gets a Team Drive's metadata by ID.",
+	//   "description": "Deprecated use drives.get instead.",
 	//   "httpMethod": "GET",
 	//   "id": "drive.teamdrives.get",
 	//   "parameterOrder": [
@@ -14728,7 +16632,7 @@
 	header_    http.Header
 }
 
-// Insert: Creates a new Team Drive.
+// Insert: Deprecated use drives.insert instead.
 func (r *TeamdrivesService) Insert(requestId string, teamdrive *TeamDrive) *TeamdrivesInsertCall {
 	c := &TeamdrivesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.urlParams_.Set("requestId", requestId)
@@ -14823,7 +16727,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Creates a new Team Drive.",
+	//   "description": "Deprecated use drives.insert instead.",
 	//   "httpMethod": "POST",
 	//   "id": "drive.teamdrives.insert",
 	//   "parameterOrder": [
@@ -14861,7 +16765,7 @@
 	header_      http.Header
 }
 
-// List: Lists the user's Team Drives.
+// List: Deprecated use drives.list instead.
 func (r *TeamdrivesService) List() *TeamdrivesListCall {
 	c := &TeamdrivesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	return c
@@ -14992,7 +16896,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Lists the user's Team Drives.",
+	//   "description": "Deprecated use drives.list instead.",
 	//   "httpMethod": "GET",
 	//   "id": "drive.teamdrives.list",
 	//   "parameters": {
@@ -15066,7 +16970,7 @@
 	header_     http.Header
 }
 
-// Update: Updates a Team Drive's metadata
+// Update: Deprecated use drives.update instead.
 func (r *TeamdrivesService) Update(teamDriveId string, teamdrive *TeamDrive) *TeamdrivesUpdateCall {
 	c := &TeamdrivesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.teamDriveId = teamDriveId
@@ -15173,7 +17077,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Updates a Team Drive's metadata",
+	//   "description": "Deprecated use drives.update instead.",
 	//   "httpMethod": "PUT",
 	//   "id": "drive.teamdrives.update",
 	//   "parameterOrder": [
diff --git a/drive/v3/drive-api.json b/drive/v3/drive-api.json
index 9e97dae..93e4c38 100644
--- a/drive/v3/drive-api.json
+++ b/drive/v3/drive-api.json
@@ -35,7 +35,7 @@
   "description": "Manages files in Drive including uploading, downloading, searching, detecting changes, and updating sharing permissions.",
   "discoveryVersion": "v1",
   "documentationLink": "https://developers.google.com/drive/",
-  "etag": "\"VPK3KBfpaEgZ16pozGOoMYfKc0U/O0AdRM7pk6dqzK6FPfSwIXw0RMQ\"",
+  "etag": "\"VPK3KBfpaEgZ16pozGOoMYfKc0U/44jf_Jy6fJ0dQtd23H1h52MzqIM\"",
   "icons": {
     "x16": "https://ssl.gstatic.com/docs/doclist/images/drive_icon_16.png",
     "x32": "https://ssl.gstatic.com/docs/doclist/images/drive_icon_32.png"
@@ -121,14 +121,25 @@
           "httpMethod": "GET",
           "id": "drive.changes.getStartPageToken",
           "parameters": {
+            "driveId": {
+              "description": "The ID of the shared drive for which the starting pageToken for listing future changes from that shared drive will be returned.",
+              "location": "query",
+              "type": "string"
+            },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
             "teamDriveId": {
-              "description": "The ID of the Team Drive for which the starting pageToken for listing future changes from that Team Drive will be returned.",
+              "description": "Deprecated use driveId instead.",
               "location": "query",
               "type": "string"
             }
@@ -148,19 +159,30 @@
           ]
         },
         "list": {
-          "description": "Lists the changes for a user or Team Drive.",
+          "description": "Lists the changes for a user or shared drive.",
           "httpMethod": "GET",
           "id": "drive.changes.list",
           "parameterOrder": [
             "pageToken"
           ],
           "parameters": {
+            "driveId": {
+              "description": "The shared drive from which changes will be returned. If specified the change IDs will be reflective of the shared drive; use the combined drive ID and change ID as an identifier.",
+              "location": "query",
+              "type": "string"
+            },
             "includeCorpusRemovals": {
               "default": "false",
               "description": "Whether changes should include the file resource if the file is still accessible by the user at the time of the request, even when a file was removed from the list of changes and there will be no further change entries for this file.",
               "location": "query",
               "type": "boolean"
             },
+            "includeItemsFromAllDrives": {
+              "default": "false",
+              "description": "Whether both My Drive and shared drive items should be included in results.",
+              "location": "query",
+              "type": "boolean"
+            },
             "includeRemoved": {
               "default": "true",
               "description": "Whether to include changes indicating that items have been removed from the list of changes, for example by deletion or loss of access.",
@@ -169,7 +191,7 @@
             },
             "includeTeamDriveItems": {
               "default": "false",
-              "description": "Whether Team Drive files or changes should be included in results.",
+              "description": "Deprecated use includeItemsFromAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
@@ -200,14 +222,20 @@
               "location": "query",
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
             "teamDriveId": {
-              "description": "The Team Drive from which changes will be returned. If specified the change IDs will be reflective of the Team Drive; use the combined Team Drive ID and change ID as an identifier.",
+              "description": "Deprecated use driveId instead.",
               "location": "query",
               "type": "string"
             }
@@ -235,12 +263,23 @@
             "pageToken"
           ],
           "parameters": {
+            "driveId": {
+              "description": "The shared drive from which changes will be returned. If specified the change IDs will be reflective of the shared drive; use the combined drive ID and change ID as an identifier.",
+              "location": "query",
+              "type": "string"
+            },
             "includeCorpusRemovals": {
               "default": "false",
               "description": "Whether changes should include the file resource if the file is still accessible by the user at the time of the request, even when a file was removed from the list of changes and there will be no further change entries for this file.",
               "location": "query",
               "type": "boolean"
             },
+            "includeItemsFromAllDrives": {
+              "default": "false",
+              "description": "Whether both My Drive and shared drive items should be included in results.",
+              "location": "query",
+              "type": "boolean"
+            },
             "includeRemoved": {
               "default": "true",
               "description": "Whether to include changes indicating that items have been removed from the list of changes, for example by deletion or loss of access.",
@@ -249,7 +288,7 @@
             },
             "includeTeamDriveItems": {
               "default": "false",
-              "description": "Whether Team Drive files or changes should be included in results.",
+              "description": "Deprecated use includeItemsFromAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
@@ -280,14 +319,20 @@
               "location": "query",
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
             "teamDriveId": {
-              "description": "The Team Drive from which changes will be returned. If specified the change IDs will be reflective of the Team Drive; use the combined Team Drive ID and change ID as an identifier.",
+              "description": "Deprecated use driveId instead.",
               "location": "query",
               "type": "string"
             }
@@ -517,6 +562,204 @@
         }
       }
     },
+    "drives": {
+      "methods": {
+        "create": {
+          "description": "Creates a new shared drive.",
+          "httpMethod": "POST",
+          "id": "drive.drives.create",
+          "parameterOrder": [
+            "requestId"
+          ],
+          "parameters": {
+            "requestId": {
+              "description": "An ID, such as a random UUID, which uniquely identifies this user's request for idempotent creation of a shared drive. A repeated request by the same user and with the same request ID will avoid creating duplicates by attempting to create the same shared drive. If the shared drive already exists a 409 error will be returned.",
+              "location": "query",
+              "required": true,
+              "type": "string"
+            }
+          },
+          "path": "drives",
+          "request": {
+            "$ref": "Drive"
+          },
+          "response": {
+            "$ref": "Drive"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/drive"
+          ]
+        },
+        "delete": {
+          "description": "Permanently deletes a shared drive for which the user is an organizer. The shared drive cannot contain any untrashed items.",
+          "httpMethod": "DELETE",
+          "id": "drive.drives.delete",
+          "parameterOrder": [
+            "driveId"
+          ],
+          "parameters": {
+            "driveId": {
+              "description": "The ID of the shared drive.",
+              "location": "path",
+              "required": true,
+              "type": "string"
+            }
+          },
+          "path": "drives/{driveId}",
+          "scopes": [
+            "https://www.googleapis.com/auth/drive"
+          ]
+        },
+        "get": {
+          "description": "Gets a shared drive's metadata by ID.",
+          "httpMethod": "GET",
+          "id": "drive.drives.get",
+          "parameterOrder": [
+            "driveId"
+          ],
+          "parameters": {
+            "driveId": {
+              "description": "The ID of the shared drive.",
+              "location": "path",
+              "required": true,
+              "type": "string"
+            },
+            "useDomainAdminAccess": {
+              "default": "false",
+              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the shared drive belongs.",
+              "location": "query",
+              "type": "boolean"
+            }
+          },
+          "path": "drives/{driveId}",
+          "response": {
+            "$ref": "Drive"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/drive",
+            "https://www.googleapis.com/auth/drive.readonly"
+          ]
+        },
+        "hide": {
+          "description": "Hides a shared drive from the default view.",
+          "httpMethod": "POST",
+          "id": "drive.drives.hide",
+          "parameterOrder": [
+            "driveId"
+          ],
+          "parameters": {
+            "driveId": {
+              "description": "The ID of the shared drive.",
+              "location": "path",
+              "required": true,
+              "type": "string"
+            }
+          },
+          "path": "drives/{driveId}/hide",
+          "response": {
+            "$ref": "Drive"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/drive"
+          ]
+        },
+        "list": {
+          "description": "Lists the user's shared drives.",
+          "httpMethod": "GET",
+          "id": "drive.drives.list",
+          "parameters": {
+            "pageSize": {
+              "default": "10",
+              "description": "Maximum number of shared drives to return.",
+              "format": "int32",
+              "location": "query",
+              "maximum": "100",
+              "minimum": "1",
+              "type": "integer"
+            },
+            "pageToken": {
+              "description": "Page token for shared drives.",
+              "location": "query",
+              "type": "string"
+            },
+            "q": {
+              "description": "Query string for searching shared drives.",
+              "location": "query",
+              "type": "string"
+            },
+            "useDomainAdminAccess": {
+              "default": "false",
+              "description": "Issue the request as a domain administrator; if set to true, then all shared drives of the domain in which the requester is an administrator are returned.",
+              "location": "query",
+              "type": "boolean"
+            }
+          },
+          "path": "drives",
+          "response": {
+            "$ref": "DriveList"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/drive",
+            "https://www.googleapis.com/auth/drive.readonly"
+          ]
+        },
+        "unhide": {
+          "description": "Restores a shared drive to the default view.",
+          "httpMethod": "POST",
+          "id": "drive.drives.unhide",
+          "parameterOrder": [
+            "driveId"
+          ],
+          "parameters": {
+            "driveId": {
+              "description": "The ID of the shared drive.",
+              "location": "path",
+              "required": true,
+              "type": "string"
+            }
+          },
+          "path": "drives/{driveId}/unhide",
+          "response": {
+            "$ref": "Drive"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/drive"
+          ]
+        },
+        "update": {
+          "description": "Updates the metadate for a shared drive.",
+          "httpMethod": "PATCH",
+          "id": "drive.drives.update",
+          "parameterOrder": [
+            "driveId"
+          ],
+          "parameters": {
+            "driveId": {
+              "description": "The ID of the shared drive.",
+              "location": "path",
+              "required": true,
+              "type": "string"
+            },
+            "useDomainAdminAccess": {
+              "default": "false",
+              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the shared drive belongs.",
+              "location": "query",
+              "type": "boolean"
+            }
+          },
+          "path": "drives/{driveId}",
+          "request": {
+            "$ref": "Drive"
+          },
+          "response": {
+            "$ref": "Drive"
+          },
+          "scopes": [
+            "https://www.googleapis.com/auth/drive"
+          ]
+        }
+      }
+    },
     "files": {
       "methods": {
         "copy": {
@@ -541,7 +784,7 @@
             },
             "keepRevisionForever": {
               "default": "false",
-              "description": "Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Drive.",
+              "description": "Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Google Drive.",
               "location": "query",
               "type": "boolean"
             },
@@ -550,9 +793,15 @@
               "location": "query",
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             }
@@ -600,7 +849,7 @@
             },
             "keepRevisionForever": {
               "default": "false",
-              "description": "Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Drive.",
+              "description": "Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Google Drive.",
               "location": "query",
               "type": "boolean"
             },
@@ -609,9 +858,15 @@
               "location": "query",
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
@@ -638,7 +893,7 @@
           "supportsSubscription": true
         },
         "delete": {
-          "description": "Permanently deletes a file owned by the user without moving it to the trash. If the file belongs to a Team Drive the user must be an organizer on the parent. If the target is a folder, all descendants owned by the user are also deleted.",
+          "description": "Permanently deletes a file owned by the user without moving it to the trash. If the file belongs to a shared drive the user must be an organizer on the parent. If the target is a folder, all descendants owned by the user are also deleted.",
           "httpMethod": "DELETE",
           "id": "drive.files.delete",
           "parameterOrder": [
@@ -651,9 +906,15 @@
               "required": true,
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             }
@@ -755,9 +1016,15 @@
               "required": true,
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             }
@@ -785,7 +1052,7 @@
           "id": "drive.files.list",
           "parameters": {
             "corpora": {
-              "description": "Comma-separated list of bodies of items (files/documents) to which the query applies. Supported bodies are 'user', 'domain', 'teamDrive' and 'allTeamDrives'. 'allTeamDrives' must be combined with 'user'; all other values must be used in isolation. Prefer 'user' or 'teamDrive' to 'allTeamDrives' for efficiency.",
+              "description": "Bodies of items (files/documents) to which the query applies. Supported bodies are 'user', 'domain', 'drive' and 'allDrives'. Prefer 'user' or 'drive' to 'allDrives' for efficiency.",
               "location": "query",
               "type": "string"
             },
@@ -802,9 +1069,20 @@
               "location": "query",
               "type": "string"
             },
+            "driveId": {
+              "description": "ID of the shared drive to search.",
+              "location": "query",
+              "type": "string"
+            },
+            "includeItemsFromAllDrives": {
+              "default": "false",
+              "description": "Whether both My Drive and shared drive items should be included in results.",
+              "location": "query",
+              "type": "boolean"
+            },
             "includeTeamDriveItems": {
               "default": "false",
-              "description": "Whether Team Drive items should be included in results.",
+              "description": "Deprecated use includeItemsFromAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
@@ -838,14 +1116,20 @@
               "location": "query",
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
             "teamDriveId": {
-              "description": "ID of Team Drive to search.",
+              "description": "Deprecated use driveId instead.",
               "location": "query",
               "type": "string"
             }
@@ -901,7 +1185,7 @@
             },
             "keepRevisionForever": {
               "default": "false",
-              "description": "Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Drive.",
+              "description": "Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Google Drive.",
               "location": "query",
               "type": "boolean"
             },
@@ -915,9 +1199,15 @@
               "location": "query",
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
@@ -964,9 +1254,15 @@
               "required": true,
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             }
@@ -997,7 +1293,7 @@
     "permissions": {
       "methods": {
         "create": {
-          "description": "Creates a permission for a file or Team Drive.",
+          "description": "Creates a permission for a file or shared drive.",
           "httpMethod": "POST",
           "id": "drive.permissions.create",
           "parameterOrder": [
@@ -1010,7 +1306,7 @@
               "type": "string"
             },
             "fileId": {
-              "description": "The ID of the file or Team Drive.",
+              "description": "The ID of the file or shared drive.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -1020,9 +1316,15 @@
               "location": "query",
               "type": "boolean"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
@@ -1034,7 +1336,7 @@
             },
             "useDomainAdminAccess": {
               "default": "false",
-              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
               "location": "query",
               "type": "boolean"
             }
@@ -1061,7 +1363,7 @@
           ],
           "parameters": {
             "fileId": {
-              "description": "The ID of the file or Team Drive.",
+              "description": "The ID of the file or shared drive.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -1072,15 +1374,21 @@
               "required": true,
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
             "useDomainAdminAccess": {
               "default": "false",
-              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
               "location": "query",
               "type": "boolean"
             }
@@ -1112,15 +1420,21 @@
               "required": true,
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
             "useDomainAdminAccess": {
               "default": "false",
-              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
               "location": "query",
               "type": "boolean"
             }
@@ -1139,7 +1453,7 @@
           ]
         },
         "list": {
-          "description": "Lists a file's or Team Drive's permissions.",
+          "description": "Lists a file's or shared drive's permissions.",
           "httpMethod": "GET",
           "id": "drive.permissions.list",
           "parameterOrder": [
@@ -1147,13 +1461,13 @@
           ],
           "parameters": {
             "fileId": {
-              "description": "The ID of the file or Team Drive.",
+              "description": "The ID of the file or shared drive.",
               "location": "path",
               "required": true,
               "type": "string"
             },
             "pageSize": {
-              "description": "The maximum number of permissions to return per page. When not set for files in a Team Drive, at most 100 results will be returned. When not set for files that are not in a Team Drive, the entire list will be returned.",
+              "description": "The maximum number of permissions to return per page. When not set for files in a shared drive, at most 100 results will be returned. When not set for files that are not in a shared drive, the entire list will be returned.",
               "format": "int32",
               "location": "query",
               "maximum": "100",
@@ -1165,15 +1479,21 @@
               "location": "query",
               "type": "string"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
             "useDomainAdminAccess": {
               "default": "false",
-              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
               "location": "query",
               "type": "boolean"
             }
@@ -1201,7 +1521,7 @@
           ],
           "parameters": {
             "fileId": {
-              "description": "The ID of the file or Team Drive.",
+              "description": "The ID of the file or shared drive.",
               "location": "path",
               "required": true,
               "type": "string"
@@ -1218,9 +1538,15 @@
               "location": "query",
               "type": "boolean"
             },
+            "supportsAllDrives": {
+              "default": "false",
+              "description": "Whether the requesting application supports both My Drives and shared drives.",
+              "location": "query",
+              "type": "boolean"
+            },
             "supportsTeamDrives": {
               "default": "false",
-              "description": "Whether the requesting application supports Team Drives.",
+              "description": "Deprecated use supportsAllDrives instead.",
               "location": "query",
               "type": "boolean"
             },
@@ -1232,7 +1558,7 @@
             },
             "useDomainAdminAccess": {
               "default": "false",
-              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+              "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
               "location": "query",
               "type": "boolean"
             }
@@ -1465,7 +1791,7 @@
     "revisions": {
       "methods": {
         "delete": {
-          "description": "Permanently deletes a file version. You can only delete revisions for files with binary content, like images or videos. Revisions for other files, like Google Docs or Sheets, and the last remaining file version can't be deleted.",
+          "description": "Permanently deletes a file version. You can only delete revisions for files with binary content in Google Drive, like images or videos. Revisions for other files, like Google Docs or Sheets, and the last remaining file version can't be deleted.",
           "httpMethod": "DELETE",
           "id": "drive.revisions.delete",
           "parameterOrder": [
@@ -1620,7 +1946,7 @@
     "teamdrives": {
       "methods": {
         "create": {
-          "description": "Creates a new Team Drive.",
+          "description": "Deprecated use drives.create instead.",
           "httpMethod": "POST",
           "id": "drive.teamdrives.create",
           "parameterOrder": [
@@ -1646,7 +1972,7 @@
           ]
         },
         "delete": {
-          "description": "Permanently deletes a Team Drive for which the user is an organizer. The Team Drive cannot contain any untrashed items.",
+          "description": "Deprecated use drives.delete instead.",
           "httpMethod": "DELETE",
           "id": "drive.teamdrives.delete",
           "parameterOrder": [
@@ -1666,7 +1992,7 @@
           ]
         },
         "get": {
-          "description": "Gets a Team Drive's metadata by ID.",
+          "description": "Deprecated use drives.get instead.",
           "httpMethod": "GET",
           "id": "drive.teamdrives.get",
           "parameterOrder": [
@@ -1696,7 +2022,7 @@
           ]
         },
         "list": {
-          "description": "Lists the user's Team Drives.",
+          "description": "Deprecated use drives.list instead.",
           "httpMethod": "GET",
           "id": "drive.teamdrives.list",
           "parameters": {
@@ -1736,7 +2062,7 @@
           ]
         },
         "update": {
-          "description": "Updates a Team Drive's metadata",
+          "description": "Deprecated use drives.update instead",
           "httpMethod": "PATCH",
           "id": "drive.teamdrives.update",
           "parameterOrder": [
@@ -1770,7 +2096,7 @@
       }
     }
   },
-  "revision": "20190404",
+  "revision": "20190416",
   "rootUrl": "https://www.googleapis.com/",
   "schemas": {
     "About": {
@@ -1781,10 +2107,35 @@
           "description": "Whether the user has installed the requesting app.",
           "type": "boolean"
         },
-        "canCreateTeamDrives": {
-          "description": "Whether the user can create Team Drives.",
+        "canCreateDrives": {
+          "description": "Whether the user can create shared drives.",
           "type": "boolean"
         },
+        "canCreateTeamDrives": {
+          "description": "Deprecated - use canCreateDrives instead.",
+          "type": "boolean"
+        },
+        "driveThemes": {
+          "description": "A list of themes that are supported for shared drives.",
+          "items": {
+            "properties": {
+              "backgroundImageLink": {
+                "description": "A link to this theme's background image.",
+                "type": "string"
+              },
+              "colorRgb": {
+                "description": "The color of this theme as an RGB hex string.",
+                "type": "string"
+              },
+              "id": {
+                "description": "The ID of the theme.",
+                "type": "string"
+              }
+            },
+            "type": "object"
+          },
+          "type": "array"
+        },
         "exportFormats": {
           "additionalProperties": {
             "items": {
@@ -1857,7 +2208,7 @@
           "type": "object"
         },
         "teamDriveThemes": {
-          "description": "A list of themes that are supported for Team Drives.",
+          "description": "Deprecated - use driveThemes instead.",
           "items": {
             "properties": {
               "backgroundImageLink": {
@@ -1885,9 +2236,21 @@
       "type": "object"
     },
     "Change": {
-      "description": "A change to a file or Team Drive.",
+      "description": "A change to a file or shared drive.",
       "id": "Change",
       "properties": {
+        "changeType": {
+          "description": "The type of the change. Possible values are file and drive.",
+          "type": "string"
+        },
+        "drive": {
+          "$ref": "Drive",
+          "description": "The updated state of the shared drive. Present if the changeType is drive, the user is still a member of the shared drive, and the shared drive has not been deleted."
+        },
+        "driveId": {
+          "description": "The ID of the shared drive associated with this change.",
+          "type": "string"
+        },
         "file": {
           "$ref": "File",
           "description": "The updated state of the file. Present if the type is file and the file has not been removed from this list of changes."
@@ -1902,15 +2265,15 @@
           "type": "string"
         },
         "removed": {
-          "description": "Whether the file or Team Drive has been removed from this list of changes, for example by deletion or loss of access.",
+          "description": "Whether the file or shared drive has been removed from this list of changes, for example by deletion or loss of access.",
           "type": "boolean"
         },
         "teamDrive": {
           "$ref": "TeamDrive",
-          "description": "The updated state of the Team Drive. Present if the type is teamDrive, the user is still a member of the Team Drive, and the Team Drive has not been removed."
+          "description": "Deprecated - use drive instead."
         },
         "teamDriveId": {
-          "description": "The ID of the Team Drive associated with this change.",
+          "description": "Deprecated - use driveId instead.",
           "type": "string"
         },
         "time": {
@@ -1919,7 +2282,7 @@
           "type": "string"
         },
         "type": {
-          "description": "The type of the change. Possible values are file and teamDrive.",
+          "description": "Deprecated - use changeType instead.",
           "type": "string"
         }
       },
@@ -2105,6 +2468,195 @@
       },
       "type": "object"
     },
+    "Drive": {
+      "description": "Representation of a shared drive.",
+      "id": "Drive",
+      "properties": {
+        "backgroundImageFile": {
+          "description": "An image file and cropping parameters from which a background image for this shared drive is set. This is a write only field; it can only be set on drive.drives.update requests that don't set themeId. When specified, all fields of the backgroundImageFile must be set.",
+          "properties": {
+            "id": {
+              "description": "The ID of an image file in Google Drive to use for the background image.",
+              "type": "string"
+            },
+            "width": {
+              "description": "The width of the cropped image in the closed range of 0 to 1. This value represents the width of the cropped image divided by the width of the entire image. The height is computed by applying a width to height aspect ratio of 80 to 9. The resulting image must be at least 1280 pixels wide and 144 pixels high.",
+              "format": "float",
+              "type": "number"
+            },
+            "xCoordinate": {
+              "description": "The X coordinate of the upper left corner of the cropping area in the background image. This is a value in the closed range of 0 to 1. This value represents the horizontal distance from the left side of the entire image to the left side of the cropping area divided by the width of the entire image.",
+              "format": "float",
+              "type": "number"
+            },
+            "yCoordinate": {
+              "description": "The Y coordinate of the upper left corner of the cropping area in the background image. This is a value in the closed range of 0 to 1. This value represents the vertical distance from the top side of the entire image to the top side of the cropping area divided by the height of the entire image.",
+              "format": "float",
+              "type": "number"
+            }
+          },
+          "type": "object"
+        },
+        "backgroundImageLink": {
+          "description": "A short-lived link to this shared drive's background image.",
+          "type": "string"
+        },
+        "capabilities": {
+          "description": "Capabilities the current user has on this shared drive.",
+          "properties": {
+            "canAddChildren": {
+              "description": "Whether the current user can add children to folders in this shared drive.",
+              "type": "boolean"
+            },
+            "canChangeCopyRequiresWriterPermissionRestriction": {
+              "description": "Whether the current user can change the copyRequiresWriterPermission restriction of this shared drive.",
+              "type": "boolean"
+            },
+            "canChangeDomainUsersOnlyRestriction": {
+              "description": "Whether the current user can change the domainUsersOnly restriction of this shared drive.",
+              "type": "boolean"
+            },
+            "canChangeDriveBackground": {
+              "description": "Whether the current user can change the background of this shared drive.",
+              "type": "boolean"
+            },
+            "canChangeDriveMembersOnlyRestriction": {
+              "description": "Whether the current user can change the driveMembersOnly restriction of this shared drive.",
+              "type": "boolean"
+            },
+            "canComment": {
+              "description": "Whether the current user can comment on files in this shared drive.",
+              "type": "boolean"
+            },
+            "canCopy": {
+              "description": "Whether the current user can copy files in this shared drive.",
+              "type": "boolean"
+            },
+            "canDeleteChildren": {
+              "description": "Whether the current user can delete children from folders in this shared drive.",
+              "type": "boolean"
+            },
+            "canDeleteDrive": {
+              "description": "Whether the current user can delete this shared drive. Attempting to delete the shared drive may still fail if there are untrashed items inside the shared drive.",
+              "type": "boolean"
+            },
+            "canDownload": {
+              "description": "Whether the current user can download files in this shared drive.",
+              "type": "boolean"
+            },
+            "canEdit": {
+              "description": "Whether the current user can edit files in this shared drive",
+              "type": "boolean"
+            },
+            "canListChildren": {
+              "description": "Whether the current user can list the children of folders in this shared drive.",
+              "type": "boolean"
+            },
+            "canManageMembers": {
+              "description": "Whether the current user can add members to this shared drive or remove them or change their role.",
+              "type": "boolean"
+            },
+            "canReadRevisions": {
+              "description": "Whether the current user can read the revisions resource of files in this shared drive.",
+              "type": "boolean"
+            },
+            "canRename": {
+              "description": "Whether the current user can rename files or folders in this shared drive.",
+              "type": "boolean"
+            },
+            "canRenameDrive": {
+              "description": "Whether the current user can rename this shared drive.",
+              "type": "boolean"
+            },
+            "canShare": {
+              "description": "Whether the current user can share files or folders in this shared drive.",
+              "type": "boolean"
+            },
+            "canTrashChildren": {
+              "description": "Whether the current user can trash children from folders in this shared drive.",
+              "type": "boolean"
+            }
+          },
+          "type": "object"
+        },
+        "colorRgb": {
+          "description": "The color of this shared drive as an RGB hex string. It can only be set on a drive.drives.update request that does not set themeId.",
+          "type": "string"
+        },
+        "createdTime": {
+          "description": "The time at which the shared drive was created (RFC 3339 date-time).",
+          "format": "date-time",
+          "type": "string"
+        },
+        "hidden": {
+          "description": "Whether the shared drive is hidden from default view.",
+          "type": "boolean"
+        },
+        "id": {
+          "description": "The ID of this shared drive which is also the ID of the top level folder of this shared drive.",
+          "type": "string"
+        },
+        "kind": {
+          "default": "drive#drive",
+          "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#drive\".",
+          "type": "string"
+        },
+        "name": {
+          "description": "The name of this shared drive.",
+          "type": "string"
+        },
+        "restrictions": {
+          "description": "A set of restrictions that apply to this shared drive or items inside this shared drive.",
+          "properties": {
+            "adminManagedRestrictions": {
+              "description": "Whether administrative privileges on this shared drive are required to modify restrictions.",
+              "type": "boolean"
+            },
+            "copyRequiresWriterPermission": {
+              "description": "Whether the options to copy, print, or download files inside this shared drive, should be disabled for readers and commenters. When this restriction is set to true, it will override the similarly named field to true for any file inside this shared drive.",
+              "type": "boolean"
+            },
+            "domainUsersOnly": {
+              "description": "Whether access to this shared drive and items inside this shared drive is restricted to users of the domain to which this shared drive belongs. This restriction may be overridden by other sharing policies controlled outside of this shared drive.",
+              "type": "boolean"
+            },
+            "driveMembersOnly": {
+              "description": "Whether access to items inside this shared drive is restricted to its members.",
+              "type": "boolean"
+            }
+          },
+          "type": "object"
+        },
+        "themeId": {
+          "description": "The ID of the theme from which the background image and color will be set. The set of possible driveThemes can be retrieved from a drive.about.get response. When not specified on a drive.drives.create request, a random theme is chosen from which the background image and color are set. This is a write-only field; it can only be set on requests that don't set colorRgb or backgroundImageFile.",
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
+    "DriveList": {
+      "description": "A list of shared drives.",
+      "id": "DriveList",
+      "properties": {
+        "drives": {
+          "description": "The list of shared drives. If nextPageToken is populated, then this list may be incomplete and an additional page of results should be fetched.",
+          "items": {
+            "$ref": "Drive"
+          },
+          "type": "array"
+        },
+        "kind": {
+          "default": "drive#driveList",
+          "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#driveList\".",
+          "type": "string"
+        },
+        "nextPageToken": {
+          "description": "The page token for the next page of shared drives. This will be absent if the end of the list has been reached. If the token is rejected for any reason, it should be discarded, and pagination should be restarted from the first page of results.",
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
     "File": {
       "description": "The metadata for a file.",
       "id": "File",
@@ -2136,7 +2688,7 @@
               "type": "boolean"
             },
             "canCopy": {
-              "description": "Whether the current user can copy this file. For a Team Drive item, whether the current user can copy non-folder descendants of this item, or this item itself if it is not a folder.",
+              "description": "Whether the current user can copy this file. For an item in a shared drive, whether the current user can copy non-folder descendants of this item, or this item itself if it is not a folder.",
               "type": "boolean"
             },
             "canDelete": {
@@ -2144,7 +2696,7 @@
               "type": "boolean"
             },
             "canDeleteChildren": {
-              "description": "Whether the current user can delete children of this folder. This is false when the item is not a folder. Only populated for Team Drive items.",
+              "description": "Whether the current user can delete children of this folder. This is false when the item is not a folder. Only populated for items in shared drives.",
               "type": "boolean"
             },
             "canDownload": {
@@ -2159,40 +2711,60 @@
               "description": "Whether the current user can list the children of this folder. This is always false when the item is not a folder.",
               "type": "boolean"
             },
+            "canMoveChildrenOutOfDrive": {
+              "description": "Whether the current user can move children of this folder outside of the shared drive. This is false when the item is not a folder. Only populated for items in shared drives.",
+              "type": "boolean"
+            },
             "canMoveChildrenOutOfTeamDrive": {
-              "description": "Whether the current user can move children of this folder outside of the Team Drive. This is false when the item is not a folder. Only populated for Team Drive items.",
+              "description": "Deprecated - use canMoveChildrenOutOfDrive instead.",
+              "type": "boolean"
+            },
+            "canMoveChildrenWithinDrive": {
+              "description": "Whether the current user can move children of this folder within the shared drive. This is false when the item is not a folder. Only populated for items in shared drives.",
               "type": "boolean"
             },
             "canMoveChildrenWithinTeamDrive": {
-              "description": "Whether the current user can move children of this folder within the Team Drive. This is false when the item is not a folder. Only populated for Team Drive items.",
+              "description": "Deprecated - use canMoveChildrenWithinDrive instead.",
               "type": "boolean"
             },
             "canMoveItemIntoTeamDrive": {
-              "description": "Whether the current user can move this item into a Team Drive. If the item is in a Team Drive, this field is equivalent to canMoveTeamDriveItem.",
+              "description": "Deprecated - use canMoveItemOutOfDrive instead.",
+              "type": "boolean"
+            },
+            "canMoveItemOutOfDrive": {
+              "description": "Whether the current user can move this item outside of this drive by changing its parent. Note that a request to change the parent of the item may still fail depending on the new parent that is being added.",
               "type": "boolean"
             },
             "canMoveItemOutOfTeamDrive": {
-              "description": "Whether the current user can move this Team Drive item outside of this Team Drive by changing its parent. Note that a request to change the parent of the item may still fail depending on the new parent that is being added. Only populated for Team Drive items.",
+              "description": "Deprecated - use canMoveItemOutOfDrive instead.",
+              "type": "boolean"
+            },
+            "canMoveItemWithinDrive": {
+              "description": "Whether the current user can move this item within this shared drive. Note that a request to change the parent of the item may still fail depending on the new parent that is being added. Only populated for items in shared drives.",
               "type": "boolean"
             },
             "canMoveItemWithinTeamDrive": {
-              "description": "Whether the current user can move this Team Drive item within this Team Drive. Note that a request to change the parent of the item may still fail depending on the new parent that is being added. Only populated for Team Drive items.",
+              "description": "Deprecated - use canMoveItemWithinDrive instead.",
               "type": "boolean"
             },
             "canMoveTeamDriveItem": {
-              "description": "Deprecated - use canMoveItemWithinTeamDrive or canMoveItemOutOfTeamDrive instead.",
+              "description": "Deprecated - use canMoveItemWithinDrive or canMoveItemOutOfDrive instead.",
+              "type": "boolean"
+            },
+            "canReadDrive": {
+              "description": "Whether the current user can read the shared drive to which this file belongs. Only populated for items in shared drives.",
               "type": "boolean"
             },
             "canReadRevisions": {
-              "description": "Whether the current user can read the revisions resource of this file. For a Team Drive item, whether revisions of non-folder descendants of this item, or this item itself if it is not a folder, can be read.",
+              "description": "Whether the current user can read the revisions resource of this file. For a shared drive item, whether revisions of non-folder descendants of this item, or this item itself if it is not a folder, can be read.",
               "type": "boolean"
             },
             "canReadTeamDrive": {
-              "description": "Whether the current user can read the Team Drive to which this file belongs. Only populated for Team Drive files.",
+              "description": "Deprecated - use canReadDrive instead.",
               "type": "boolean"
             },
             "canRemoveChildren": {
-              "description": "Whether the current user can remove children from this folder. This is always false when the item is not a folder. For Team Drive items, use canDeleteChildren or canTrashChildren instead.",
+              "description": "Whether the current user can remove children from this folder. This is always false when the item is not a folder. For a folder in a shared drive, use canDeleteChildren or canTrashChildren instead.",
               "type": "boolean"
             },
             "canRename": {
@@ -2208,7 +2780,7 @@
               "type": "boolean"
             },
             "canTrashChildren": {
-              "description": "Whether the current user can trash children of this folder. This is false when the item is not a folder. Only populated for Team Drive items.",
+              "description": "Whether the current user can trash children of this folder. This is false when the item is not a folder. Only populated for items in shared drives.",
               "type": "boolean"
             },
             "canUntrash": {
@@ -2226,7 +2798,7 @@
               "type": "string"
             },
             "thumbnail": {
-              "description": "A thumbnail for the file. This will only be used if Drive cannot generate a standard thumbnail.",
+              "description": "A thumbnail for the file. This will only be used if Google Drive cannot generate a standard thumbnail.",
               "properties": {
                 "image": {
                   "description": "The thumbnail data encoded with URL-safe Base64 (RFC 4648 section 5).",
@@ -2256,6 +2828,10 @@
           "description": "A short description of the file.",
           "type": "string"
         },
+        "driveId": {
+          "description": "ID of the shared drive the file resides in. Only populated for items in shared drives.",
+          "type": "string"
+        },
         "explicitlyTrashed": {
           "description": "Whether the file has been explicitly trashed, as opposed to recursively trashed from a parent folder.",
           "type": "boolean"
@@ -2269,7 +2845,7 @@
           "type": "object"
         },
         "fileExtension": {
-          "description": "The final component of fullFileExtension. This is only available for files with binary content in Drive.",
+          "description": "The final component of fullFileExtension. This is only available for files with binary content in Google Drive.",
           "type": "string"
         },
         "folderColorRgb": {
@@ -2277,11 +2853,11 @@
           "type": "string"
         },
         "fullFileExtension": {
-          "description": "The full file extension extracted from the name field. May contain multiple concatenated extensions, such as \"tar.gz\". This is only available for files with binary content in Drive.\nThis is automatically updated when the name field changes, however it is not cleared if the new name does not contain a valid extension.",
+          "description": "The full file extension extracted from the name field. May contain multiple concatenated extensions, such as \"tar.gz\". This is only available for files with binary content in Google Drive.\nThis is automatically updated when the name field changes, however it is not cleared if the new name does not contain a valid extension.",
           "type": "string"
         },
         "hasAugmentedPermissions": {
-          "description": "Whether any users are granted file access directly on this file. This field is only populated for Team Drive files.",
+          "description": "Whether any users are granted file access directly on this file. This field is only populated for shared drive files.",
           "type": "boolean"
         },
         "hasThumbnail": {
@@ -2289,7 +2865,7 @@
           "type": "boolean"
         },
         "headRevisionId": {
-          "description": "The ID of the file's head revision. This is currently only available for files with binary content in Drive.",
+          "description": "The ID of the file's head revision. This is currently only available for files with binary content in Google Drive.",
           "type": "string"
         },
         "iconLink": {
@@ -2431,11 +3007,11 @@
           "description": "The last user to modify the file."
         },
         "md5Checksum": {
-          "description": "The MD5 checksum for the content of the file. This is only applicable to files with binary content in Drive.",
+          "description": "The MD5 checksum for the content of the file. This is only applicable to files with binary content in Google Drive.",
           "type": "string"
         },
         "mimeType": {
-          "description": "The MIME type of the file.\nDrive will attempt to automatically detect an appropriate value from uploaded content if no value is provided. The value cannot be changed unless a new revision is uploaded.\nIf a file is created with a Google Doc MIME type, the uploaded content will be imported if possible. The supported import formats are published in the About resource.",
+          "description": "The MIME type of the file.\nGoogle Drive will attempt to automatically detect an appropriate value from uploaded content if no value is provided. The value cannot be changed unless a new revision is uploaded.\nIf a file is created with a Google Doc MIME type, the uploaded content will be imported if possible. The supported import formats are published in the About resource.",
           "type": "string"
         },
         "modifiedByMe": {
@@ -2453,19 +3029,19 @@
           "type": "string"
         },
         "name": {
-          "description": "The name of the file. This is not necessarily unique within a folder. Note that for immutable items such as the top level folders of Team Drives, My Drive root folder, and Application Data folder the name is constant.",
+          "description": "The name of the file. This is not necessarily unique within a folder. Note that for immutable items such as the top level folders of shared drives, My Drive root folder, and Application Data folder the name is constant.",
           "type": "string"
         },
         "originalFilename": {
-          "description": "The original filename of the uploaded content if available, or else the original value of the name field. This is only available for files with binary content in Drive.",
+          "description": "The original filename of the uploaded content if available, or else the original value of the name field. This is only available for files with binary content in Google Drive.",
           "type": "string"
         },
         "ownedByMe": {
-          "description": "Whether the user owns the file. Not populated for Team Drive files.",
+          "description": "Whether the user owns the file. Not populated for items in shared drives.",
           "type": "boolean"
         },
         "owners": {
-          "description": "The owners of the file. Currently, only certain legacy files may have more than one owner. Not populated for Team Drive files.",
+          "description": "The owners of the file. Currently, only certain legacy files may have more than one owner. Not populated for items in shared drives.",
           "items": {
             "$ref": "User"
           },
@@ -2486,7 +3062,7 @@
           "type": "array"
         },
         "permissions": {
-          "description": "The full list of permissions for the file. This is only available if the requesting user can share the file. Not populated for Team Drive files.",
+          "description": "The full list of permissions for the file. This is only available if the requesting user can share the file. Not populated for items in shared drives.",
           "items": {
             "$ref": "Permission"
           },
@@ -2505,7 +3081,7 @@
           "type": "string"
         },
         "shared": {
-          "description": "Whether the file has been shared. Not populated for Team Drive files.",
+          "description": "Whether the file has been shared. Not populated for items in shared drives.",
           "type": "boolean"
         },
         "sharedWithMeTime": {
@@ -2518,7 +3094,7 @@
           "description": "The user who shared the file with the requesting user, if applicable."
         },
         "size": {
-          "description": "The size of the file's content in bytes. This is only applicable to files with binary content in Drive.",
+          "description": "The size of the file's content in bytes. This is only applicable to files with binary content in Google Drive.",
           "format": "int64",
           "type": "string"
         },
@@ -2534,7 +3110,7 @@
           "type": "boolean"
         },
         "teamDriveId": {
-          "description": "ID of the Team Drive the file resides in.",
+          "description": "Deprecated - use driveId instead.",
           "type": "string"
         },
         "thumbnailLink": {
@@ -2551,13 +3127,13 @@
           "type": "boolean"
         },
         "trashedTime": {
-          "description": "The time that the item was trashed (RFC 3339 date-time). Only populated for Team Drive files.",
+          "description": "The time that the item was trashed (RFC 3339 date-time). Only populated for items in shared drives.",
           "format": "date-time",
           "type": "string"
         },
         "trashingUser": {
           "$ref": "User",
-          "description": "If the file has been explicitly trashed, the user who trashed it. Only populated for Team Drive files."
+          "description": "If the file has been explicitly trashed, the user who trashed it. Only populated for items in shared drives."
         },
         "version": {
           "description": "A monotonically increasing version number for the file. This reflects every change made to the file on the server, even those not visible to the user.",
@@ -2599,7 +3175,7 @@
           "type": "boolean"
         },
         "webContentLink": {
-          "description": "A link for downloading the content of the file in a browser. This is only available for files with binary content in Drive.",
+          "description": "A link for downloading the content of the file in a browser. This is only available for files with binary content in Google Drive.",
           "type": "string"
         },
         "webViewLink": {
@@ -2607,7 +3183,7 @@
           "type": "string"
         },
         "writersCanShare": {
-          "description": "Whether users with only writer permission can modify the file's permissions. Not populated for Team Drive files.",
+          "description": "Whether users with only writer permission can modify the file's permissions. Not populated for items in shared drives.",
           "type": "boolean"
         }
       },
@@ -2625,7 +3201,7 @@
           "type": "array"
         },
         "incompleteSearch": {
-          "description": "Whether the search process was incomplete. If true, then some search results may be missing, since all documents were not searched. This may occur when searching multiple Team Drives with the \"user,allTeamDrives\" corpora, but all corpora could not be searched. When this happens, it is suggested that clients narrow their query by choosing a different corpus such as \"user\" or \"teamDrive\".",
+          "description": "Whether the search process was incomplete. If true, then some search results may be missing, since all documents were not searched. This may occur when searching multiple drives with the \"allDrives\" corpora, but all corpora could not be searched. When this happens, it is suggested that clients narrow their query by choosing a different corpus such as \"user\" or \"drive\".",
           "type": "boolean"
         },
         "kind": {
@@ -2701,6 +3277,31 @@
           "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#permission\".",
           "type": "string"
         },
+        "permissionDetails": {
+          "description": "Details of whether the permissions on this shared drive item are inherited or directly on this item. This is an output-only field which is present only for shared drive items.",
+          "items": {
+            "properties": {
+              "inherited": {
+                "description": "Whether this permission is inherited. This field is always populated. This is an output-only field.",
+                "type": "boolean"
+              },
+              "inheritedFrom": {
+                "description": "The ID of the item from which this permission is inherited. This is an output-only field and is only populated for members of the shared drive.",
+                "type": "string"
+              },
+              "permissionType": {
+                "description": "The permission type for this user. While new values may be added in future, the following are currently possible:  \n- file \n- member",
+                "type": "string"
+              },
+              "role": {
+                "description": "The primary role for this user. While new values may be added in the future, the following are currently possible:  \n- organizer \n- fileOrganizer \n- writer \n- commenter \n- reader",
+                "type": "string"
+              }
+            },
+            "type": "object"
+          },
+          "type": "array"
+        },
         "photoLink": {
           "description": "A link to the user's profile photo, if available.",
           "type": "string"
@@ -2715,7 +3316,7 @@
           "type": "string"
         },
         "teamDrivePermissionDetails": {
-          "description": "Details of whether the permissions on this Team Drive item are inherited or directly on this item. This is an output-only field which is present only for Team Drive items.",
+          "description": "Deprecated - use permissionDetails instead.",
           "items": {
             "properties": {
               "inherited": {
diff --git a/drive/v3/drive-gen.go b/drive/v3/drive-gen.go
index b15b5f7..ee50f5e 100644
--- a/drive/v3/drive-gen.go
+++ b/drive/v3/drive-gen.go
@@ -148,6 +148,7 @@
 	s.Changes = NewChangesService(s)
 	s.Channels = NewChannelsService(s)
 	s.Comments = NewCommentsService(s)
+	s.Drives = NewDrivesService(s)
 	s.Files = NewFilesService(s)
 	s.Permissions = NewPermissionsService(s)
 	s.Replies = NewRepliesService(s)
@@ -169,6 +170,8 @@
 
 	Comments *CommentsService
 
+	Drives *DrivesService
+
 	Files *FilesService
 
 	Permissions *PermissionsService
@@ -223,6 +226,15 @@
 	s *Service
 }
 
+func NewDrivesService(s *Service) *DrivesService {
+	rs := &DrivesService{s: s}
+	return rs
+}
+
+type DrivesService struct {
+	s *Service
+}
+
 func NewFilesService(s *Service) *FilesService {
 	rs := &FilesService{s: s}
 	return rs
@@ -274,9 +286,15 @@
 	// AppInstalled: Whether the user has installed the requesting app.
 	AppInstalled bool `json:"appInstalled,omitempty"`
 
-	// CanCreateTeamDrives: Whether the user can create Team Drives.
+	// CanCreateDrives: Whether the user can create shared drives.
+	CanCreateDrives bool `json:"canCreateDrives,omitempty"`
+
+	// CanCreateTeamDrives: Deprecated - use canCreateDrives instead.
 	CanCreateTeamDrives bool `json:"canCreateTeamDrives,omitempty"`
 
+	// DriveThemes: A list of themes that are supported for shared drives.
+	DriveThemes []*AboutDriveThemes `json:"driveThemes,omitempty"`
+
 	// ExportFormats: A map of source MIME type to possible targets for all
 	// supported exports.
 	ExportFormats map[string][]string `json:"exportFormats,omitempty"`
@@ -303,7 +321,7 @@
 	// are measured in bytes.
 	StorageQuota *AboutStorageQuota `json:"storageQuota,omitempty"`
 
-	// TeamDriveThemes: A list of themes that are supported for Team Drives.
+	// TeamDriveThemes: Deprecated - use driveThemes instead.
 	TeamDriveThemes []*AboutTeamDriveThemes `json:"teamDriveThemes,omitempty"`
 
 	// User: The authenticated user.
@@ -336,6 +354,40 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+type AboutDriveThemes struct {
+	// BackgroundImageLink: A link to this theme's background image.
+	BackgroundImageLink string `json:"backgroundImageLink,omitempty"`
+
+	// ColorRgb: The color of this theme as an RGB hex string.
+	ColorRgb string `json:"colorRgb,omitempty"`
+
+	// Id: The ID of the theme.
+	Id string `json:"id,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "BackgroundImageLink")
+	// to unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "BackgroundImageLink") to
+	// include in API requests with the JSON null value. By default, fields
+	// with empty values are omitted from API requests. However, any field
+	// with an empty value appearing in NullFields will be sent to the
+	// server as null. It is an error if a field in this list has a
+	// non-empty value. This may be used to include null fields in Patch
+	// requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *AboutDriveThemes) MarshalJSON() ([]byte, error) {
+	type NoMethod AboutDriveThemes
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
 // AboutStorageQuota: The user's storage quota limits and usage. All
 // fields are measured in bytes.
 type AboutStorageQuota struct {
@@ -410,8 +462,20 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
-// Change: A change to a file or Team Drive.
+// Change: A change to a file or shared drive.
 type Change struct {
+	// ChangeType: The type of the change. Possible values are file and
+	// drive.
+	ChangeType string `json:"changeType,omitempty"`
+
+	// Drive: The updated state of the shared drive. Present if the
+	// changeType is drive, the user is still a member of the shared drive,
+	// and the shared drive has not been deleted.
+	Drive *Drive `json:"drive,omitempty"`
+
+	// DriveId: The ID of the shared drive associated with this change.
+	DriveId string `json:"driveId,omitempty"`
+
 	// File: The updated state of the file. Present if the type is file and
 	// the file has not been removed from this list of changes.
 	File *File `json:"file,omitempty"`
@@ -423,25 +487,23 @@
 	// string "drive#change".
 	Kind string `json:"kind,omitempty"`
 
-	// Removed: Whether the file or Team Drive has been removed from this
+	// Removed: Whether the file or shared drive has been removed from this
 	// list of changes, for example by deletion or loss of access.
 	Removed bool `json:"removed,omitempty"`
 
-	// TeamDrive: The updated state of the Team Drive. Present if the type
-	// is teamDrive, the user is still a member of the Team Drive, and the
-	// Team Drive has not been removed.
+	// TeamDrive: Deprecated - use drive instead.
 	TeamDrive *TeamDrive `json:"teamDrive,omitempty"`
 
-	// TeamDriveId: The ID of the Team Drive associated with this change.
+	// TeamDriveId: Deprecated - use driveId instead.
 	TeamDriveId string `json:"teamDriveId,omitempty"`
 
 	// Time: The time of this change (RFC 3339 date-time).
 	Time string `json:"time,omitempty"`
 
-	// Type: The type of the change. Possible values are file and teamDrive.
+	// Type: Deprecated - use changeType instead.
 	Type string `json:"type,omitempty"`
 
-	// ForceSendFields is a list of field names (e.g. "File") to
+	// ForceSendFields is a list of field names (e.g. "ChangeType") to
 	// unconditionally include in API requests. By default, fields with
 	// empty values are omitted from API requests. However, any non-pointer,
 	// non-interface field appearing in ForceSendFields will be sent to the
@@ -449,8 +511,8 @@
 	// used to include empty fields in Patch requests.
 	ForceSendFields []string `json:"-"`
 
-	// NullFields is a list of field names (e.g. "File") to include in API
-	// requests with the JSON null value. By default, fields with empty
+	// NullFields is a list of field names (e.g. "ChangeType") to include in
+	// API requests with the JSON null value. By default, fields with empty
 	// values are omitted from API requests. However, any field with an
 	// empty value appearing in NullFields will be sent to the server as
 	// null. It is an error if a field in this list has a non-empty value.
@@ -733,6 +795,351 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// Drive: Representation of a shared drive.
+type Drive struct {
+	// BackgroundImageFile: An image file and cropping parameters from which
+	// a background image for this shared drive is set. This is a write only
+	// field; it can only be set on drive.drives.update requests that don't
+	// set themeId. When specified, all fields of the backgroundImageFile
+	// must be set.
+	BackgroundImageFile *DriveBackgroundImageFile `json:"backgroundImageFile,omitempty"`
+
+	// BackgroundImageLink: A short-lived link to this shared drive's
+	// background image.
+	BackgroundImageLink string `json:"backgroundImageLink,omitempty"`
+
+	// Capabilities: Capabilities the current user has on this shared drive.
+	Capabilities *DriveCapabilities `json:"capabilities,omitempty"`
+
+	// ColorRgb: The color of this shared drive as an RGB hex string. It can
+	// only be set on a drive.drives.update request that does not set
+	// themeId.
+	ColorRgb string `json:"colorRgb,omitempty"`
+
+	// CreatedTime: The time at which the shared drive was created (RFC 3339
+	// date-time).
+	CreatedTime string `json:"createdTime,omitempty"`
+
+	// Hidden: Whether the shared drive is hidden from default view.
+	Hidden bool `json:"hidden,omitempty"`
+
+	// Id: The ID of this shared drive which is also the ID of the top level
+	// folder of this shared drive.
+	Id string `json:"id,omitempty"`
+
+	// Kind: Identifies what kind of resource this is. Value: the fixed
+	// string "drive#drive".
+	Kind string `json:"kind,omitempty"`
+
+	// Name: The name of this shared drive.
+	Name string `json:"name,omitempty"`
+
+	// Restrictions: A set of restrictions that apply to this shared drive
+	// or items inside this shared drive.
+	Restrictions *DriveRestrictions `json:"restrictions,omitempty"`
+
+	// ThemeId: The ID of the theme from which the background image and
+	// color will be set. The set of possible driveThemes can be retrieved
+	// from a drive.about.get response. When not specified on a
+	// drive.drives.create request, a random theme is chosen from which the
+	// background image and color are set. This is a write-only field; it
+	// can only be set on requests that don't set colorRgb or
+	// backgroundImageFile.
+	ThemeId string `json:"themeId,omitempty"`
+
+	// ServerResponse contains the HTTP response code and headers from the
+	// server.
+	googleapi.ServerResponse `json:"-"`
+
+	// ForceSendFields is a list of field names (e.g. "BackgroundImageFile")
+	// to unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "BackgroundImageFile") to
+	// include in API requests with the JSON null value. By default, fields
+	// with empty values are omitted from API requests. However, any field
+	// with an empty value appearing in NullFields will be sent to the
+	// server as null. It is an error if a field in this list has a
+	// non-empty value. This may be used to include null fields in Patch
+	// requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *Drive) MarshalJSON() ([]byte, error) {
+	type NoMethod Drive
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// DriveBackgroundImageFile: An image file and cropping parameters from
+// which a background image for this shared drive is set. This is a
+// write only field; it can only be set on drive.drives.update requests
+// that don't set themeId. When specified, all fields of the
+// backgroundImageFile must be set.
+type DriveBackgroundImageFile struct {
+	// Id: The ID of an image file in Google Drive to use for the background
+	// image.
+	Id string `json:"id,omitempty"`
+
+	// Width: The width of the cropped image in the closed range of 0 to 1.
+	// This value represents the width of the cropped image divided by the
+	// width of the entire image. The height is computed by applying a width
+	// to height aspect ratio of 80 to 9. The resulting image must be at
+	// least 1280 pixels wide and 144 pixels high.
+	Width float64 `json:"width,omitempty"`
+
+	// XCoordinate: The X coordinate of the upper left corner of the
+	// cropping area in the background image. This is a value in the closed
+	// range of 0 to 1. This value represents the horizontal distance from
+	// the left side of the entire image to the left side of the cropping
+	// area divided by the width of the entire image.
+	XCoordinate float64 `json:"xCoordinate,omitempty"`
+
+	// YCoordinate: The Y coordinate of the upper left corner of the
+	// cropping area in the background image. This is a value in the closed
+	// range of 0 to 1. This value represents the vertical distance from the
+	// top side of the entire image to the top side of the cropping area
+	// divided by the height of the entire image.
+	YCoordinate float64 `json:"yCoordinate,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "Id") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "Id") to include in API
+	// requests with the JSON null value. By default, fields with empty
+	// values are omitted from API requests. However, any field with an
+	// empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *DriveBackgroundImageFile) MarshalJSON() ([]byte, error) {
+	type NoMethod DriveBackgroundImageFile
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+func (s *DriveBackgroundImageFile) UnmarshalJSON(data []byte) error {
+	type NoMethod DriveBackgroundImageFile
+	var s1 struct {
+		Width       gensupport.JSONFloat64 `json:"width"`
+		XCoordinate gensupport.JSONFloat64 `json:"xCoordinate"`
+		YCoordinate gensupport.JSONFloat64 `json:"yCoordinate"`
+		*NoMethod
+	}
+	s1.NoMethod = (*NoMethod)(s)
+	if err := json.Unmarshal(data, &s1); err != nil {
+		return err
+	}
+	s.Width = float64(s1.Width)
+	s.XCoordinate = float64(s1.XCoordinate)
+	s.YCoordinate = float64(s1.YCoordinate)
+	return nil
+}
+
+// DriveCapabilities: Capabilities the current user has on this shared
+// drive.
+type DriveCapabilities struct {
+	// CanAddChildren: Whether the current user can add children to folders
+	// in this shared drive.
+	CanAddChildren bool `json:"canAddChildren,omitempty"`
+
+	// CanChangeCopyRequiresWriterPermissionRestriction: Whether the current
+	// user can change the copyRequiresWriterPermission restriction of this
+	// shared drive.
+	CanChangeCopyRequiresWriterPermissionRestriction bool `json:"canChangeCopyRequiresWriterPermissionRestriction,omitempty"`
+
+	// CanChangeDomainUsersOnlyRestriction: Whether the current user can
+	// change the domainUsersOnly restriction of this shared drive.
+	CanChangeDomainUsersOnlyRestriction bool `json:"canChangeDomainUsersOnlyRestriction,omitempty"`
+
+	// CanChangeDriveBackground: Whether the current user can change the
+	// background of this shared drive.
+	CanChangeDriveBackground bool `json:"canChangeDriveBackground,omitempty"`
+
+	// CanChangeDriveMembersOnlyRestriction: Whether the current user can
+	// change the driveMembersOnly restriction of this shared drive.
+	CanChangeDriveMembersOnlyRestriction bool `json:"canChangeDriveMembersOnlyRestriction,omitempty"`
+
+	// CanComment: Whether the current user can comment on files in this
+	// shared drive.
+	CanComment bool `json:"canComment,omitempty"`
+
+	// CanCopy: Whether the current user can copy files in this shared
+	// drive.
+	CanCopy bool `json:"canCopy,omitempty"`
+
+	// CanDeleteChildren: Whether the current user can delete children from
+	// folders in this shared drive.
+	CanDeleteChildren bool `json:"canDeleteChildren,omitempty"`
+
+	// CanDeleteDrive: Whether the current user can delete this shared
+	// drive. Attempting to delete the shared drive may still fail if there
+	// are untrashed items inside the shared drive.
+	CanDeleteDrive bool `json:"canDeleteDrive,omitempty"`
+
+	// CanDownload: Whether the current user can download files in this
+	// shared drive.
+	CanDownload bool `json:"canDownload,omitempty"`
+
+	// CanEdit: Whether the current user can edit files in this shared drive
+	CanEdit bool `json:"canEdit,omitempty"`
+
+	// CanListChildren: Whether the current user can list the children of
+	// folders in this shared drive.
+	CanListChildren bool `json:"canListChildren,omitempty"`
+
+	// CanManageMembers: Whether the current user can add members to this
+	// shared drive or remove them or change their role.
+	CanManageMembers bool `json:"canManageMembers,omitempty"`
+
+	// CanReadRevisions: Whether the current user can read the revisions
+	// resource of files in this shared drive.
+	CanReadRevisions bool `json:"canReadRevisions,omitempty"`
+
+	// CanRename: Whether the current user can rename files or folders in
+	// this shared drive.
+	CanRename bool `json:"canRename,omitempty"`
+
+	// CanRenameDrive: Whether the current user can rename this shared
+	// drive.
+	CanRenameDrive bool `json:"canRenameDrive,omitempty"`
+
+	// CanShare: Whether the current user can share files or folders in this
+	// shared drive.
+	CanShare bool `json:"canShare,omitempty"`
+
+	// CanTrashChildren: Whether the current user can trash children from
+	// folders in this shared drive.
+	CanTrashChildren bool `json:"canTrashChildren,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "CanAddChildren") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "CanAddChildren") to
+	// include in API requests with the JSON null value. By default, fields
+	// with empty values are omitted from API requests. However, any field
+	// with an empty value appearing in NullFields will be sent to the
+	// server as null. It is an error if a field in this list has a
+	// non-empty value. This may be used to include null fields in Patch
+	// requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *DriveCapabilities) MarshalJSON() ([]byte, error) {
+	type NoMethod DriveCapabilities
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// DriveRestrictions: A set of restrictions that apply to this shared
+// drive or items inside this shared drive.
+type DriveRestrictions struct {
+	// AdminManagedRestrictions: Whether administrative privileges on this
+	// shared drive are required to modify restrictions.
+	AdminManagedRestrictions bool `json:"adminManagedRestrictions,omitempty"`
+
+	// CopyRequiresWriterPermission: Whether the options to copy, print, or
+	// download files inside this shared drive, should be disabled for
+	// readers and commenters. When this restriction is set to true, it will
+	// override the similarly named field to true for any file inside this
+	// shared drive.
+	CopyRequiresWriterPermission bool `json:"copyRequiresWriterPermission,omitempty"`
+
+	// DomainUsersOnly: Whether access to this shared drive and items inside
+	// this shared drive is restricted to users of the domain to which this
+	// shared drive belongs. This restriction may be overridden by other
+	// sharing policies controlled outside of this shared drive.
+	DomainUsersOnly bool `json:"domainUsersOnly,omitempty"`
+
+	// DriveMembersOnly: Whether access to items inside this shared drive is
+	// restricted to its members.
+	DriveMembersOnly bool `json:"driveMembersOnly,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g.
+	// "AdminManagedRestrictions") to unconditionally include in API
+	// requests. By default, fields with empty values are omitted from API
+	// requests. However, any non-pointer, non-interface field appearing in
+	// ForceSendFields will be sent to the server regardless of whether the
+	// field is empty or not. This may be used to include empty fields in
+	// Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "AdminManagedRestrictions")
+	// to include in API requests with the JSON null value. By default,
+	// fields with empty values are omitted from API requests. However, any
+	// field with an empty value appearing in NullFields will be sent to the
+	// server as null. It is an error if a field in this list has a
+	// non-empty value. This may be used to include null fields in Patch
+	// requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *DriveRestrictions) MarshalJSON() ([]byte, error) {
+	type NoMethod DriveRestrictions
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// DriveList: A list of shared drives.
+type DriveList struct {
+	// Drives: The list of shared drives. If nextPageToken is populated,
+	// then this list may be incomplete and an additional page of results
+	// should be fetched.
+	Drives []*Drive `json:"drives,omitempty"`
+
+	// Kind: Identifies what kind of resource this is. Value: the fixed
+	// string "drive#driveList".
+	Kind string `json:"kind,omitempty"`
+
+	// NextPageToken: The page token for the next page of shared drives.
+	// This will be absent if the end of the list has been reached. If the
+	// token is rejected for any reason, it should be discarded, and
+	// pagination should be restarted from the first page of results.
+	NextPageToken string `json:"nextPageToken,omitempty"`
+
+	// ServerResponse contains the HTTP response code and headers from the
+	// server.
+	googleapi.ServerResponse `json:"-"`
+
+	// ForceSendFields is a list of field names (e.g. "Drives") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "Drives") to include in API
+	// requests with the JSON null value. By default, fields with empty
+	// values are omitted from API requests. However, any field with an
+	// empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *DriveList) MarshalJSON() ([]byte, error) {
+	type NoMethod DriveList
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
 // File: The metadata for a file.
 type File struct {
 	// AppProperties: A collection of arbitrary key-value pairs which are
@@ -759,6 +1166,10 @@
 	// Description: A short description of the file.
 	Description string `json:"description,omitempty"`
 
+	// DriveId: ID of the shared drive the file resides in. Only populated
+	// for items in shared drives.
+	DriveId string `json:"driveId,omitempty"`
+
 	// ExplicitlyTrashed: Whether the file has been explicitly trashed, as
 	// opposed to recursively trashed from a parent folder.
 	ExplicitlyTrashed bool `json:"explicitlyTrashed,omitempty"`
@@ -767,7 +1178,7 @@
 	ExportLinks map[string]string `json:"exportLinks,omitempty"`
 
 	// FileExtension: The final component of fullFileExtension. This is only
-	// available for files with binary content in Drive.
+	// available for files with binary content in Google Drive.
 	FileExtension string `json:"fileExtension,omitempty"`
 
 	// FolderColorRgb: The color for a folder as an RGB hex string. The
@@ -780,13 +1191,13 @@
 	// FullFileExtension: The full file extension extracted from the name
 	// field. May contain multiple concatenated extensions, such as
 	// "tar.gz". This is only available for files with binary content in
-	// Drive.
+	// Google Drive.
 	// This is automatically updated when the name field changes, however it
 	// is not cleared if the new name does not contain a valid extension.
 	FullFileExtension string `json:"fullFileExtension,omitempty"`
 
 	// HasAugmentedPermissions: Whether any users are granted file access
-	// directly on this file. This field is only populated for Team Drive
+	// directly on this file. This field is only populated for shared drive
 	// files.
 	HasAugmentedPermissions bool `json:"hasAugmentedPermissions,omitempty"`
 
@@ -796,7 +1207,7 @@
 	HasThumbnail bool `json:"hasThumbnail,omitempty"`
 
 	// HeadRevisionId: The ID of the file's head revision. This is currently
-	// only available for files with binary content in Drive.
+	// only available for files with binary content in Google Drive.
 	HeadRevisionId string `json:"headRevisionId,omitempty"`
 
 	// IconLink: A static, unauthenticated link to the file's icon.
@@ -821,13 +1232,13 @@
 	LastModifyingUser *User `json:"lastModifyingUser,omitempty"`
 
 	// Md5Checksum: The MD5 checksum for the content of the file. This is
-	// only applicable to files with binary content in Drive.
+	// only applicable to files with binary content in Google Drive.
 	Md5Checksum string `json:"md5Checksum,omitempty"`
 
 	// MimeType: The MIME type of the file.
-	// Drive will attempt to automatically detect an appropriate value from
-	// uploaded content if no value is provided. The value cannot be changed
-	// unless a new revision is uploaded.
+	// Google Drive will attempt to automatically detect an appropriate
+	// value from uploaded content if no value is provided. The value cannot
+	// be changed unless a new revision is uploaded.
 	// If a file is created with a Google Doc MIME type, the uploaded
 	// content will be imported if possible. The supported import formats
 	// are published in the About resource.
@@ -848,21 +1259,22 @@
 
 	// Name: The name of the file. This is not necessarily unique within a
 	// folder. Note that for immutable items such as the top level folders
-	// of Team Drives, My Drive root folder, and Application Data folder the
-	// name is constant.
+	// of shared drives, My Drive root folder, and Application Data folder
+	// the name is constant.
 	Name string `json:"name,omitempty"`
 
 	// OriginalFilename: The original filename of the uploaded content if
 	// available, or else the original value of the name field. This is only
-	// available for files with binary content in Drive.
+	// available for files with binary content in Google Drive.
 	OriginalFilename string `json:"originalFilename,omitempty"`
 
-	// OwnedByMe: Whether the user owns the file. Not populated for Team
-	// Drive files.
+	// OwnedByMe: Whether the user owns the file. Not populated for items in
+	// shared drives.
 	OwnedByMe bool `json:"ownedByMe,omitempty"`
 
 	// Owners: The owners of the file. Currently, only certain legacy files
-	// may have more than one owner. Not populated for Team Drive files.
+	// may have more than one owner. Not populated for items in shared
+	// drives.
 	Owners []*User `json:"owners,omitempty"`
 
 	// Parents: The IDs of the parent folders which contain the file.
@@ -879,7 +1291,7 @@
 
 	// Permissions: The full list of permissions for the file. This is only
 	// available if the requesting user can share the file. Not populated
-	// for Team Drive files.
+	// for items in shared drives.
 	Permissions []*Permission `json:"permissions,omitempty"`
 
 	// Properties: A collection of arbitrary key-value pairs which are
@@ -892,8 +1304,8 @@
 	// keepForever enabled.
 	QuotaBytesUsed int64 `json:"quotaBytesUsed,omitempty,string"`
 
-	// Shared: Whether the file has been shared. Not populated for Team
-	// Drive files.
+	// Shared: Whether the file has been shared. Not populated for items in
+	// shared drives.
 	Shared bool `json:"shared,omitempty"`
 
 	// SharedWithMeTime: The time at which the file was shared with the
@@ -905,7 +1317,7 @@
 	SharingUser *User `json:"sharingUser,omitempty"`
 
 	// Size: The size of the file's content in bytes. This is only
-	// applicable to files with binary content in Drive.
+	// applicable to files with binary content in Google Drive.
 	Size int64 `json:"size,omitempty,string"`
 
 	// Spaces: The list of spaces which contain the file. The currently
@@ -915,7 +1327,7 @@
 	// Starred: Whether the user has starred the file.
 	Starred bool `json:"starred,omitempty"`
 
-	// TeamDriveId: ID of the Team Drive the file resides in.
+	// TeamDriveId: Deprecated - use driveId instead.
 	TeamDriveId string `json:"teamDriveId,omitempty"`
 
 	// ThumbnailLink: A short-lived link to the file's thumbnail, if
@@ -933,11 +1345,11 @@
 	Trashed bool `json:"trashed,omitempty"`
 
 	// TrashedTime: The time that the item was trashed (RFC 3339 date-time).
-	// Only populated for Team Drive files.
+	// Only populated for items in shared drives.
 	TrashedTime string `json:"trashedTime,omitempty"`
 
 	// TrashingUser: If the file has been explicitly trashed, the user who
-	// trashed it. Only populated for Team Drive files.
+	// trashed it. Only populated for items in shared drives.
 	TrashingUser *User `json:"trashingUser,omitempty"`
 
 	// Version: A monotonically increasing version number for the file. This
@@ -962,7 +1374,7 @@
 
 	// WebContentLink: A link for downloading the content of the file in a
 	// browser. This is only available for files with binary content in
-	// Drive.
+	// Google Drive.
 	WebContentLink string `json:"webContentLink,omitempty"`
 
 	// WebViewLink: A link for opening the file in a relevant Google editor
@@ -970,7 +1382,7 @@
 	WebViewLink string `json:"webViewLink,omitempty"`
 
 	// WritersCanShare: Whether users with only writer permission can modify
-	// the file's permissions. Not populated for Team Drive files.
+	// the file's permissions. Not populated for items in shared drives.
 	WritersCanShare bool `json:"writersCanShare,omitempty"`
 
 	// ServerResponse contains the HTTP response code and headers from the
@@ -1018,9 +1430,9 @@
 	// CanComment: Whether the current user can comment on this file.
 	CanComment bool `json:"canComment,omitempty"`
 
-	// CanCopy: Whether the current user can copy this file. For a Team
-	// Drive item, whether the current user can copy non-folder descendants
-	// of this item, or this item itself if it is not a folder.
+	// CanCopy: Whether the current user can copy this file. For an item in
+	// a shared drive, whether the current user can copy non-folder
+	// descendants of this item, or this item itself if it is not a folder.
 	CanCopy bool `json:"canCopy,omitempty"`
 
 	// CanDelete: Whether the current user can delete this file.
@@ -1028,7 +1440,7 @@
 
 	// CanDeleteChildren: Whether the current user can delete children of
 	// this folder. This is false when the item is not a folder. Only
-	// populated for Team Drive items.
+	// populated for items in shared drives.
 	CanDeleteChildren bool `json:"canDeleteChildren,omitempty"`
 
 	// CanDownload: Whether the current user can download this file.
@@ -1041,51 +1453,69 @@
 	// this folder. This is always false when the item is not a folder.
 	CanListChildren bool `json:"canListChildren,omitempty"`
 
-	// CanMoveChildrenOutOfTeamDrive: Whether the current user can move
-	// children of this folder outside of the Team Drive. This is false when
-	// the item is not a folder. Only populated for Team Drive items.
+	// CanMoveChildrenOutOfDrive: Whether the current user can move children
+	// of this folder outside of the shared drive. This is false when the
+	// item is not a folder. Only populated for items in shared drives.
+	CanMoveChildrenOutOfDrive bool `json:"canMoveChildrenOutOfDrive,omitempty"`
+
+	// CanMoveChildrenOutOfTeamDrive: Deprecated - use
+	// canMoveChildrenOutOfDrive instead.
 	CanMoveChildrenOutOfTeamDrive bool `json:"canMoveChildrenOutOfTeamDrive,omitempty"`
 
-	// CanMoveChildrenWithinTeamDrive: Whether the current user can move
-	// children of this folder within the Team Drive. This is false when the
-	// item is not a folder. Only populated for Team Drive items.
+	// CanMoveChildrenWithinDrive: Whether the current user can move
+	// children of this folder within the shared drive. This is false when
+	// the item is not a folder. Only populated for items in shared drives.
+	CanMoveChildrenWithinDrive bool `json:"canMoveChildrenWithinDrive,omitempty"`
+
+	// CanMoveChildrenWithinTeamDrive: Deprecated - use
+	// canMoveChildrenWithinDrive instead.
 	CanMoveChildrenWithinTeamDrive bool `json:"canMoveChildrenWithinTeamDrive,omitempty"`
 
-	// CanMoveItemIntoTeamDrive: Whether the current user can move this item
-	// into a Team Drive. If the item is in a Team Drive, this field is
-	// equivalent to canMoveTeamDriveItem.
+	// CanMoveItemIntoTeamDrive: Deprecated - use canMoveItemOutOfDrive
+	// instead.
 	CanMoveItemIntoTeamDrive bool `json:"canMoveItemIntoTeamDrive,omitempty"`
 
-	// CanMoveItemOutOfTeamDrive: Whether the current user can move this
-	// Team Drive item outside of this Team Drive by changing its parent.
-	// Note that a request to change the parent of the item may still fail
-	// depending on the new parent that is being added. Only populated for
-	// Team Drive items.
+	// CanMoveItemOutOfDrive: Whether the current user can move this item
+	// outside of this drive by changing its parent. Note that a request to
+	// change the parent of the item may still fail depending on the new
+	// parent that is being added.
+	CanMoveItemOutOfDrive bool `json:"canMoveItemOutOfDrive,omitempty"`
+
+	// CanMoveItemOutOfTeamDrive: Deprecated - use canMoveItemOutOfDrive
+	// instead.
 	CanMoveItemOutOfTeamDrive bool `json:"canMoveItemOutOfTeamDrive,omitempty"`
 
-	// CanMoveItemWithinTeamDrive: Whether the current user can move this
-	// Team Drive item within this Team Drive. Note that a request to change
-	// the parent of the item may still fail depending on the new parent
-	// that is being added. Only populated for Team Drive items.
+	// CanMoveItemWithinDrive: Whether the current user can move this item
+	// within this shared drive. Note that a request to change the parent of
+	// the item may still fail depending on the new parent that is being
+	// added. Only populated for items in shared drives.
+	CanMoveItemWithinDrive bool `json:"canMoveItemWithinDrive,omitempty"`
+
+	// CanMoveItemWithinTeamDrive: Deprecated - use canMoveItemWithinDrive
+	// instead.
 	CanMoveItemWithinTeamDrive bool `json:"canMoveItemWithinTeamDrive,omitempty"`
 
-	// CanMoveTeamDriveItem: Deprecated - use canMoveItemWithinTeamDrive or
-	// canMoveItemOutOfTeamDrive instead.
+	// CanMoveTeamDriveItem: Deprecated - use canMoveItemWithinDrive or
+	// canMoveItemOutOfDrive instead.
 	CanMoveTeamDriveItem bool `json:"canMoveTeamDriveItem,omitempty"`
 
+	// CanReadDrive: Whether the current user can read the shared drive to
+	// which this file belongs. Only populated for items in shared drives.
+	CanReadDrive bool `json:"canReadDrive,omitempty"`
+
 	// CanReadRevisions: Whether the current user can read the revisions
-	// resource of this file. For a Team Drive item, whether revisions of
+	// resource of this file. For a shared drive item, whether revisions of
 	// non-folder descendants of this item, or this item itself if it is not
 	// a folder, can be read.
 	CanReadRevisions bool `json:"canReadRevisions,omitempty"`
 
-	// CanReadTeamDrive: Whether the current user can read the Team Drive to
-	// which this file belongs. Only populated for Team Drive files.
+	// CanReadTeamDrive: Deprecated - use canReadDrive instead.
 	CanReadTeamDrive bool `json:"canReadTeamDrive,omitempty"`
 
 	// CanRemoveChildren: Whether the current user can remove children from
 	// this folder. This is always false when the item is not a folder. For
-	// Team Drive items, use canDeleteChildren or canTrashChildren instead.
+	// a folder in a shared drive, use canDeleteChildren or canTrashChildren
+	// instead.
 	CanRemoveChildren bool `json:"canRemoveChildren,omitempty"`
 
 	// CanRename: Whether the current user can rename this file.
@@ -1100,7 +1530,7 @@
 
 	// CanTrashChildren: Whether the current user can trash children of this
 	// folder. This is false when the item is not a folder. Only populated
-	// for Team Drive items.
+	// for items in shared drives.
 	CanTrashChildren bool `json:"canTrashChildren,omitempty"`
 
 	// CanUntrash: Whether the current user can restore this file from
@@ -1139,8 +1569,8 @@
 	// elements.
 	IndexableText string `json:"indexableText,omitempty"`
 
-	// Thumbnail: A thumbnail for the file. This will only be used if Drive
-	// cannot generate a standard thumbnail.
+	// Thumbnail: A thumbnail for the file. This will only be used if Google
+	// Drive cannot generate a standard thumbnail.
 	Thumbnail *FileContentHintsThumbnail `json:"thumbnail,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "IndexableText") to
@@ -1167,7 +1597,7 @@
 }
 
 // FileContentHintsThumbnail: A thumbnail for the file. This will only
-// be used if Drive cannot generate a standard thumbnail.
+// be used if Google Drive cannot generate a standard thumbnail.
 type FileContentHintsThumbnail struct {
 	// Image: The thumbnail data encoded with URL-safe Base64 (RFC 4648
 	// section 5).
@@ -1411,10 +1841,10 @@
 
 	// IncompleteSearch: Whether the search process was incomplete. If true,
 	// then some search results may be missing, since all documents were not
-	// searched. This may occur when searching multiple Team Drives with the
-	// "user,allTeamDrives" corpora, but all corpora could not be searched.
-	// When this happens, it is suggested that clients narrow their query by
-	// choosing a different corpus such as "user" or "teamDrive".
+	// searched. This may occur when searching multiple drives with the
+	// "allDrives" corpora, but all corpora could not be searched. When this
+	// happens, it is suggested that clients narrow their query by choosing
+	// a different corpus such as "user" or "drive".
 	IncompleteSearch bool `json:"incompleteSearch,omitempty"`
 
 	// Kind: Identifies what kind of resource this is. Value: the fixed
@@ -1533,6 +1963,11 @@
 	// string "drive#permission".
 	Kind string `json:"kind,omitempty"`
 
+	// PermissionDetails: Details of whether the permissions on this shared
+	// drive item are inherited or directly on this item. This is an
+	// output-only field which is present only for shared drive items.
+	PermissionDetails []*PermissionPermissionDetails `json:"permissionDetails,omitempty"`
+
 	// PhotoLink: A link to the user's profile photo, if available.
 	PhotoLink string `json:"photoLink,omitempty"`
 
@@ -1546,9 +1981,8 @@
 	// - reader
 	Role string `json:"role,omitempty"`
 
-	// TeamDrivePermissionDetails: Details of whether the permissions on
-	// this Team Drive item are inherited or directly on this item. This is
-	// an output-only field which is present only for Team Drive items.
+	// TeamDrivePermissionDetails: Deprecated - use permissionDetails
+	// instead.
 	TeamDrivePermissionDetails []*PermissionTeamDrivePermissionDetails `json:"teamDrivePermissionDetails,omitempty"`
 
 	// Type: The type of the grantee. Valid values are:
@@ -1586,6 +2020,54 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+type PermissionPermissionDetails struct {
+	// Inherited: Whether this permission is inherited. This field is always
+	// populated. This is an output-only field.
+	Inherited bool `json:"inherited,omitempty"`
+
+	// InheritedFrom: The ID of the item from which this permission is
+	// inherited. This is an output-only field and is only populated for
+	// members of the shared drive.
+	InheritedFrom string `json:"inheritedFrom,omitempty"`
+
+	// PermissionType: The permission type for this user. While new values
+	// may be added in future, the following are currently possible:
+	// - file
+	// - member
+	PermissionType string `json:"permissionType,omitempty"`
+
+	// Role: The primary role for this user. While new values may be added
+	// in the future, the following are currently possible:
+	// - organizer
+	// - fileOrganizer
+	// - writer
+	// - commenter
+	// - reader
+	Role string `json:"role,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "Inherited") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "Inherited") to include in
+	// API requests with the JSON null value. By default, fields with empty
+	// values are omitted from API requests. However, any field with an
+	// empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *PermissionPermissionDetails) MarshalJSON() ([]byte, error) {
+	type NoMethod PermissionPermissionDetails
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
 type PermissionTeamDrivePermissionDetails struct {
 	// Inherited: Whether this permission is inherited. This field is always
 	// populated. This is an output-only field.
@@ -2487,16 +2969,31 @@
 	return c
 }
 
+// DriveId sets the optional parameter "driveId": The ID of the shared
+// drive for which the starting pageToken for listing future changes
+// from that shared drive will be returned.
+func (c *ChangesGetStartPageTokenCall) DriveId(driveId string) *ChangesGetStartPageTokenCall {
+	c.urlParams_.Set("driveId", driveId)
+	return c
+}
+
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *ChangesGetStartPageTokenCall) SupportsAllDrives(supportsAllDrives bool) *ChangesGetStartPageTokenCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *ChangesGetStartPageTokenCall) SupportsTeamDrives(supportsTeamDrives bool) *ChangesGetStartPageTokenCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
 }
 
-// TeamDriveId sets the optional parameter "teamDriveId": The ID of the
-// Team Drive for which the starting pageToken for listing future
-// changes from that Team Drive will be returned.
+// TeamDriveId sets the optional parameter "teamDriveId": Deprecated use
+// driveId instead.
 func (c *ChangesGetStartPageTokenCall) TeamDriveId(teamDriveId string) *ChangesGetStartPageTokenCall {
 	c.urlParams_.Set("teamDriveId", teamDriveId)
 	return c
@@ -2601,14 +3098,25 @@
 	//   "httpMethod": "GET",
 	//   "id": "drive.changes.getStartPageToken",
 	//   "parameters": {
+	//     "driveId": {
+	//       "description": "The ID of the shared drive for which the starting pageToken for listing future changes from that shared drive will be returned.",
+	//       "location": "query",
+	//       "type": "string"
+	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
 	//     "teamDriveId": {
-	//       "description": "The ID of the Team Drive for which the starting pageToken for listing future changes from that Team Drive will be returned.",
+	//       "description": "Deprecated use driveId instead.",
 	//       "location": "query",
 	//       "type": "string"
 	//     }
@@ -2640,13 +3148,22 @@
 	header_      http.Header
 }
 
-// List: Lists the changes for a user or Team Drive.
+// List: Lists the changes for a user or shared drive.
 func (r *ChangesService) List(pageToken string) *ChangesListCall {
 	c := &ChangesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.urlParams_.Set("pageToken", pageToken)
 	return c
 }
 
+// DriveId sets the optional parameter "driveId": The shared drive from
+// which changes will be returned. If specified the change IDs will be
+// reflective of the shared drive; use the combined drive ID and change
+// ID as an identifier.
+func (c *ChangesListCall) DriveId(driveId string) *ChangesListCall {
+	c.urlParams_.Set("driveId", driveId)
+	return c
+}
+
 // IncludeCorpusRemovals sets the optional parameter
 // "includeCorpusRemovals": Whether changes should include the file
 // resource if the file is still accessible by the user at the time of
@@ -2657,6 +3174,14 @@
 	return c
 }
 
+// IncludeItemsFromAllDrives sets the optional parameter
+// "includeItemsFromAllDrives": Whether both My Drive and shared drive
+// items should be included in results.
+func (c *ChangesListCall) IncludeItemsFromAllDrives(includeItemsFromAllDrives bool) *ChangesListCall {
+	c.urlParams_.Set("includeItemsFromAllDrives", fmt.Sprint(includeItemsFromAllDrives))
+	return c
+}
+
 // IncludeRemoved sets the optional parameter "includeRemoved": Whether
 // to include changes indicating that items have been removed from the
 // list of changes, for example by deletion or loss of access.
@@ -2666,8 +3191,8 @@
 }
 
 // IncludeTeamDriveItems sets the optional parameter
-// "includeTeamDriveItems": Whether Team Drive files or changes should
-// be included in results.
+// "includeTeamDriveItems": Deprecated use includeItemsFromAllDrives
+// instead.
 func (c *ChangesListCall) IncludeTeamDriveItems(includeTeamDriveItems bool) *ChangesListCall {
 	c.urlParams_.Set("includeTeamDriveItems", fmt.Sprint(includeTeamDriveItems))
 	return c
@@ -2698,17 +3223,23 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *ChangesListCall) SupportsAllDrives(supportsAllDrives bool) *ChangesListCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *ChangesListCall) SupportsTeamDrives(supportsTeamDrives bool) *ChangesListCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
 }
 
-// TeamDriveId sets the optional parameter "teamDriveId": The Team Drive
-// from which changes will be returned. If specified the change IDs will
-// be reflective of the Team Drive; use the combined Team Drive ID and
-// change ID as an identifier.
+// TeamDriveId sets the optional parameter "teamDriveId": Deprecated use
+// driveId instead.
 func (c *ChangesListCall) TeamDriveId(teamDriveId string) *ChangesListCall {
 	c.urlParams_.Set("teamDriveId", teamDriveId)
 	return c
@@ -2809,19 +3340,30 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Lists the changes for a user or Team Drive.",
+	//   "description": "Lists the changes for a user or shared drive.",
 	//   "httpMethod": "GET",
 	//   "id": "drive.changes.list",
 	//   "parameterOrder": [
 	//     "pageToken"
 	//   ],
 	//   "parameters": {
+	//     "driveId": {
+	//       "description": "The shared drive from which changes will be returned. If specified the change IDs will be reflective of the shared drive; use the combined drive ID and change ID as an identifier.",
+	//       "location": "query",
+	//       "type": "string"
+	//     },
 	//     "includeCorpusRemovals": {
 	//       "default": "false",
 	//       "description": "Whether changes should include the file resource if the file is still accessible by the user at the time of the request, even when a file was removed from the list of changes and there will be no further change entries for this file.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
+	//     "includeItemsFromAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether both My Drive and shared drive items should be included in results.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "includeRemoved": {
 	//       "default": "true",
 	//       "description": "Whether to include changes indicating that items have been removed from the list of changes, for example by deletion or loss of access.",
@@ -2830,7 +3372,7 @@
 	//     },
 	//     "includeTeamDriveItems": {
 	//       "default": "false",
-	//       "description": "Whether Team Drive files or changes should be included in results.",
+	//       "description": "Deprecated use includeItemsFromAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -2861,14 +3403,20 @@
 	//       "location": "query",
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
 	//     "teamDriveId": {
-	//       "description": "The Team Drive from which changes will be returned. If specified the change IDs will be reflective of the Team Drive; use the combined Team Drive ID and change ID as an identifier.",
+	//       "description": "Deprecated use driveId instead.",
 	//       "location": "query",
 	//       "type": "string"
 	//     }
@@ -2909,6 +3457,15 @@
 	return c
 }
 
+// DriveId sets the optional parameter "driveId": The shared drive from
+// which changes will be returned. If specified the change IDs will be
+// reflective of the shared drive; use the combined drive ID and change
+// ID as an identifier.
+func (c *ChangesWatchCall) DriveId(driveId string) *ChangesWatchCall {
+	c.urlParams_.Set("driveId", driveId)
+	return c
+}
+
 // IncludeCorpusRemovals sets the optional parameter
 // "includeCorpusRemovals": Whether changes should include the file
 // resource if the file is still accessible by the user at the time of
@@ -2919,6 +3476,14 @@
 	return c
 }
 
+// IncludeItemsFromAllDrives sets the optional parameter
+// "includeItemsFromAllDrives": Whether both My Drive and shared drive
+// items should be included in results.
+func (c *ChangesWatchCall) IncludeItemsFromAllDrives(includeItemsFromAllDrives bool) *ChangesWatchCall {
+	c.urlParams_.Set("includeItemsFromAllDrives", fmt.Sprint(includeItemsFromAllDrives))
+	return c
+}
+
 // IncludeRemoved sets the optional parameter "includeRemoved": Whether
 // to include changes indicating that items have been removed from the
 // list of changes, for example by deletion or loss of access.
@@ -2928,8 +3493,8 @@
 }
 
 // IncludeTeamDriveItems sets the optional parameter
-// "includeTeamDriveItems": Whether Team Drive files or changes should
-// be included in results.
+// "includeTeamDriveItems": Deprecated use includeItemsFromAllDrives
+// instead.
 func (c *ChangesWatchCall) IncludeTeamDriveItems(includeTeamDriveItems bool) *ChangesWatchCall {
 	c.urlParams_.Set("includeTeamDriveItems", fmt.Sprint(includeTeamDriveItems))
 	return c
@@ -2960,17 +3525,23 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *ChangesWatchCall) SupportsAllDrives(supportsAllDrives bool) *ChangesWatchCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *ChangesWatchCall) SupportsTeamDrives(supportsTeamDrives bool) *ChangesWatchCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
 }
 
-// TeamDriveId sets the optional parameter "teamDriveId": The Team Drive
-// from which changes will be returned. If specified the change IDs will
-// be reflective of the Team Drive; use the combined Team Drive ID and
-// change ID as an identifier.
+// TeamDriveId sets the optional parameter "teamDriveId": Deprecated use
+// driveId instead.
 func (c *ChangesWatchCall) TeamDriveId(teamDriveId string) *ChangesWatchCall {
 	c.urlParams_.Set("teamDriveId", teamDriveId)
 	return c
@@ -3070,12 +3641,23 @@
 	//     "pageToken"
 	//   ],
 	//   "parameters": {
+	//     "driveId": {
+	//       "description": "The shared drive from which changes will be returned. If specified the change IDs will be reflective of the shared drive; use the combined drive ID and change ID as an identifier.",
+	//       "location": "query",
+	//       "type": "string"
+	//     },
 	//     "includeCorpusRemovals": {
 	//       "default": "false",
 	//       "description": "Whether changes should include the file resource if the file is still accessible by the user at the time of the request, even when a file was removed from the list of changes and there will be no further change entries for this file.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
+	//     "includeItemsFromAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether both My Drive and shared drive items should be included in results.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "includeRemoved": {
 	//       "default": "true",
 	//       "description": "Whether to include changes indicating that items have been removed from the list of changes, for example by deletion or loss of access.",
@@ -3084,7 +3666,7 @@
 	//     },
 	//     "includeTeamDriveItems": {
 	//       "default": "false",
-	//       "description": "Whether Team Drive files or changes should be included in results.",
+	//       "description": "Deprecated use includeItemsFromAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -3115,14 +3697,20 @@
 	//       "location": "query",
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
 	//     "teamDriveId": {
-	//       "description": "The Team Drive from which changes will be returned. If specified the change IDs will be reflective of the Team Drive; use the combined Team Drive ID and change ID as an identifier.",
+	//       "description": "Deprecated use driveId instead.",
 	//       "location": "query",
 	//       "type": "string"
 	//     }
@@ -4032,6 +4620,1006 @@
 
 }
 
+// method id "drive.drives.create":
+
+type DrivesCreateCall struct {
+	s          *Service
+	drive      *Drive
+	urlParams_ gensupport.URLParams
+	ctx_       context.Context
+	header_    http.Header
+}
+
+// Create: Creates a new shared drive.
+func (r *DrivesService) Create(requestId string, drive *Drive) *DrivesCreateCall {
+	c := &DrivesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.urlParams_.Set("requestId", requestId)
+	c.drive = drive
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *DrivesCreateCall) Fields(s ...googleapi.Field) *DrivesCreateCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *DrivesCreateCall) Context(ctx context.Context) *DrivesCreateCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *DrivesCreateCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *DrivesCreateCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	var body io.Reader = nil
+	body, err := googleapi.WithoutDataWrapper.JSONReader(c.drive)
+	if err != nil {
+		return nil, err
+	}
+	reqHeaders.Set("Content-Type", "application/json")
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "drives")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("POST", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "drive.drives.create" call.
+// Exactly one of *Drive or error will be non-nil. Any non-2xx status
+// code is an error. Response headers are in either
+// *Drive.ServerResponse.Header or (if a response was returned at all)
+// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
+// check whether the returned error was because http.StatusNotModified
+// was returned.
+func (c *DrivesCreateCall) Do(opts ...googleapi.CallOption) (*Drive, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &Drive{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Creates a new shared drive.",
+	//   "httpMethod": "POST",
+	//   "id": "drive.drives.create",
+	//   "parameterOrder": [
+	//     "requestId"
+	//   ],
+	//   "parameters": {
+	//     "requestId": {
+	//       "description": "An ID, such as a random UUID, which uniquely identifies this user's request for idempotent creation of a shared drive. A repeated request by the same user and with the same request ID will avoid creating duplicates by attempting to create the same shared drive. If the shared drive already exists a 409 error will be returned.",
+	//       "location": "query",
+	//       "required": true,
+	//       "type": "string"
+	//     }
+	//   },
+	//   "path": "drives",
+	//   "request": {
+	//     "$ref": "Drive"
+	//   },
+	//   "response": {
+	//     "$ref": "Drive"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/drive"
+	//   ]
+	// }
+
+}
+
+// method id "drive.drives.delete":
+
+type DrivesDeleteCall struct {
+	s          *Service
+	driveId    string
+	urlParams_ gensupport.URLParams
+	ctx_       context.Context
+	header_    http.Header
+}
+
+// Delete: Permanently deletes a shared drive for which the user is an
+// organizer. The shared drive cannot contain any untrashed items.
+func (r *DrivesService) Delete(driveId string) *DrivesDeleteCall {
+	c := &DrivesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.driveId = driveId
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *DrivesDeleteCall) Fields(s ...googleapi.Field) *DrivesDeleteCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *DrivesDeleteCall) Context(ctx context.Context) *DrivesDeleteCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *DrivesDeleteCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *DrivesDeleteCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	var body io.Reader = nil
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "drives/{driveId}")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("DELETE", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	googleapi.Expand(req.URL, map[string]string{
+		"driveId": c.driveId,
+	})
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "drive.drives.delete" call.
+func (c *DrivesDeleteCall) Do(opts ...googleapi.CallOption) error {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if err != nil {
+		return err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return err
+	}
+	return nil
+	// {
+	//   "description": "Permanently deletes a shared drive for which the user is an organizer. The shared drive cannot contain any untrashed items.",
+	//   "httpMethod": "DELETE",
+	//   "id": "drive.drives.delete",
+	//   "parameterOrder": [
+	//     "driveId"
+	//   ],
+	//   "parameters": {
+	//     "driveId": {
+	//       "description": "The ID of the shared drive.",
+	//       "location": "path",
+	//       "required": true,
+	//       "type": "string"
+	//     }
+	//   },
+	//   "path": "drives/{driveId}",
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/drive"
+	//   ]
+	// }
+
+}
+
+// method id "drive.drives.get":
+
+type DrivesGetCall struct {
+	s            *Service
+	driveId      string
+	urlParams_   gensupport.URLParams
+	ifNoneMatch_ string
+	ctx_         context.Context
+	header_      http.Header
+}
+
+// Get: Gets a shared drive's metadata by ID.
+func (r *DrivesService) Get(driveId string) *DrivesGetCall {
+	c := &DrivesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.driveId = driveId
+	return c
+}
+
+// UseDomainAdminAccess sets the optional parameter
+// "useDomainAdminAccess": Issue the request as a domain administrator;
+// if set to true, then the requester will be granted access if they are
+// an administrator of the domain to which the shared drive belongs.
+func (c *DrivesGetCall) UseDomainAdminAccess(useDomainAdminAccess bool) *DrivesGetCall {
+	c.urlParams_.Set("useDomainAdminAccess", fmt.Sprint(useDomainAdminAccess))
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *DrivesGetCall) Fields(s ...googleapi.Field) *DrivesGetCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// IfNoneMatch sets the optional parameter which makes the operation
+// fail if the object's ETag matches the given value. This is useful for
+// getting updates only after the object has changed since the last
+// request. Use googleapi.IsNotModified to check whether the response
+// error from Do is the result of In-None-Match.
+func (c *DrivesGetCall) IfNoneMatch(entityTag string) *DrivesGetCall {
+	c.ifNoneMatch_ = entityTag
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *DrivesGetCall) Context(ctx context.Context) *DrivesGetCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *DrivesGetCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *DrivesGetCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	if c.ifNoneMatch_ != "" {
+		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
+	}
+	var body io.Reader = nil
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "drives/{driveId}")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("GET", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	googleapi.Expand(req.URL, map[string]string{
+		"driveId": c.driveId,
+	})
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "drive.drives.get" call.
+// Exactly one of *Drive or error will be non-nil. Any non-2xx status
+// code is an error. Response headers are in either
+// *Drive.ServerResponse.Header or (if a response was returned at all)
+// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
+// check whether the returned error was because http.StatusNotModified
+// was returned.
+func (c *DrivesGetCall) Do(opts ...googleapi.CallOption) (*Drive, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &Drive{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Gets a shared drive's metadata by ID.",
+	//   "httpMethod": "GET",
+	//   "id": "drive.drives.get",
+	//   "parameterOrder": [
+	//     "driveId"
+	//   ],
+	//   "parameters": {
+	//     "driveId": {
+	//       "description": "The ID of the shared drive.",
+	//       "location": "path",
+	//       "required": true,
+	//       "type": "string"
+	//     },
+	//     "useDomainAdminAccess": {
+	//       "default": "false",
+	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the shared drive belongs.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     }
+	//   },
+	//   "path": "drives/{driveId}",
+	//   "response": {
+	//     "$ref": "Drive"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/drive",
+	//     "https://www.googleapis.com/auth/drive.readonly"
+	//   ]
+	// }
+
+}
+
+// method id "drive.drives.hide":
+
+type DrivesHideCall struct {
+	s          *Service
+	driveId    string
+	urlParams_ gensupport.URLParams
+	ctx_       context.Context
+	header_    http.Header
+}
+
+// Hide: Hides a shared drive from the default view.
+func (r *DrivesService) Hide(driveId string) *DrivesHideCall {
+	c := &DrivesHideCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.driveId = driveId
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *DrivesHideCall) Fields(s ...googleapi.Field) *DrivesHideCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *DrivesHideCall) Context(ctx context.Context) *DrivesHideCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *DrivesHideCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *DrivesHideCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	var body io.Reader = nil
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "drives/{driveId}/hide")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("POST", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	googleapi.Expand(req.URL, map[string]string{
+		"driveId": c.driveId,
+	})
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "drive.drives.hide" call.
+// Exactly one of *Drive or error will be non-nil. Any non-2xx status
+// code is an error. Response headers are in either
+// *Drive.ServerResponse.Header or (if a response was returned at all)
+// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
+// check whether the returned error was because http.StatusNotModified
+// was returned.
+func (c *DrivesHideCall) Do(opts ...googleapi.CallOption) (*Drive, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &Drive{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Hides a shared drive from the default view.",
+	//   "httpMethod": "POST",
+	//   "id": "drive.drives.hide",
+	//   "parameterOrder": [
+	//     "driveId"
+	//   ],
+	//   "parameters": {
+	//     "driveId": {
+	//       "description": "The ID of the shared drive.",
+	//       "location": "path",
+	//       "required": true,
+	//       "type": "string"
+	//     }
+	//   },
+	//   "path": "drives/{driveId}/hide",
+	//   "response": {
+	//     "$ref": "Drive"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/drive"
+	//   ]
+	// }
+
+}
+
+// method id "drive.drives.list":
+
+type DrivesListCall struct {
+	s            *Service
+	urlParams_   gensupport.URLParams
+	ifNoneMatch_ string
+	ctx_         context.Context
+	header_      http.Header
+}
+
+// List: Lists the user's shared drives.
+func (r *DrivesService) List() *DrivesListCall {
+	c := &DrivesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	return c
+}
+
+// PageSize sets the optional parameter "pageSize": Maximum number of
+// shared drives to return.
+func (c *DrivesListCall) PageSize(pageSize int64) *DrivesListCall {
+	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
+	return c
+}
+
+// PageToken sets the optional parameter "pageToken": Page token for
+// shared drives.
+func (c *DrivesListCall) PageToken(pageToken string) *DrivesListCall {
+	c.urlParams_.Set("pageToken", pageToken)
+	return c
+}
+
+// Q sets the optional parameter "q": Query string for searching shared
+// drives.
+func (c *DrivesListCall) Q(q string) *DrivesListCall {
+	c.urlParams_.Set("q", q)
+	return c
+}
+
+// UseDomainAdminAccess sets the optional parameter
+// "useDomainAdminAccess": Issue the request as a domain administrator;
+// if set to true, then all shared drives of the domain in which the
+// requester is an administrator are returned.
+func (c *DrivesListCall) UseDomainAdminAccess(useDomainAdminAccess bool) *DrivesListCall {
+	c.urlParams_.Set("useDomainAdminAccess", fmt.Sprint(useDomainAdminAccess))
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *DrivesListCall) Fields(s ...googleapi.Field) *DrivesListCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// IfNoneMatch sets the optional parameter which makes the operation
+// fail if the object's ETag matches the given value. This is useful for
+// getting updates only after the object has changed since the last
+// request. Use googleapi.IsNotModified to check whether the response
+// error from Do is the result of In-None-Match.
+func (c *DrivesListCall) IfNoneMatch(entityTag string) *DrivesListCall {
+	c.ifNoneMatch_ = entityTag
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *DrivesListCall) Context(ctx context.Context) *DrivesListCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *DrivesListCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *DrivesListCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	if c.ifNoneMatch_ != "" {
+		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
+	}
+	var body io.Reader = nil
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "drives")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("GET", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "drive.drives.list" call.
+// Exactly one of *DriveList or error will be non-nil. Any non-2xx
+// status code is an error. Response headers are in either
+// *DriveList.ServerResponse.Header or (if a response was returned at
+// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
+// to check whether the returned error was because
+// http.StatusNotModified was returned.
+func (c *DrivesListCall) Do(opts ...googleapi.CallOption) (*DriveList, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &DriveList{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Lists the user's shared drives.",
+	//   "httpMethod": "GET",
+	//   "id": "drive.drives.list",
+	//   "parameters": {
+	//     "pageSize": {
+	//       "default": "10",
+	//       "description": "Maximum number of shared drives to return.",
+	//       "format": "int32",
+	//       "location": "query",
+	//       "maximum": "100",
+	//       "minimum": "1",
+	//       "type": "integer"
+	//     },
+	//     "pageToken": {
+	//       "description": "Page token for shared drives.",
+	//       "location": "query",
+	//       "type": "string"
+	//     },
+	//     "q": {
+	//       "description": "Query string for searching shared drives.",
+	//       "location": "query",
+	//       "type": "string"
+	//     },
+	//     "useDomainAdminAccess": {
+	//       "default": "false",
+	//       "description": "Issue the request as a domain administrator; if set to true, then all shared drives of the domain in which the requester is an administrator are returned.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     }
+	//   },
+	//   "path": "drives",
+	//   "response": {
+	//     "$ref": "DriveList"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/drive",
+	//     "https://www.googleapis.com/auth/drive.readonly"
+	//   ]
+	// }
+
+}
+
+// Pages invokes f for each page of results.
+// A non-nil error returned from f will halt the iteration.
+// The provided context supersedes any context provided to the Context method.
+func (c *DrivesListCall) Pages(ctx context.Context, f func(*DriveList) error) error {
+	c.ctx_ = ctx
+	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
+	for {
+		x, err := c.Do()
+		if err != nil {
+			return err
+		}
+		if err := f(x); err != nil {
+			return err
+		}
+		if x.NextPageToken == "" {
+			return nil
+		}
+		c.PageToken(x.NextPageToken)
+	}
+}
+
+// method id "drive.drives.unhide":
+
+type DrivesUnhideCall struct {
+	s          *Service
+	driveId    string
+	urlParams_ gensupport.URLParams
+	ctx_       context.Context
+	header_    http.Header
+}
+
+// Unhide: Restores a shared drive to the default view.
+func (r *DrivesService) Unhide(driveId string) *DrivesUnhideCall {
+	c := &DrivesUnhideCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.driveId = driveId
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *DrivesUnhideCall) Fields(s ...googleapi.Field) *DrivesUnhideCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *DrivesUnhideCall) Context(ctx context.Context) *DrivesUnhideCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *DrivesUnhideCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *DrivesUnhideCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	var body io.Reader = nil
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "drives/{driveId}/unhide")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("POST", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	googleapi.Expand(req.URL, map[string]string{
+		"driveId": c.driveId,
+	})
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "drive.drives.unhide" call.
+// Exactly one of *Drive or error will be non-nil. Any non-2xx status
+// code is an error. Response headers are in either
+// *Drive.ServerResponse.Header or (if a response was returned at all)
+// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
+// check whether the returned error was because http.StatusNotModified
+// was returned.
+func (c *DrivesUnhideCall) Do(opts ...googleapi.CallOption) (*Drive, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &Drive{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Restores a shared drive to the default view.",
+	//   "httpMethod": "POST",
+	//   "id": "drive.drives.unhide",
+	//   "parameterOrder": [
+	//     "driveId"
+	//   ],
+	//   "parameters": {
+	//     "driveId": {
+	//       "description": "The ID of the shared drive.",
+	//       "location": "path",
+	//       "required": true,
+	//       "type": "string"
+	//     }
+	//   },
+	//   "path": "drives/{driveId}/unhide",
+	//   "response": {
+	//     "$ref": "Drive"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/drive"
+	//   ]
+	// }
+
+}
+
+// method id "drive.drives.update":
+
+type DrivesUpdateCall struct {
+	s          *Service
+	driveId    string
+	drive      *Drive
+	urlParams_ gensupport.URLParams
+	ctx_       context.Context
+	header_    http.Header
+}
+
+// Update: Updates the metadate for a shared drive.
+func (r *DrivesService) Update(driveId string, drive *Drive) *DrivesUpdateCall {
+	c := &DrivesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+	c.driveId = driveId
+	c.drive = drive
+	return c
+}
+
+// UseDomainAdminAccess sets the optional parameter
+// "useDomainAdminAccess": Issue the request as a domain administrator;
+// if set to true, then the requester will be granted access if they are
+// an administrator of the domain to which the shared drive belongs.
+func (c *DrivesUpdateCall) UseDomainAdminAccess(useDomainAdminAccess bool) *DrivesUpdateCall {
+	c.urlParams_.Set("useDomainAdminAccess", fmt.Sprint(useDomainAdminAccess))
+	return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *DrivesUpdateCall) Fields(s ...googleapi.Field) *DrivesUpdateCall {
+	c.urlParams_.Set("fields", googleapi.CombineFields(s))
+	return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *DrivesUpdateCall) Context(ctx context.Context) *DrivesUpdateCall {
+	c.ctx_ = ctx
+	return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *DrivesUpdateCall) Header() http.Header {
+	if c.header_ == nil {
+		c.header_ = make(http.Header)
+	}
+	return c.header_
+}
+
+func (c *DrivesUpdateCall) doRequest(alt string) (*http.Response, error) {
+	reqHeaders := make(http.Header)
+	for k, v := range c.header_ {
+		reqHeaders[k] = v
+	}
+	reqHeaders.Set("User-Agent", c.s.userAgent())
+	var body io.Reader = nil
+	body, err := googleapi.WithoutDataWrapper.JSONReader(c.drive)
+	if err != nil {
+		return nil, err
+	}
+	reqHeaders.Set("Content-Type", "application/json")
+	c.urlParams_.Set("alt", alt)
+	c.urlParams_.Set("prettyPrint", "false")
+	urls := googleapi.ResolveRelative(c.s.BasePath, "drives/{driveId}")
+	urls += "?" + c.urlParams_.Encode()
+	req, err := http.NewRequest("PATCH", urls, body)
+	if err != nil {
+		return nil, err
+	}
+	req.Header = reqHeaders
+	googleapi.Expand(req.URL, map[string]string{
+		"driveId": c.driveId,
+	})
+	return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "drive.drives.update" call.
+// Exactly one of *Drive or error will be non-nil. Any non-2xx status
+// code is an error. Response headers are in either
+// *Drive.ServerResponse.Header or (if a response was returned at all)
+// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
+// check whether the returned error was because http.StatusNotModified
+// was returned.
+func (c *DrivesUpdateCall) Do(opts ...googleapi.CallOption) (*Drive, error) {
+	gensupport.SetOptions(c.urlParams_, opts...)
+	res, err := c.doRequest("json")
+	if res != nil && res.StatusCode == http.StatusNotModified {
+		if res.Body != nil {
+			res.Body.Close()
+		}
+		return nil, &googleapi.Error{
+			Code:   res.StatusCode,
+			Header: res.Header,
+		}
+	}
+	if err != nil {
+		return nil, err
+	}
+	defer googleapi.CloseBody(res)
+	if err := googleapi.CheckResponse(res); err != nil {
+		return nil, err
+	}
+	ret := &Drive{
+		ServerResponse: googleapi.ServerResponse{
+			Header:         res.Header,
+			HTTPStatusCode: res.StatusCode,
+		},
+	}
+	target := &ret
+	if err := gensupport.DecodeResponse(target, res); err != nil {
+		return nil, err
+	}
+	return ret, nil
+	// {
+	//   "description": "Updates the metadate for a shared drive.",
+	//   "httpMethod": "PATCH",
+	//   "id": "drive.drives.update",
+	//   "parameterOrder": [
+	//     "driveId"
+	//   ],
+	//   "parameters": {
+	//     "driveId": {
+	//       "description": "The ID of the shared drive.",
+	//       "location": "path",
+	//       "required": true,
+	//       "type": "string"
+	//     },
+	//     "useDomainAdminAccess": {
+	//       "default": "false",
+	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if they are an administrator of the domain to which the shared drive belongs.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     }
+	//   },
+	//   "path": "drives/{driveId}",
+	//   "request": {
+	//     "$ref": "Drive"
+	//   },
+	//   "response": {
+	//     "$ref": "Drive"
+	//   },
+	//   "scopes": [
+	//     "https://www.googleapis.com/auth/drive"
+	//   ]
+	// }
+
+}
+
 // method id "drive.files.copy":
 
 type FilesCopyCall struct {
@@ -4066,7 +5654,7 @@
 // KeepRevisionForever sets the optional parameter
 // "keepRevisionForever": Whether to set the 'keepForever' field in the
 // new head revision. This is only applicable to files with binary
-// content in Drive.
+// content in Google Drive.
 func (c *FilesCopyCall) KeepRevisionForever(keepRevisionForever bool) *FilesCopyCall {
 	c.urlParams_.Set("keepRevisionForever", fmt.Sprint(keepRevisionForever))
 	return c
@@ -4079,8 +5667,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *FilesCopyCall) SupportsAllDrives(supportsAllDrives bool) *FilesCopyCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *FilesCopyCall) SupportsTeamDrives(supportsTeamDrives bool) *FilesCopyCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -4197,7 +5793,7 @@
 	//     },
 	//     "keepRevisionForever": {
 	//       "default": "false",
-	//       "description": "Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Drive.",
+	//       "description": "Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Google Drive.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -4206,9 +5802,15 @@
 	//       "location": "query",
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -4262,7 +5864,7 @@
 // KeepRevisionForever sets the optional parameter
 // "keepRevisionForever": Whether to set the 'keepForever' field in the
 // new head revision. This is only applicable to files with binary
-// content in Drive.
+// content in Google Drive.
 func (c *FilesCreateCall) KeepRevisionForever(keepRevisionForever bool) *FilesCreateCall {
 	c.urlParams_.Set("keepRevisionForever", fmt.Sprint(keepRevisionForever))
 	return c
@@ -4275,8 +5877,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *FilesCreateCall) SupportsAllDrives(supportsAllDrives bool) *FilesCreateCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *FilesCreateCall) SupportsTeamDrives(supportsTeamDrives bool) *FilesCreateCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -4472,7 +6082,7 @@
 	//     },
 	//     "keepRevisionForever": {
 	//       "default": "false",
-	//       "description": "Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Drive.",
+	//       "description": "Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Google Drive.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -4481,9 +6091,15 @@
 	//       "location": "query",
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -4523,8 +6139,8 @@
 }
 
 // Delete: Permanently deletes a file owned by the user without moving
-// it to the trash. If the file belongs to a Team Drive the user must be
-// an organizer on the parent. If the target is a folder, all
+// it to the trash. If the file belongs to a shared drive the user must
+// be an organizer on the parent. If the target is a folder, all
 // descendants owned by the user are also deleted.
 func (r *FilesService) Delete(fileId string) *FilesDeleteCall {
 	c := &FilesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
@@ -4532,8 +6148,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *FilesDeleteCall) SupportsAllDrives(supportsAllDrives bool) *FilesDeleteCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *FilesDeleteCall) SupportsTeamDrives(supportsTeamDrives bool) *FilesDeleteCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -4599,7 +6223,7 @@
 	}
 	return nil
 	// {
-	//   "description": "Permanently deletes a file owned by the user without moving it to the trash. If the file belongs to a Team Drive the user must be an organizer on the parent. If the target is a folder, all descendants owned by the user are also deleted.",
+	//   "description": "Permanently deletes a file owned by the user without moving it to the trash. If the file belongs to a shared drive the user must be an organizer on the parent. If the target is a folder, all descendants owned by the user are also deleted.",
 	//   "httpMethod": "DELETE",
 	//   "id": "drive.files.delete",
 	//   "parameterOrder": [
@@ -4612,9 +6236,15 @@
 	//       "required": true,
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -5041,8 +6671,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *FilesGetCall) SupportsAllDrives(supportsAllDrives bool) *FilesGetCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *FilesGetCall) SupportsTeamDrives(supportsTeamDrives bool) *FilesGetCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -5181,9 +6819,15 @@
 	//       "required": true,
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -5224,12 +6868,10 @@
 	return c
 }
 
-// Corpora sets the optional parameter "corpora": Comma-separated list
-// of bodies of items (files/documents) to which the query applies.
-// Supported bodies are 'user', 'domain', 'teamDrive' and
-// 'allTeamDrives'. 'allTeamDrives' must be combined with 'user'; all
-// other values must be used in isolation. Prefer 'user' or 'teamDrive'
-// to 'allTeamDrives' for efficiency.
+// Corpora sets the optional parameter "corpora": Bodies of items
+// (files/documents) to which the query applies. Supported bodies are
+// 'user', 'domain', 'drive' and 'allDrives'. Prefer 'user' or 'drive'
+// to 'allDrives' for efficiency.
 func (c *FilesListCall) Corpora(corpora string) *FilesListCall {
 	c.urlParams_.Set("corpora", corpora)
 	return c
@@ -5246,9 +6888,24 @@
 	return c
 }
 
+// DriveId sets the optional parameter "driveId": ID of the shared drive
+// to search.
+func (c *FilesListCall) DriveId(driveId string) *FilesListCall {
+	c.urlParams_.Set("driveId", driveId)
+	return c
+}
+
+// IncludeItemsFromAllDrives sets the optional parameter
+// "includeItemsFromAllDrives": Whether both My Drive and shared drive
+// items should be included in results.
+func (c *FilesListCall) IncludeItemsFromAllDrives(includeItemsFromAllDrives bool) *FilesListCall {
+	c.urlParams_.Set("includeItemsFromAllDrives", fmt.Sprint(includeItemsFromAllDrives))
+	return c
+}
+
 // IncludeTeamDriveItems sets the optional parameter
-// "includeTeamDriveItems": Whether Team Drive items should be included
-// in results.
+// "includeTeamDriveItems": Deprecated use includeItemsFromAllDrives
+// instead.
 func (c *FilesListCall) IncludeTeamDriveItems(includeTeamDriveItems bool) *FilesListCall {
 	c.urlParams_.Set("includeTeamDriveItems", fmt.Sprint(includeTeamDriveItems))
 	return c
@@ -5299,15 +6956,23 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *FilesListCall) SupportsAllDrives(supportsAllDrives bool) *FilesListCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *FilesListCall) SupportsTeamDrives(supportsTeamDrives bool) *FilesListCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
 }
 
-// TeamDriveId sets the optional parameter "teamDriveId": ID of Team
-// Drive to search.
+// TeamDriveId sets the optional parameter "teamDriveId": Deprecated use
+// driveId instead.
 func (c *FilesListCall) TeamDriveId(teamDriveId string) *FilesListCall {
 	c.urlParams_.Set("teamDriveId", teamDriveId)
 	return c
@@ -5413,7 +7078,7 @@
 	//   "id": "drive.files.list",
 	//   "parameters": {
 	//     "corpora": {
-	//       "description": "Comma-separated list of bodies of items (files/documents) to which the query applies. Supported bodies are 'user', 'domain', 'teamDrive' and 'allTeamDrives'. 'allTeamDrives' must be combined with 'user'; all other values must be used in isolation. Prefer 'user' or 'teamDrive' to 'allTeamDrives' for efficiency.",
+	//       "description": "Bodies of items (files/documents) to which the query applies. Supported bodies are 'user', 'domain', 'drive' and 'allDrives'. Prefer 'user' or 'drive' to 'allDrives' for efficiency.",
 	//       "location": "query",
 	//       "type": "string"
 	//     },
@@ -5430,9 +7095,20 @@
 	//       "location": "query",
 	//       "type": "string"
 	//     },
+	//     "driveId": {
+	//       "description": "ID of the shared drive to search.",
+	//       "location": "query",
+	//       "type": "string"
+	//     },
+	//     "includeItemsFromAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether both My Drive and shared drive items should be included in results.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "includeTeamDriveItems": {
 	//       "default": "false",
-	//       "description": "Whether Team Drive items should be included in results.",
+	//       "description": "Deprecated use includeItemsFromAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -5466,14 +7142,20 @@
 	//       "location": "query",
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
 	//     "teamDriveId": {
-	//       "description": "ID of Team Drive to search.",
+	//       "description": "Deprecated use driveId instead.",
 	//       "location": "query",
 	//       "type": "string"
 	//     }
@@ -5547,7 +7229,7 @@
 // KeepRevisionForever sets the optional parameter
 // "keepRevisionForever": Whether to set the 'keepForever' field in the
 // new head revision. This is only applicable to files with binary
-// content in Drive.
+// content in Google Drive.
 func (c *FilesUpdateCall) KeepRevisionForever(keepRevisionForever bool) *FilesUpdateCall {
 	c.urlParams_.Set("keepRevisionForever", fmt.Sprint(keepRevisionForever))
 	return c
@@ -5567,8 +7249,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *FilesUpdateCall) SupportsAllDrives(supportsAllDrives bool) *FilesUpdateCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *FilesUpdateCall) SupportsTeamDrives(supportsTeamDrives bool) *FilesUpdateCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -5775,7 +7465,7 @@
 	//     },
 	//     "keepRevisionForever": {
 	//       "default": "false",
-	//       "description": "Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Drive.",
+	//       "description": "Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Google Drive.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -5789,9 +7479,15 @@
 	//       "location": "query",
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -5849,8 +7545,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *FilesWatchCall) SupportsAllDrives(supportsAllDrives bool) *FilesWatchCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *FilesWatchCall) SupportsTeamDrives(supportsTeamDrives bool) *FilesWatchCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -5981,9 +7685,15 @@
 	//       "required": true,
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -6023,7 +7733,7 @@
 	header_    http.Header
 }
 
-// Create: Creates a permission for a file or Team Drive.
+// Create: Creates a permission for a file or shared drive.
 func (r *PermissionsService) Create(fileId string, permission *Permission) *PermissionsCreateCall {
 	c := &PermissionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.fileId = fileId
@@ -6048,8 +7758,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *PermissionsCreateCall) SupportsAllDrives(supportsAllDrives bool) *PermissionsCreateCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *PermissionsCreateCall) SupportsTeamDrives(supportsTeamDrives bool) *PermissionsCreateCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -6067,8 +7785,8 @@
 // UseDomainAdminAccess sets the optional parameter
 // "useDomainAdminAccess": Issue the request as a domain administrator;
 // if set to true, then the requester will be granted access if the file
-// ID parameter refers to a Team Drive and the requester is an
-// administrator of the domain to which the Team Drive belongs.
+// ID parameter refers to a shared drive and the requester is an
+// administrator of the domain to which the shared drive belongs.
 func (c *PermissionsCreateCall) UseDomainAdminAccess(useDomainAdminAccess bool) *PermissionsCreateCall {
 	c.urlParams_.Set("useDomainAdminAccess", fmt.Sprint(useDomainAdminAccess))
 	return c
@@ -6164,7 +7882,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Creates a permission for a file or Team Drive.",
+	//   "description": "Creates a permission for a file or shared drive.",
 	//   "httpMethod": "POST",
 	//   "id": "drive.permissions.create",
 	//   "parameterOrder": [
@@ -6177,7 +7895,7 @@
 	//       "type": "string"
 	//     },
 	//     "fileId": {
-	//       "description": "The ID of the file or Team Drive.",
+	//       "description": "The ID of the file or shared drive.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -6187,9 +7905,15 @@
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -6201,7 +7925,7 @@
 	//     },
 	//     "useDomainAdminAccess": {
 	//       "default": "false",
-	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -6240,8 +7964,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *PermissionsDeleteCall) SupportsAllDrives(supportsAllDrives bool) *PermissionsDeleteCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *PermissionsDeleteCall) SupportsTeamDrives(supportsTeamDrives bool) *PermissionsDeleteCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -6250,8 +7982,8 @@
 // UseDomainAdminAccess sets the optional parameter
 // "useDomainAdminAccess": Issue the request as a domain administrator;
 // if set to true, then the requester will be granted access if the file
-// ID parameter refers to a Team Drive and the requester is an
-// administrator of the domain to which the Team Drive belongs.
+// ID parameter refers to a shared drive and the requester is an
+// administrator of the domain to which the shared drive belongs.
 func (c *PermissionsDeleteCall) UseDomainAdminAccess(useDomainAdminAccess bool) *PermissionsDeleteCall {
 	c.urlParams_.Set("useDomainAdminAccess", fmt.Sprint(useDomainAdminAccess))
 	return c
@@ -6327,7 +8059,7 @@
 	//   ],
 	//   "parameters": {
 	//     "fileId": {
-	//       "description": "The ID of the file or Team Drive.",
+	//       "description": "The ID of the file or shared drive.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -6338,15 +8070,21 @@
 	//       "required": true,
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
 	//     "useDomainAdminAccess": {
 	//       "default": "false",
-	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -6380,8 +8118,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *PermissionsGetCall) SupportsAllDrives(supportsAllDrives bool) *PermissionsGetCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *PermissionsGetCall) SupportsTeamDrives(supportsTeamDrives bool) *PermissionsGetCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -6390,8 +8136,8 @@
 // UseDomainAdminAccess sets the optional parameter
 // "useDomainAdminAccess": Issue the request as a domain administrator;
 // if set to true, then the requester will be granted access if the file
-// ID parameter refers to a Team Drive and the requester is an
-// administrator of the domain to which the Team Drive belongs.
+// ID parameter refers to a shared drive and the requester is an
+// administrator of the domain to which the shared drive belongs.
 func (c *PermissionsGetCall) UseDomainAdminAccess(useDomainAdminAccess bool) *PermissionsGetCall {
 	c.urlParams_.Set("useDomainAdminAccess", fmt.Sprint(useDomainAdminAccess))
 	return c
@@ -6516,15 +8262,21 @@
 	//       "required": true,
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
 	//     "useDomainAdminAccess": {
 	//       "default": "false",
-	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -6556,7 +8308,7 @@
 	header_      http.Header
 }
 
-// List: Lists a file's or Team Drive's permissions.
+// List: Lists a file's or shared drive's permissions.
 func (r *PermissionsService) List(fileId string) *PermissionsListCall {
 	c := &PermissionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.fileId = fileId
@@ -6564,9 +8316,9 @@
 }
 
 // PageSize sets the optional parameter "pageSize": The maximum number
-// of permissions to return per page. When not set for files in a Team
-// Drive, at most 100 results will be returned. When not set for files
-// that are not in a Team Drive, the entire list will be returned.
+// of permissions to return per page. When not set for files in a shared
+// drive, at most 100 results will be returned. When not set for files
+// that are not in a shared drive, the entire list will be returned.
 func (c *PermissionsListCall) PageSize(pageSize int64) *PermissionsListCall {
 	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 	return c
@@ -6580,8 +8332,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *PermissionsListCall) SupportsAllDrives(supportsAllDrives bool) *PermissionsListCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *PermissionsListCall) SupportsTeamDrives(supportsTeamDrives bool) *PermissionsListCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -6590,8 +8350,8 @@
 // UseDomainAdminAccess sets the optional parameter
 // "useDomainAdminAccess": Issue the request as a domain administrator;
 // if set to true, then the requester will be granted access if the file
-// ID parameter refers to a Team Drive and the requester is an
-// administrator of the domain to which the Team Drive belongs.
+// ID parameter refers to a shared drive and the requester is an
+// administrator of the domain to which the shared drive belongs.
 func (c *PermissionsListCall) UseDomainAdminAccess(useDomainAdminAccess bool) *PermissionsListCall {
 	c.urlParams_.Set("useDomainAdminAccess", fmt.Sprint(useDomainAdminAccess))
 	return c
@@ -6695,7 +8455,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Lists a file's or Team Drive's permissions.",
+	//   "description": "Lists a file's or shared drive's permissions.",
 	//   "httpMethod": "GET",
 	//   "id": "drive.permissions.list",
 	//   "parameterOrder": [
@@ -6703,13 +8463,13 @@
 	//   ],
 	//   "parameters": {
 	//     "fileId": {
-	//       "description": "The ID of the file or Team Drive.",
+	//       "description": "The ID of the file or shared drive.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
 	//     },
 	//     "pageSize": {
-	//       "description": "The maximum number of permissions to return per page. When not set for files in a Team Drive, at most 100 results will be returned. When not set for files that are not in a Team Drive, the entire list will be returned.",
+	//       "description": "The maximum number of permissions to return per page. When not set for files in a shared drive, at most 100 results will be returned. When not set for files that are not in a shared drive, the entire list will be returned.",
 	//       "format": "int32",
 	//       "location": "query",
 	//       "maximum": "100",
@@ -6721,15 +8481,21 @@
 	//       "location": "query",
 	//       "type": "string"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
 	//     "useDomainAdminAccess": {
 	//       "default": "false",
-	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -6799,8 +8565,16 @@
 	return c
 }
 
+// SupportsAllDrives sets the optional parameter "supportsAllDrives":
+// Whether the requesting application supports both My Drives and shared
+// drives.
+func (c *PermissionsUpdateCall) SupportsAllDrives(supportsAllDrives bool) *PermissionsUpdateCall {
+	c.urlParams_.Set("supportsAllDrives", fmt.Sprint(supportsAllDrives))
+	return c
+}
+
 // SupportsTeamDrives sets the optional parameter "supportsTeamDrives":
-// Whether the requesting application supports Team Drives.
+// Deprecated use supportsAllDrives instead.
 func (c *PermissionsUpdateCall) SupportsTeamDrives(supportsTeamDrives bool) *PermissionsUpdateCall {
 	c.urlParams_.Set("supportsTeamDrives", fmt.Sprint(supportsTeamDrives))
 	return c
@@ -6818,8 +8592,8 @@
 // UseDomainAdminAccess sets the optional parameter
 // "useDomainAdminAccess": Issue the request as a domain administrator;
 // if set to true, then the requester will be granted access if the file
-// ID parameter refers to a Team Drive and the requester is an
-// administrator of the domain to which the Team Drive belongs.
+// ID parameter refers to a shared drive and the requester is an
+// administrator of the domain to which the shared drive belongs.
 func (c *PermissionsUpdateCall) UseDomainAdminAccess(useDomainAdminAccess bool) *PermissionsUpdateCall {
 	c.urlParams_.Set("useDomainAdminAccess", fmt.Sprint(useDomainAdminAccess))
 	return c
@@ -6925,7 +8699,7 @@
 	//   ],
 	//   "parameters": {
 	//     "fileId": {
-	//       "description": "The ID of the file or Team Drive.",
+	//       "description": "The ID of the file or shared drive.",
 	//       "location": "path",
 	//       "required": true,
 	//       "type": "string"
@@ -6942,9 +8716,15 @@
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
+	//     "supportsAllDrives": {
+	//       "default": "false",
+	//       "description": "Whether the requesting application supports both My Drives and shared drives.",
+	//       "location": "query",
+	//       "type": "boolean"
+	//     },
 	//     "supportsTeamDrives": {
 	//       "default": "false",
-	//       "description": "Whether the requesting application supports Team Drives.",
+	//       "description": "Deprecated use supportsAllDrives instead.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     },
@@ -6956,7 +8736,7 @@
 	//     },
 	//     "useDomainAdminAccess": {
 	//       "default": "false",
-	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a Team Drive and the requester is an administrator of the domain to which the Team Drive belongs.",
+	//       "description": "Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.",
 	//       "location": "query",
 	//       "type": "boolean"
 	//     }
@@ -7808,9 +9588,9 @@
 }
 
 // Delete: Permanently deletes a file version. You can only delete
-// revisions for files with binary content, like images or videos.
-// Revisions for other files, like Google Docs or Sheets, and the last
-// remaining file version can't be deleted.
+// revisions for files with binary content in Google Drive, like images
+// or videos. Revisions for other files, like Google Docs or Sheets, and
+// the last remaining file version can't be deleted.
 func (r *RevisionsService) Delete(fileId string, revisionId string) *RevisionsDeleteCall {
 	c := &RevisionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.fileId = fileId
@@ -7879,7 +9659,7 @@
 	}
 	return nil
 	// {
-	//   "description": "Permanently deletes a file version. You can only delete revisions for files with binary content, like images or videos. Revisions for other files, like Google Docs or Sheets, and the last remaining file version can't be deleted.",
+	//   "description": "Permanently deletes a file version. You can only delete revisions for files with binary content in Google Drive, like images or videos. Revisions for other files, like Google Docs or Sheets, and the last remaining file version can't be deleted.",
 	//   "httpMethod": "DELETE",
 	//   "id": "drive.revisions.delete",
 	//   "parameterOrder": [
@@ -8456,7 +10236,7 @@
 	header_    http.Header
 }
 
-// Create: Creates a new Team Drive.
+// Create: Deprecated use drives.create instead.
 func (r *TeamdrivesService) Create(requestId string, teamdrive *TeamDrive) *TeamdrivesCreateCall {
 	c := &TeamdrivesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.urlParams_.Set("requestId", requestId)
@@ -8551,7 +10331,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Creates a new Team Drive.",
+	//   "description": "Deprecated use drives.create instead.",
 	//   "httpMethod": "POST",
 	//   "id": "drive.teamdrives.create",
 	//   "parameterOrder": [
@@ -8589,8 +10369,7 @@
 	header_     http.Header
 }
 
-// Delete: Permanently deletes a Team Drive for which the user is an
-// organizer. The Team Drive cannot contain any untrashed items.
+// Delete: Deprecated use drives.delete instead.
 func (r *TeamdrivesService) Delete(teamDriveId string) *TeamdrivesDeleteCall {
 	c := &TeamdrivesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.teamDriveId = teamDriveId
@@ -8657,7 +10436,7 @@
 	}
 	return nil
 	// {
-	//   "description": "Permanently deletes a Team Drive for which the user is an organizer. The Team Drive cannot contain any untrashed items.",
+	//   "description": "Deprecated use drives.delete instead.",
 	//   "httpMethod": "DELETE",
 	//   "id": "drive.teamdrives.delete",
 	//   "parameterOrder": [
@@ -8690,7 +10469,7 @@
 	header_      http.Header
 }
 
-// Get: Gets a Team Drive's metadata by ID.
+// Get: Deprecated use drives.get instead.
 func (r *TeamdrivesService) Get(teamDriveId string) *TeamdrivesGetCall {
 	c := &TeamdrivesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.teamDriveId = teamDriveId
@@ -8804,7 +10583,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Gets a Team Drive's metadata by ID.",
+	//   "description": "Deprecated use drives.get instead.",
 	//   "httpMethod": "GET",
 	//   "id": "drive.teamdrives.get",
 	//   "parameterOrder": [
@@ -8846,7 +10625,7 @@
 	header_      http.Header
 }
 
-// List: Lists the user's Team Drives.
+// List: Deprecated use drives.list instead.
 func (r *TeamdrivesService) List() *TeamdrivesListCall {
 	c := &TeamdrivesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	return c
@@ -8977,7 +10756,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Lists the user's Team Drives.",
+	//   "description": "Deprecated use drives.list instead.",
 	//   "httpMethod": "GET",
 	//   "id": "drive.teamdrives.list",
 	//   "parameters": {
@@ -9051,7 +10830,7 @@
 	header_     http.Header
 }
 
-// Update: Updates a Team Drive's metadata
+// Update: Deprecated use drives.update instead
 func (r *TeamdrivesService) Update(teamDriveId string, teamdrive *TeamDrive) *TeamdrivesUpdateCall {
 	c := &TeamdrivesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.teamDriveId = teamDriveId
@@ -9158,7 +10937,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Updates a Team Drive's metadata",
+	//   "description": "Deprecated use drives.update instead",
 	//   "httpMethod": "PATCH",
 	//   "id": "drive.teamdrives.update",
 	//   "parameterOrder": [
diff --git a/file/v1/file-api.json b/file/v1/file-api.json
index 9589243..95d5fc5 100644
--- a/file/v1/file-api.json
+++ b/file/v1/file-api.json
@@ -471,7 +471,7 @@
       }
     }
   },
-  "revision": "20190312",
+  "revision": "20190416",
   "rootUrl": "https://file.googleapis.com/",
   "schemas": {
     "CancelOperationRequest": {
@@ -502,6 +502,199 @@
       },
       "type": "object"
     },
+    "GoogleCloudSaasacceleratorManagementProvidersV1Instance": {
+      "description": "Instance represents the interface for SLM services to actuate the state\nof control plane resources.\n\nExample Instance in JSON, where\n  consumer-project=snapchat,\n  producer-project=cloud-sql:\n\n```json\nInstance:\n{\n  \"name\":\n  \"projects/snapchat/locations/us-east1/instances/prod-instance\",\n  \"create_time\": {\n    \"seconds\": 1526406431,\n  },\n  \"labels\": {\n    \"env\": \"prod\",\n    \"foo\": \"bar\"\n  },\n  \"state\": READY,\n  \"software_version\": \"cloud-sql-09-28-2018\",\n  \"maintenance_policy_names\": {\n    \"UpdatePolicy\":\n    \"projects/snapchat/locations/us-east1/maintenancePolicies/prod-update-policy\",\n  }\n  \"rollout_metadata\": {\n    \"projects/cloud-sql/locations/global/rolloutTypes/software_update\": {\n      \"release\":\n      \"projects/cloud-sql/locations/global/releases/cloud-sql-09-28-2018\",\n      \"rollout\":\n      \"projects/cloud-sql/locations/us-east1/rollouts/cloud-sql-09-28-2018-canary\",\n    }\n    \"projects/cloud-sql/locations/global/rolloutTypes/instance_restart\": {\n      \"release\":\n      \"projects/cloud-sql/locations/global/releases/cloud-sql-09-20-repair\",\n      \"rollout\":\n      \"projects/cloud-sql/locations/us-east1/rollouts/cloud-sql-09-20-repair-100-percent\",\n    }\n  }\n  \"tenant_project_id\": \"cloud-sql-test-tenant\",\n  \"producer_metadata\": {\n    \"cloud-sql-tier\": \"basic\",\n    \"cloud-sql-instance-size\": \"1G\",\n  },\n  \"provisioned_resources\": [\n    {\n      \"resource-type\": \"compute-instance\",\n      \"resource-url\":\n      \"https://www.googleapis.com/compute/v1/projects/cloud-sql/zones/us-east1-b/instances/vm-1\",\n    }\n  ],\n}\n```",
+      "id": "GoogleCloudSaasacceleratorManagementProvidersV1Instance",
+      "properties": {
+        "createTime": {
+          "description": "Output only. Timestamp when the resource was created.",
+          "format": "google-datetime",
+          "type": "string"
+        },
+        "labels": {
+          "additionalProperties": {
+            "type": "string"
+          },
+          "description": "Optional. Resource labels to represent user provided metadata. Each label\nis a key-value pair, where both the key and the value are arbitrary strings\nprovided by the user.",
+          "type": "object"
+        },
+        "maintenancePolicyNames": {
+          "additionalProperties": {
+            "type": "string"
+          },
+          "description": "The MaintenancePolicies that have been attached to the instance.\nThe key must be of the type name of the oneof policy name defined in\nMaintenancePolicy, and the referenced policy must define the same policy\ntype. For complete details of MaintenancePolicy, please refer to\n//depot/google3/google/cloud/saasaccelerator/maintenancepolicy/api/v1/maintenance_policy_resources.proto",
+          "type": "object"
+        },
+        "name": {
+          "description": "Unique name of the resource. It uses the form:\n `projects/{project_id}/locations/{location_id}/instances/{instance_id}`",
+          "type": "string"
+        },
+        "producerMetadata": {
+          "additionalProperties": {
+            "type": "string"
+          },
+          "description": "Output only. Custom string attributes used primarily to expose\nproducer-specific information in monitoring dashboards.\nSee go/get-instance-metadata.",
+          "type": "object"
+        },
+        "provisionedResources": {
+          "description": "Output only. The list of data plane resources provisioned for this\ninstance, e.g. compute VMs. See go/get-instance-metadata.",
+          "items": {
+            "$ref": "GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource"
+          },
+          "type": "array"
+        },
+        "rolloutMetadata": {
+          "additionalProperties": {
+            "$ref": "GoogleCloudSaasacceleratorManagementProvidersV1RolloutMetadata"
+          },
+          "description": "The map between RolloutType and the corresponding RolloutMetadata.\nThis is only mutated by rollout service. For actuation implementation,\nthis information is pass-through for Rollout management. Producer shall\nnot modify by itself.\nFor update of a single entry in this map, the update field mask shall\nfollow this sementics: go/advanced-field-masks",
+          "type": "object"
+        },
+        "sloMetadata": {
+          "$ref": "GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata",
+          "description": "Output only. SLO metadata for instance classification in the\nStandardized dataplane SLO platform.\nSee go/cloud-ssa-standard-slo for feature description."
+        },
+        "softwareVersions": {
+          "additionalProperties": {
+            "type": "string"
+          },
+          "description": "Software versions that are used to deploy this instance. This can be\nmutated by rollout services.",
+          "type": "object"
+        },
+        "state": {
+          "description": "Output only. Current lifecycle state of the resource (e.g. if it's being\ncreated or ready to use).",
+          "enum": [
+            "STATE_UNSPECIFIED",
+            "CREATING",
+            "READY",
+            "UPDATING",
+            "REPAIRING",
+            "DELETING"
+          ],
+          "enumDescriptions": [
+            "Unspecified state.",
+            "Instance is being created.",
+            "Instance has been created and is ready to use.",
+            "Instance is being updated.",
+            "Instance is unheathy and under repair.",
+            "Instance is being deleted."
+          ],
+          "type": "string"
+        },
+        "tenantProjectId": {
+          "description": "Output only. ID of the associated GCP tenant project.\nSee go/get-instance-metadata.",
+          "type": "string"
+        },
+        "updateTime": {
+          "description": "Output only. Timestamp when the resource was last modified.",
+          "format": "google-datetime",
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
+    "GoogleCloudSaasacceleratorManagementProvidersV1NotificationMetadata": {
+      "description": "NotificationMetadata is the notification state for an instance.",
+      "id": "GoogleCloudSaasacceleratorManagementProvidersV1NotificationMetadata",
+      "properties": {
+        "rescheduled": {
+          "description": "Whether the instance update has been rescheduled.",
+          "type": "boolean"
+        },
+        "scheduledEndTime": {
+          "description": "The scheduled end time for the maintenance window during which update\ncan be performed on the instance.",
+          "format": "google-datetime",
+          "type": "string"
+        },
+        "scheduledStartTime": {
+          "description": "The scheduled start time for the maintenance window during which\nupdate can be performed on the instance.",
+          "format": "google-datetime",
+          "type": "string"
+        },
+        "targetRelease": {
+          "description": "The target release to be applied to the instance.",
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
+    "GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource": {
+      "description": "Describes provisioned dataplane resources.",
+      "id": "GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource",
+      "properties": {
+        "resourceType": {
+          "description": "Type of the resource. This can be either a GCP resource or a custom one\n(e.g. another cloud provider's VM). For GCP compute resources use singular\nform of the names listed in GCP compute API documentation\n(https://cloud.google.com/compute/docs/reference/rest/v1/), prefixed with\n'compute-', for example: 'compute-instance', 'compute-disk',\n'compute-autoscaler'.",
+          "type": "string"
+        },
+        "resourceUrl": {
+          "description": "URL identifying the resource, e.g.\n\"https://www.googleapis.com/compute/v1/projects/...)\".",
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
+    "GoogleCloudSaasacceleratorManagementProvidersV1RolloutMetadata": {
+      "description": "RolloutMetadata for an actuation instance. It maps to a single RolloutType.",
+      "id": "GoogleCloudSaasacceleratorManagementProvidersV1RolloutMetadata",
+      "properties": {
+        "notification": {
+          "$ref": "GoogleCloudSaasacceleratorManagementProvidersV1NotificationMetadata",
+          "description": "Instance level notification metadata."
+        },
+        "releaseName": {
+          "description": "The last Release that has been applied to the instance.",
+          "type": "string"
+        },
+        "rolloutName": {
+          "description": "The last rollout that has been applied to the instance.",
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
+    "GoogleCloudSaasacceleratorManagementProvidersV1SloExclusion": {
+      "description": "A temporal SLO exclusion specification.",
+      "id": "GoogleCloudSaasacceleratorManagementProvidersV1SloExclusion",
+      "properties": {
+        "exclusionDuration": {
+          "description": "Exclusion duration. No restrictions on the possible values.\n\nWhen an ongoing operation is taking longer than initially expected,\nan existing entry in the exclusion list can be updated by extending the\nduration. This is supported by the subsystem exporting eligibility data\nas long as such extension is committed at least 10 minutes before the\noriginal exclusion expiration - otherwise it is possible that there will\nbe \"gaps\" in the exclusion application in the exported timeseries.",
+          "format": "google-duration",
+          "type": "string"
+        },
+        "exclusionStartTime": {
+          "description": "Start time of the exclusion. No alignment (e.g. to a full minute) needed.",
+          "format": "google-datetime",
+          "type": "string"
+        },
+        "reason": {
+          "description": "Human-readable reason for the exclusion.\nThis should be a static string (e.g. \"Disruptive update in progress\")\nand should not contain dynamically generated data (e.g. instance name).\nCan be left empty.",
+          "type": "string"
+        },
+        "sloName": {
+          "description": "Name of an SLI/SLO that this exclusion applies to. Can be left empty,\nsignaling that the instance should be excluded from all SLI/SLOs defined\nin the service SLO configuration.",
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
+    "GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata": {
+      "description": "SloMetadata contains resources required for proper SLO classification of the\ninstance.",
+      "id": "GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata",
+      "properties": {
+        "exclusions": {
+          "description": "List of SLO exclusion windows. When multiple entries in the list match\n(matching the exclusion time-window against current time point)\nthe exclusion reason used in the first matching entry will be published.\n\nIt is not needed to include expired exclusion in this list, as only the\ncurrently applicable exclusions are taken into account by the eligibility\nexporting subsystem (the historical state of exclusions will be reflected\nin the historically produced timeseries regardless of the current state).\n\nThis field can be used to mark the instance as temporary ineligible\nfor the purpose of SLO calculation. For permanent instance SLO exclusion,\na dedicated tier name can be used that does not have targets specified\nin the service SLO configuration.",
+          "items": {
+            "$ref": "GoogleCloudSaasacceleratorManagementProvidersV1SloExclusion"
+          },
+          "type": "array"
+        },
+        "tier": {
+          "description": "Name of the SLO tier the Instance belongs to. This name will be expected to\nmatch the tiers specified in the service SLO configuration.\n\nField is mandatory and must not be empty.",
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
     "Instance": {
       "description": "A Cloud Filestore instance.",
       "id": "Instance",
diff --git a/file/v1/file-gen.go b/file/v1/file-gen.go
index 3afdc07..3a90799 100644
--- a/file/v1/file-gen.go
+++ b/file/v1/file-gen.go
@@ -230,6 +230,426 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// GoogleCloudSaasacceleratorManagementProvidersV1Instance: Instance
+// represents the interface for SLM services to actuate the state
+// of control plane resources.
+//
+// Example Instance in JSON, where
+//   consumer-project=snapchat,
+//   producer-project=cloud-sql:
+//
+// ```json
+// Instance:
+// {
+//   "name":
+//   "projects/snapchat/locations/us-east1/instances/prod-instance",
+//   "create_time": {
+//     "seconds": 1526406431,
+//   },
+//   "labels": {
+//     "env": "prod",
+//     "foo": "bar"
+//   },
+//   "state": READY,
+//   "software_version": "cloud-sql-09-28-2018",
+//   "maintenance_policy_names": {
+//     "UpdatePolicy":
+//
+// "projects/snapchat/locations/us-east1/maintenancePolicies/prod-update-
+// policy",
+//   }
+//   "rollout_metadata": {
+//
+// "projects/cloud-sql/locations/global/rolloutTypes/software_update":
+// {
+//       "release":
+//
+// "projects/cloud-sql/locations/global/releases/cloud-sql-09-28-2018",
+//       "rollout":
+//
+// "projects/cloud-sql/locations/us-east1/rollouts/cloud-sql-09-28-2018-c
+// anary",
+//     }
+//
+// "projects/cloud-sql/locations/global/rolloutTypes/instance_restart":
+// {
+//       "release":
+//
+// "projects/cloud-sql/locations/global/releases/cloud-sql-09-20-repair",
+//
+//       "rollout":
+//
+// "projects/cloud-sql/locations/us-east1/rollouts/cloud-sql-09-20-repair
+// -100-percent",
+//     }
+//   }
+//   "tenant_project_id": "cloud-sql-test-tenant",
+//   "producer_metadata": {
+//     "cloud-sql-tier": "basic",
+//     "cloud-sql-instance-size": "1G",
+//   },
+//   "provisioned_resources": [
+//     {
+//       "resource-type": "compute-instance",
+//       "resource-url":
+//
+// "https://www.googleapis.com/compute/v1/projects/cloud-sql/zones/us-eas
+// t1-b/instances/vm-1",
+//     }
+//   ],
+// }
+// ```
+type GoogleCloudSaasacceleratorManagementProvidersV1Instance struct {
+	// CreateTime: Output only. Timestamp when the resource was created.
+	CreateTime string `json:"createTime,omitempty"`
+
+	// Labels: Optional. Resource labels to represent user provided
+	// metadata. Each label
+	// is a key-value pair, where both the key and the value are arbitrary
+	// strings
+	// provided by the user.
+	Labels map[string]string `json:"labels,omitempty"`
+
+	// MaintenancePolicyNames: The MaintenancePolicies that have been
+	// attached to the instance.
+	// The key must be of the type name of the oneof policy name defined
+	// in
+	// MaintenancePolicy, and the referenced policy must define the same
+	// policy
+	// type. For complete details of MaintenancePolicy, please refer
+	// to
+	// //depot/google3/google/cloud/saasaccelerator/maintenancepolicy/api/
+	// v1/maintenance_policy_resources.proto
+	MaintenancePolicyNames map[string]string `json:"maintenancePolicyNames,omitempty"`
+
+	// Name: Unique name of the resource. It uses the form:
+	//
+	// `projects/{project_id}/locations/{location_id}/instances/{instance_id}
+	// `
+	Name string `json:"name,omitempty"`
+
+	// ProducerMetadata: Output only. Custom string attributes used
+	// primarily to expose
+	// producer-specific information in monitoring dashboards.
+	// See go/get-instance-metadata.
+	ProducerMetadata map[string]string `json:"producerMetadata,omitempty"`
+
+	// ProvisionedResources: Output only. The list of data plane resources
+	// provisioned for this
+	// instance, e.g. compute VMs. See go/get-instance-metadata.
+	ProvisionedResources []*GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource `json:"provisionedResources,omitempty"`
+
+	// RolloutMetadata: The map between RolloutType and the corresponding
+	// RolloutMetadata.
+	// This is only mutated by rollout service. For actuation
+	// implementation,
+	// this information is pass-through for Rollout management. Producer
+	// shall
+	// not modify by itself.
+	// For update of a single entry in this map, the update field mask
+	// shall
+	// follow this sementics: go/advanced-field-masks
+	RolloutMetadata map[string]GoogleCloudSaasacceleratorManagementProvidersV1RolloutMetadata `json:"rolloutMetadata,omitempty"`
+
+	// SloMetadata: Output only. SLO metadata for instance classification in
+	// the
+	// Standardized dataplane SLO platform.
+	// See go/cloud-ssa-standard-slo for feature description.
+	SloMetadata *GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata `json:"sloMetadata,omitempty"`
+
+	// SoftwareVersions: Software versions that are used to deploy this
+	// instance. This can be
+	// mutated by rollout services.
+	SoftwareVersions map[string]string `json:"softwareVersions,omitempty"`
+
+	// State: Output only. Current lifecycle state of the resource (e.g. if
+	// it's being
+	// created or ready to use).
+	//
+	// Possible values:
+	//   "STATE_UNSPECIFIED" - Unspecified state.
+	//   "CREATING" - Instance is being created.
+	//   "READY" - Instance has been created and is ready to use.
+	//   "UPDATING" - Instance is being updated.
+	//   "REPAIRING" - Instance is unheathy and under repair.
+	//   "DELETING" - Instance is being deleted.
+	State string `json:"state,omitempty"`
+
+	// TenantProjectId: Output only. ID of the associated GCP tenant
+	// project.
+	// See go/get-instance-metadata.
+	TenantProjectId string `json:"tenantProjectId,omitempty"`
+
+	// UpdateTime: Output only. Timestamp when the resource was last
+	// modified.
+	UpdateTime string `json:"updateTime,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "CreateTime") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "CreateTime") to include in
+	// API requests with the JSON null value. By default, fields with empty
+	// values are omitted from API requests. However, any field with an
+	// empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudSaasacceleratorManagementProvidersV1Instance) MarshalJSON() ([]byte, error) {
+	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1Instance
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// GoogleCloudSaasacceleratorManagementProvidersV1NotificationMetadata:
+// NotificationMetadata is the notification state for an instance.
+type GoogleCloudSaasacceleratorManagementProvidersV1NotificationMetadata struct {
+	// Rescheduled: Whether the instance update has been rescheduled.
+	Rescheduled bool `json:"rescheduled,omitempty"`
+
+	// ScheduledEndTime: The scheduled end time for the maintenance window
+	// during which update
+	// can be performed on the instance.
+	ScheduledEndTime string `json:"scheduledEndTime,omitempty"`
+
+	// ScheduledStartTime: The scheduled start time for the maintenance
+	// window during which
+	// update can be performed on the instance.
+	ScheduledStartTime string `json:"scheduledStartTime,omitempty"`
+
+	// TargetRelease: The target release to be applied to the instance.
+	TargetRelease string `json:"targetRelease,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "Rescheduled") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "Rescheduled") to include
+	// in API requests with the JSON null value. By default, fields with
+	// empty values are omitted from API requests. However, any field with
+	// an empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudSaasacceleratorManagementProvidersV1NotificationMetadata) MarshalJSON() ([]byte, error) {
+	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1NotificationMetadata
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource:
+// Describes provisioned dataplane resources.
+type GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource struct {
+	// ResourceType: Type of the resource. This can be either a GCP resource
+	// or a custom one
+	// (e.g. another cloud provider's VM). For GCP compute resources use
+	// singular
+	// form of the names listed in GCP compute API
+	// documentation
+	// (https://cloud.google.com/compute/docs/reference/rest/v1
+	// /), prefixed with
+	// 'compute-', for example: 'compute-instance',
+	// 'compute-disk',
+	// 'compute-autoscaler'.
+	ResourceType string `json:"resourceType,omitempty"`
+
+	// ResourceUrl: URL identifying the resource,
+	// e.g.
+	// "https://www.googleapis.com/compute/v1/projects/...)".
+	ResourceUrl string `json:"resourceUrl,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "ResourceType") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "ResourceType") to include
+	// in API requests with the JSON null value. By default, fields with
+	// empty values are omitted from API requests. However, any field with
+	// an empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource) MarshalJSON() ([]byte, error) {
+	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// GoogleCloudSaasacceleratorManagementProvidersV1RolloutMetadata:
+// RolloutMetadata for an actuation instance. It maps to a single
+// RolloutType.
+type GoogleCloudSaasacceleratorManagementProvidersV1RolloutMetadata struct {
+	// Notification: Instance level notification metadata.
+	Notification *GoogleCloudSaasacceleratorManagementProvidersV1NotificationMetadata `json:"notification,omitempty"`
+
+	// ReleaseName: The last Release that has been applied to the instance.
+	ReleaseName string `json:"releaseName,omitempty"`
+
+	// RolloutName: The last rollout that has been applied to the instance.
+	RolloutName string `json:"rolloutName,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "Notification") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "Notification") to include
+	// in API requests with the JSON null value. By default, fields with
+	// empty values are omitted from API requests. However, any field with
+	// an empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudSaasacceleratorManagementProvidersV1RolloutMetadata) MarshalJSON() ([]byte, error) {
+	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1RolloutMetadata
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// GoogleCloudSaasacceleratorManagementProvidersV1SloExclusion: A
+// temporal SLO exclusion specification.
+type GoogleCloudSaasacceleratorManagementProvidersV1SloExclusion struct {
+	// ExclusionDuration: Exclusion duration. No restrictions on the
+	// possible values.
+	//
+	// When an ongoing operation is taking longer than initially
+	// expected,
+	// an existing entry in the exclusion list can be updated by extending
+	// the
+	// duration. This is supported by the subsystem exporting eligibility
+	// data
+	// as long as such extension is committed at least 10 minutes before
+	// the
+	// original exclusion expiration - otherwise it is possible that there
+	// will
+	// be "gaps" in the exclusion application in the exported timeseries.
+	ExclusionDuration string `json:"exclusionDuration,omitempty"`
+
+	// ExclusionStartTime: Start time of the exclusion. No alignment (e.g.
+	// to a full minute) needed.
+	ExclusionStartTime string `json:"exclusionStartTime,omitempty"`
+
+	// Reason: Human-readable reason for the exclusion.
+	// This should be a static string (e.g. "Disruptive update in
+	// progress")
+	// and should not contain dynamically generated data (e.g. instance
+	// name).
+	// Can be left empty.
+	Reason string `json:"reason,omitempty"`
+
+	// SloName: Name of an SLI/SLO that this exclusion applies to. Can be
+	// left empty,
+	// signaling that the instance should be excluded from all SLI/SLOs
+	// defined
+	// in the service SLO configuration.
+	SloName string `json:"sloName,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "ExclusionDuration")
+	// to unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "ExclusionDuration") to
+	// include in API requests with the JSON null value. By default, fields
+	// with empty values are omitted from API requests. However, any field
+	// with an empty value appearing in NullFields will be sent to the
+	// server as null. It is an error if a field in this list has a
+	// non-empty value. This may be used to include null fields in Patch
+	// requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudSaasacceleratorManagementProvidersV1SloExclusion) MarshalJSON() ([]byte, error) {
+	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1SloExclusion
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata:
+// SloMetadata contains resources required for proper SLO classification
+// of the
+// instance.
+type GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata struct {
+	// Exclusions: List of SLO exclusion windows. When multiple entries in
+	// the list match
+	// (matching the exclusion time-window against current time point)
+	// the exclusion reason used in the first matching entry will be
+	// published.
+	//
+	// It is not needed to include expired exclusion in this list, as only
+	// the
+	// currently applicable exclusions are taken into account by the
+	// eligibility
+	// exporting subsystem (the historical state of exclusions will be
+	// reflected
+	// in the historically produced timeseries regardless of the current
+	// state).
+	//
+	// This field can be used to mark the instance as temporary
+	// ineligible
+	// for the purpose of SLO calculation. For permanent instance SLO
+	// exclusion,
+	// a dedicated tier name can be used that does not have targets
+	// specified
+	// in the service SLO configuration.
+	Exclusions []*GoogleCloudSaasacceleratorManagementProvidersV1SloExclusion `json:"exclusions,omitempty"`
+
+	// Tier: Name of the SLO tier the Instance belongs to. This name will be
+	// expected to
+	// match the tiers specified in the service SLO configuration.
+	//
+	// Field is mandatory and must not be empty.
+	Tier string `json:"tier,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "Exclusions") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "Exclusions") to include in
+	// API requests with the JSON null value. By default, fields with empty
+	// values are omitted from API requests. However, any field with an
+	// empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata) MarshalJSON() ([]byte, error) {
+	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
 // Instance: A Cloud Filestore instance.
 type Instance struct {
 	// CreateTime: Output only.
diff --git a/file/v1beta1/file-api.json b/file/v1beta1/file-api.json
index 9e2687e..4c8af22 100644
--- a/file/v1beta1/file-api.json
+++ b/file/v1beta1/file-api.json
@@ -471,7 +471,7 @@
       }
     }
   },
-  "revision": "20190312",
+  "revision": "20190416",
   "rootUrl": "https://file.googleapis.com/",
   "schemas": {
     "CancelOperationRequest": {
@@ -502,6 +502,199 @@
       },
       "type": "object"
     },
+    "GoogleCloudSaasacceleratorManagementProvidersV1Instance": {
+      "description": "Instance represents the interface for SLM services to actuate the state\nof control plane resources.\n\nExample Instance in JSON, where\n  consumer-project=snapchat,\n  producer-project=cloud-sql:\n\n```json\nInstance:\n{\n  \"name\":\n  \"projects/snapchat/locations/us-east1/instances/prod-instance\",\n  \"create_time\": {\n    \"seconds\": 1526406431,\n  },\n  \"labels\": {\n    \"env\": \"prod\",\n    \"foo\": \"bar\"\n  },\n  \"state\": READY,\n  \"software_version\": \"cloud-sql-09-28-2018\",\n  \"maintenance_policy_names\": {\n    \"UpdatePolicy\":\n    \"projects/snapchat/locations/us-east1/maintenancePolicies/prod-update-policy\",\n  }\n  \"rollout_metadata\": {\n    \"projects/cloud-sql/locations/global/rolloutTypes/software_update\": {\n      \"release\":\n      \"projects/cloud-sql/locations/global/releases/cloud-sql-09-28-2018\",\n      \"rollout\":\n      \"projects/cloud-sql/locations/us-east1/rollouts/cloud-sql-09-28-2018-canary\",\n    }\n    \"projects/cloud-sql/locations/global/rolloutTypes/instance_restart\": {\n      \"release\":\n      \"projects/cloud-sql/locations/global/releases/cloud-sql-09-20-repair\",\n      \"rollout\":\n      \"projects/cloud-sql/locations/us-east1/rollouts/cloud-sql-09-20-repair-100-percent\",\n    }\n  }\n  \"tenant_project_id\": \"cloud-sql-test-tenant\",\n  \"producer_metadata\": {\n    \"cloud-sql-tier\": \"basic\",\n    \"cloud-sql-instance-size\": \"1G\",\n  },\n  \"provisioned_resources\": [\n    {\n      \"resource-type\": \"compute-instance\",\n      \"resource-url\":\n      \"https://www.googleapis.com/compute/v1/projects/cloud-sql/zones/us-east1-b/instances/vm-1\",\n    }\n  ],\n}\n```",
+      "id": "GoogleCloudSaasacceleratorManagementProvidersV1Instance",
+      "properties": {
+        "createTime": {
+          "description": "Output only. Timestamp when the resource was created.",
+          "format": "google-datetime",
+          "type": "string"
+        },
+        "labels": {
+          "additionalProperties": {
+            "type": "string"
+          },
+          "description": "Optional. Resource labels to represent user provided metadata. Each label\nis a key-value pair, where both the key and the value are arbitrary strings\nprovided by the user.",
+          "type": "object"
+        },
+        "maintenancePolicyNames": {
+          "additionalProperties": {
+            "type": "string"
+          },
+          "description": "The MaintenancePolicies that have been attached to the instance.\nThe key must be of the type name of the oneof policy name defined in\nMaintenancePolicy, and the referenced policy must define the same policy\ntype. For complete details of MaintenancePolicy, please refer to\n//depot/google3/google/cloud/saasaccelerator/maintenancepolicy/api/v1/maintenance_policy_resources.proto",
+          "type": "object"
+        },
+        "name": {
+          "description": "Unique name of the resource. It uses the form:\n `projects/{project_id}/locations/{location_id}/instances/{instance_id}`",
+          "type": "string"
+        },
+        "producerMetadata": {
+          "additionalProperties": {
+            "type": "string"
+          },
+          "description": "Output only. Custom string attributes used primarily to expose\nproducer-specific information in monitoring dashboards.\nSee go/get-instance-metadata.",
+          "type": "object"
+        },
+        "provisionedResources": {
+          "description": "Output only. The list of data plane resources provisioned for this\ninstance, e.g. compute VMs. See go/get-instance-metadata.",
+          "items": {
+            "$ref": "GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource"
+          },
+          "type": "array"
+        },
+        "rolloutMetadata": {
+          "additionalProperties": {
+            "$ref": "GoogleCloudSaasacceleratorManagementProvidersV1RolloutMetadata"
+          },
+          "description": "The map between RolloutType and the corresponding RolloutMetadata.\nThis is only mutated by rollout service. For actuation implementation,\nthis information is pass-through for Rollout management. Producer shall\nnot modify by itself.\nFor update of a single entry in this map, the update field mask shall\nfollow this sementics: go/advanced-field-masks",
+          "type": "object"
+        },
+        "sloMetadata": {
+          "$ref": "GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata",
+          "description": "Output only. SLO metadata for instance classification in the\nStandardized dataplane SLO platform.\nSee go/cloud-ssa-standard-slo for feature description."
+        },
+        "softwareVersions": {
+          "additionalProperties": {
+            "type": "string"
+          },
+          "description": "Software versions that are used to deploy this instance. This can be\nmutated by rollout services.",
+          "type": "object"
+        },
+        "state": {
+          "description": "Output only. Current lifecycle state of the resource (e.g. if it's being\ncreated or ready to use).",
+          "enum": [
+            "STATE_UNSPECIFIED",
+            "CREATING",
+            "READY",
+            "UPDATING",
+            "REPAIRING",
+            "DELETING"
+          ],
+          "enumDescriptions": [
+            "Unspecified state.",
+            "Instance is being created.",
+            "Instance has been created and is ready to use.",
+            "Instance is being updated.",
+            "Instance is unheathy and under repair.",
+            "Instance is being deleted."
+          ],
+          "type": "string"
+        },
+        "tenantProjectId": {
+          "description": "Output only. ID of the associated GCP tenant project.\nSee go/get-instance-metadata.",
+          "type": "string"
+        },
+        "updateTime": {
+          "description": "Output only. Timestamp when the resource was last modified.",
+          "format": "google-datetime",
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
+    "GoogleCloudSaasacceleratorManagementProvidersV1NotificationMetadata": {
+      "description": "NotificationMetadata is the notification state for an instance.",
+      "id": "GoogleCloudSaasacceleratorManagementProvidersV1NotificationMetadata",
+      "properties": {
+        "rescheduled": {
+          "description": "Whether the instance update has been rescheduled.",
+          "type": "boolean"
+        },
+        "scheduledEndTime": {
+          "description": "The scheduled end time for the maintenance window during which update\ncan be performed on the instance.",
+          "format": "google-datetime",
+          "type": "string"
+        },
+        "scheduledStartTime": {
+          "description": "The scheduled start time for the maintenance window during which\nupdate can be performed on the instance.",
+          "format": "google-datetime",
+          "type": "string"
+        },
+        "targetRelease": {
+          "description": "The target release to be applied to the instance.",
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
+    "GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource": {
+      "description": "Describes provisioned dataplane resources.",
+      "id": "GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource",
+      "properties": {
+        "resourceType": {
+          "description": "Type of the resource. This can be either a GCP resource or a custom one\n(e.g. another cloud provider's VM). For GCP compute resources use singular\nform of the names listed in GCP compute API documentation\n(https://cloud.google.com/compute/docs/reference/rest/v1/), prefixed with\n'compute-', for example: 'compute-instance', 'compute-disk',\n'compute-autoscaler'.",
+          "type": "string"
+        },
+        "resourceUrl": {
+          "description": "URL identifying the resource, e.g.\n\"https://www.googleapis.com/compute/v1/projects/...)\".",
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
+    "GoogleCloudSaasacceleratorManagementProvidersV1RolloutMetadata": {
+      "description": "RolloutMetadata for an actuation instance. It maps to a single RolloutType.",
+      "id": "GoogleCloudSaasacceleratorManagementProvidersV1RolloutMetadata",
+      "properties": {
+        "notification": {
+          "$ref": "GoogleCloudSaasacceleratorManagementProvidersV1NotificationMetadata",
+          "description": "Instance level notification metadata."
+        },
+        "releaseName": {
+          "description": "The last Release that has been applied to the instance.",
+          "type": "string"
+        },
+        "rolloutName": {
+          "description": "The last rollout that has been applied to the instance.",
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
+    "GoogleCloudSaasacceleratorManagementProvidersV1SloExclusion": {
+      "description": "A temporal SLO exclusion specification.",
+      "id": "GoogleCloudSaasacceleratorManagementProvidersV1SloExclusion",
+      "properties": {
+        "exclusionDuration": {
+          "description": "Exclusion duration. No restrictions on the possible values.\n\nWhen an ongoing operation is taking longer than initially expected,\nan existing entry in the exclusion list can be updated by extending the\nduration. This is supported by the subsystem exporting eligibility data\nas long as such extension is committed at least 10 minutes before the\noriginal exclusion expiration - otherwise it is possible that there will\nbe \"gaps\" in the exclusion application in the exported timeseries.",
+          "format": "google-duration",
+          "type": "string"
+        },
+        "exclusionStartTime": {
+          "description": "Start time of the exclusion. No alignment (e.g. to a full minute) needed.",
+          "format": "google-datetime",
+          "type": "string"
+        },
+        "reason": {
+          "description": "Human-readable reason for the exclusion.\nThis should be a static string (e.g. \"Disruptive update in progress\")\nand should not contain dynamically generated data (e.g. instance name).\nCan be left empty.",
+          "type": "string"
+        },
+        "sloName": {
+          "description": "Name of an SLI/SLO that this exclusion applies to. Can be left empty,\nsignaling that the instance should be excluded from all SLI/SLOs defined\nin the service SLO configuration.",
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
+    "GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata": {
+      "description": "SloMetadata contains resources required for proper SLO classification of the\ninstance.",
+      "id": "GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata",
+      "properties": {
+        "exclusions": {
+          "description": "List of SLO exclusion windows. When multiple entries in the list match\n(matching the exclusion time-window against current time point)\nthe exclusion reason used in the first matching entry will be published.\n\nIt is not needed to include expired exclusion in this list, as only the\ncurrently applicable exclusions are taken into account by the eligibility\nexporting subsystem (the historical state of exclusions will be reflected\nin the historically produced timeseries regardless of the current state).\n\nThis field can be used to mark the instance as temporary ineligible\nfor the purpose of SLO calculation. For permanent instance SLO exclusion,\na dedicated tier name can be used that does not have targets specified\nin the service SLO configuration.",
+          "items": {
+            "$ref": "GoogleCloudSaasacceleratorManagementProvidersV1SloExclusion"
+          },
+          "type": "array"
+        },
+        "tier": {
+          "description": "Name of the SLO tier the Instance belongs to. This name will be expected to\nmatch the tiers specified in the service SLO configuration.\n\nField is mandatory and must not be empty.",
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
     "Instance": {
       "description": "A Cloud Filestore instance.",
       "id": "Instance",
diff --git a/file/v1beta1/file-gen.go b/file/v1beta1/file-gen.go
index ac6ebc6..aa298aa 100644
--- a/file/v1beta1/file-gen.go
+++ b/file/v1beta1/file-gen.go
@@ -230,6 +230,426 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
+// GoogleCloudSaasacceleratorManagementProvidersV1Instance: Instance
+// represents the interface for SLM services to actuate the state
+// of control plane resources.
+//
+// Example Instance in JSON, where
+//   consumer-project=snapchat,
+//   producer-project=cloud-sql:
+//
+// ```json
+// Instance:
+// {
+//   "name":
+//   "projects/snapchat/locations/us-east1/instances/prod-instance",
+//   "create_time": {
+//     "seconds": 1526406431,
+//   },
+//   "labels": {
+//     "env": "prod",
+//     "foo": "bar"
+//   },
+//   "state": READY,
+//   "software_version": "cloud-sql-09-28-2018",
+//   "maintenance_policy_names": {
+//     "UpdatePolicy":
+//
+// "projects/snapchat/locations/us-east1/maintenancePolicies/prod-update-
+// policy",
+//   }
+//   "rollout_metadata": {
+//
+// "projects/cloud-sql/locations/global/rolloutTypes/software_update":
+// {
+//       "release":
+//
+// "projects/cloud-sql/locations/global/releases/cloud-sql-09-28-2018",
+//       "rollout":
+//
+// "projects/cloud-sql/locations/us-east1/rollouts/cloud-sql-09-28-2018-c
+// anary",
+//     }
+//
+// "projects/cloud-sql/locations/global/rolloutTypes/instance_restart":
+// {
+//       "release":
+//
+// "projects/cloud-sql/locations/global/releases/cloud-sql-09-20-repair",
+//
+//       "rollout":
+//
+// "projects/cloud-sql/locations/us-east1/rollouts/cloud-sql-09-20-repair
+// -100-percent",
+//     }
+//   }
+//   "tenant_project_id": "cloud-sql-test-tenant",
+//   "producer_metadata": {
+//     "cloud-sql-tier": "basic",
+//     "cloud-sql-instance-size": "1G",
+//   },
+//   "provisioned_resources": [
+//     {
+//       "resource-type": "compute-instance",
+//       "resource-url":
+//
+// "https://www.googleapis.com/compute/v1/projects/cloud-sql/zones/us-eas
+// t1-b/instances/vm-1",
+//     }
+//   ],
+// }
+// ```
+type GoogleCloudSaasacceleratorManagementProvidersV1Instance struct {
+	// CreateTime: Output only. Timestamp when the resource was created.
+	CreateTime string `json:"createTime,omitempty"`
+
+	// Labels: Optional. Resource labels to represent user provided
+	// metadata. Each label
+	// is a key-value pair, where both the key and the value are arbitrary
+	// strings
+	// provided by the user.
+	Labels map[string]string `json:"labels,omitempty"`
+
+	// MaintenancePolicyNames: The MaintenancePolicies that have been
+	// attached to the instance.
+	// The key must be of the type name of the oneof policy name defined
+	// in
+	// MaintenancePolicy, and the referenced policy must define the same
+	// policy
+	// type. For complete details of MaintenancePolicy, please refer
+	// to
+	// //depot/google3/google/cloud/saasaccelerator/maintenancepolicy/api/
+	// v1/maintenance_policy_resources.proto
+	MaintenancePolicyNames map[string]string `json:"maintenancePolicyNames,omitempty"`
+
+	// Name: Unique name of the resource. It uses the form:
+	//
+	// `projects/{project_id}/locations/{location_id}/instances/{instance_id}
+	// `
+	Name string `json:"name,omitempty"`
+
+	// ProducerMetadata: Output only. Custom string attributes used
+	// primarily to expose
+	// producer-specific information in monitoring dashboards.
+	// See go/get-instance-metadata.
+	ProducerMetadata map[string]string `json:"producerMetadata,omitempty"`
+
+	// ProvisionedResources: Output only. The list of data plane resources
+	// provisioned for this
+	// instance, e.g. compute VMs. See go/get-instance-metadata.
+	ProvisionedResources []*GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource `json:"provisionedResources,omitempty"`
+
+	// RolloutMetadata: The map between RolloutType and the corresponding
+	// RolloutMetadata.
+	// This is only mutated by rollout service. For actuation
+	// implementation,
+	// this information is pass-through for Rollout management. Producer
+	// shall
+	// not modify by itself.
+	// For update of a single entry in this map, the update field mask
+	// shall
+	// follow this sementics: go/advanced-field-masks
+	RolloutMetadata map[string]GoogleCloudSaasacceleratorManagementProvidersV1RolloutMetadata `json:"rolloutMetadata,omitempty"`
+
+	// SloMetadata: Output only. SLO metadata for instance classification in
+	// the
+	// Standardized dataplane SLO platform.
+	// See go/cloud-ssa-standard-slo for feature description.
+	SloMetadata *GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata `json:"sloMetadata,omitempty"`
+
+	// SoftwareVersions: Software versions that are used to deploy this
+	// instance. This can be
+	// mutated by rollout services.
+	SoftwareVersions map[string]string `json:"softwareVersions,omitempty"`
+
+	// State: Output only. Current lifecycle state of the resource (e.g. if
+	// it's being
+	// created or ready to use).
+	//
+	// Possible values:
+	//   "STATE_UNSPECIFIED" - Unspecified state.
+	//   "CREATING" - Instance is being created.
+	//   "READY" - Instance has been created and is ready to use.
+	//   "UPDATING" - Instance is being updated.
+	//   "REPAIRING" - Instance is unheathy and under repair.
+	//   "DELETING" - Instance is being deleted.
+	State string `json:"state,omitempty"`
+
+	// TenantProjectId: Output only. ID of the associated GCP tenant
+	// project.
+	// See go/get-instance-metadata.
+	TenantProjectId string `json:"tenantProjectId,omitempty"`
+
+	// UpdateTime: Output only. Timestamp when the resource was last
+	// modified.
+	UpdateTime string `json:"updateTime,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "CreateTime") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "CreateTime") to include in
+	// API requests with the JSON null value. By default, fields with empty
+	// values are omitted from API requests. However, any field with an
+	// empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudSaasacceleratorManagementProvidersV1Instance) MarshalJSON() ([]byte, error) {
+	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1Instance
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// GoogleCloudSaasacceleratorManagementProvidersV1NotificationMetadata:
+// NotificationMetadata is the notification state for an instance.
+type GoogleCloudSaasacceleratorManagementProvidersV1NotificationMetadata struct {
+	// Rescheduled: Whether the instance update has been rescheduled.
+	Rescheduled bool `json:"rescheduled,omitempty"`
+
+	// ScheduledEndTime: The scheduled end time for the maintenance window
+	// during which update
+	// can be performed on the instance.
+	ScheduledEndTime string `json:"scheduledEndTime,omitempty"`
+
+	// ScheduledStartTime: The scheduled start time for the maintenance
+	// window during which
+	// update can be performed on the instance.
+	ScheduledStartTime string `json:"scheduledStartTime,omitempty"`
+
+	// TargetRelease: The target release to be applied to the instance.
+	TargetRelease string `json:"targetRelease,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "Rescheduled") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "Rescheduled") to include
+	// in API requests with the JSON null value. By default, fields with
+	// empty values are omitted from API requests. However, any field with
+	// an empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudSaasacceleratorManagementProvidersV1NotificationMetadata) MarshalJSON() ([]byte, error) {
+	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1NotificationMetadata
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource:
+// Describes provisioned dataplane resources.
+type GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource struct {
+	// ResourceType: Type of the resource. This can be either a GCP resource
+	// or a custom one
+	// (e.g. another cloud provider's VM). For GCP compute resources use
+	// singular
+	// form of the names listed in GCP compute API
+	// documentation
+	// (https://cloud.google.com/compute/docs/reference/rest/v1
+	// /), prefixed with
+	// 'compute-', for example: 'compute-instance',
+	// 'compute-disk',
+	// 'compute-autoscaler'.
+	ResourceType string `json:"resourceType,omitempty"`
+
+	// ResourceUrl: URL identifying the resource,
+	// e.g.
+	// "https://www.googleapis.com/compute/v1/projects/...)".
+	ResourceUrl string `json:"resourceUrl,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "ResourceType") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "ResourceType") to include
+	// in API requests with the JSON null value. By default, fields with
+	// empty values are omitted from API requests. However, any field with
+	// an empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource) MarshalJSON() ([]byte, error) {
+	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// GoogleCloudSaasacceleratorManagementProvidersV1RolloutMetadata:
+// RolloutMetadata for an actuation instance. It maps to a single
+// RolloutType.
+type GoogleCloudSaasacceleratorManagementProvidersV1RolloutMetadata struct {
+	// Notification: Instance level notification metadata.
+	Notification *GoogleCloudSaasacceleratorManagementProvidersV1NotificationMetadata `json:"notification,omitempty"`
+
+	// ReleaseName: The last Release that has been applied to the instance.
+	ReleaseName string `json:"releaseName,omitempty"`
+
+	// RolloutName: The last rollout that has been applied to the instance.
+	RolloutName string `json:"rolloutName,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "Notification") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "Notification") to include
+	// in API requests with the JSON null value. By default, fields with
+	// empty values are omitted from API requests. However, any field with
+	// an empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudSaasacceleratorManagementProvidersV1RolloutMetadata) MarshalJSON() ([]byte, error) {
+	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1RolloutMetadata
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// GoogleCloudSaasacceleratorManagementProvidersV1SloExclusion: A
+// temporal SLO exclusion specification.
+type GoogleCloudSaasacceleratorManagementProvidersV1SloExclusion struct {
+	// ExclusionDuration: Exclusion duration. No restrictions on the
+	// possible values.
+	//
+	// When an ongoing operation is taking longer than initially
+	// expected,
+	// an existing entry in the exclusion list can be updated by extending
+	// the
+	// duration. This is supported by the subsystem exporting eligibility
+	// data
+	// as long as such extension is committed at least 10 minutes before
+	// the
+	// original exclusion expiration - otherwise it is possible that there
+	// will
+	// be "gaps" in the exclusion application in the exported timeseries.
+	ExclusionDuration string `json:"exclusionDuration,omitempty"`
+
+	// ExclusionStartTime: Start time of the exclusion. No alignment (e.g.
+	// to a full minute) needed.
+	ExclusionStartTime string `json:"exclusionStartTime,omitempty"`
+
+	// Reason: Human-readable reason for the exclusion.
+	// This should be a static string (e.g. "Disruptive update in
+	// progress")
+	// and should not contain dynamically generated data (e.g. instance
+	// name).
+	// Can be left empty.
+	Reason string `json:"reason,omitempty"`
+
+	// SloName: Name of an SLI/SLO that this exclusion applies to. Can be
+	// left empty,
+	// signaling that the instance should be excluded from all SLI/SLOs
+	// defined
+	// in the service SLO configuration.
+	SloName string `json:"sloName,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "ExclusionDuration")
+	// to unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "ExclusionDuration") to
+	// include in API requests with the JSON null value. By default, fields
+	// with empty values are omitted from API requests. However, any field
+	// with an empty value appearing in NullFields will be sent to the
+	// server as null. It is an error if a field in this list has a
+	// non-empty value. This may be used to include null fields in Patch
+	// requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudSaasacceleratorManagementProvidersV1SloExclusion) MarshalJSON() ([]byte, error) {
+	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1SloExclusion
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata:
+// SloMetadata contains resources required for proper SLO classification
+// of the
+// instance.
+type GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata struct {
+	// Exclusions: List of SLO exclusion windows. When multiple entries in
+	// the list match
+	// (matching the exclusion time-window against current time point)
+	// the exclusion reason used in the first matching entry will be
+	// published.
+	//
+	// It is not needed to include expired exclusion in this list, as only
+	// the
+	// currently applicable exclusions are taken into account by the
+	// eligibility
+	// exporting subsystem (the historical state of exclusions will be
+	// reflected
+	// in the historically produced timeseries regardless of the current
+	// state).
+	//
+	// This field can be used to mark the instance as temporary
+	// ineligible
+	// for the purpose of SLO calculation. For permanent instance SLO
+	// exclusion,
+	// a dedicated tier name can be used that does not have targets
+	// specified
+	// in the service SLO configuration.
+	Exclusions []*GoogleCloudSaasacceleratorManagementProvidersV1SloExclusion `json:"exclusions,omitempty"`
+
+	// Tier: Name of the SLO tier the Instance belongs to. This name will be
+	// expected to
+	// match the tiers specified in the service SLO configuration.
+	//
+	// Field is mandatory and must not be empty.
+	Tier string `json:"tier,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "Exclusions") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "Exclusions") to include in
+	// API requests with the JSON null value. By default, fields with empty
+	// values are omitted from API requests. However, any field with an
+	// empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata) MarshalJSON() ([]byte, error) {
+	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
 // Instance: A Cloud Filestore instance.
 type Instance struct {
 	// CreateTime: Output only.
diff --git a/firebasehosting/v1beta1/firebasehosting-api.json b/firebasehosting/v1beta1/firebasehosting-api.json
index 554604b..006172b 100644
--- a/firebasehosting/v1beta1/firebasehosting-api.json
+++ b/firebasehosting/v1beta1/firebasehosting-api.json
@@ -604,7 +604,7 @@
       }
     }
   },
-  "revision": "20190205",
+  "revision": "20190422",
   "rootUrl": "https://firebasehosting.googleapis.com/",
   "schemas": {
     "ActingUser": {
@@ -653,15 +653,15 @@
       "type": "object"
     },
     "CloudRunRewrite": {
-      "description": "A configured rewrite that will direct any requests to a Cloud Run service. If\nthe Cloud Run service does not exist when setting or updating your Firebase\nHosting configuration then the request will fail. Any errors from the Cloud\nRun service (including when the service has been deleted) will be passed back\ndown to the end user.",
+      "description": "A configured rewrite that directs requests to a Cloud Run service. If the\nCloud Run service does not exist when setting or updating your Firebase\nHosting configuration, then the request fails. Any errors from the Cloud Run\nservice are passed to the end user (for example, if you delete a service, any\nrequests directed to that service receive a `404` error).",
       "id": "CloudRunRewrite",
       "properties": {
         "region": {
-          "description": "Optional. The region where the Cloud Run service is hosted.  Defaults to\n`us-central1` if not supplied.",
+          "description": "Optional. User-provided region where the Cloud Run service is hosted.\u003cbr\u003e\nDefaults to `us-central1` if not supplied.",
           "type": "string"
         },
         "serviceId": {
-          "description": "Required. User supplied ID of the Cloud Run service.",
+          "description": "Required. User-defined ID of the Cloud Run service.",
           "type": "string"
         }
       },
diff --git a/firebasehosting/v1beta1/firebasehosting-gen.go b/firebasehosting/v1beta1/firebasehosting-gen.go
index 04abe39..8dd1daf 100644
--- a/firebasehosting/v1beta1/firebasehosting-gen.go
+++ b/firebasehosting/v1beta1/firebasehosting-gen.go
@@ -308,22 +308,22 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
-// CloudRunRewrite: A configured rewrite that will direct any requests
-// to a Cloud Run service. If
-// the Cloud Run service does not exist when setting or updating your
+// CloudRunRewrite: A configured rewrite that directs requests to a
+// Cloud Run service. If the
+// Cloud Run service does not exist when setting or updating your
 // Firebase
-// Hosting configuration then the request will fail. Any errors from the
-// Cloud
-// Run service (including when the service has been deleted) will be
-// passed back
-// down to the end user.
+// Hosting configuration, then the request fails. Any errors from the
+// Cloud Run
+// service are passed to the end user (for example, if you delete a
+// service, any
+// requests directed to that service receive a `404` error).
 type CloudRunRewrite struct {
-	// Region: Optional. The region where the Cloud Run service is hosted.
-	// Defaults to
-	// `us-central1` if not supplied.
+	// Region: Optional. User-provided region where the Cloud Run service is
+	// hosted.<br>
+	// Defaults to `us-central1` if not supplied.
 	Region string `json:"region,omitempty"`
 
-	// ServiceId: Required. User supplied ID of the Cloud Run service.
+	// ServiceId: Required. User-defined ID of the Cloud Run service.
 	ServiceId string `json:"serviceId,omitempty"`
 
 	// ForceSendFields is a list of field names (e.g. "Region") to
diff --git a/healthcare/v1alpha/healthcare-api.json b/healthcare/v1alpha/healthcare-api.json
index 69e110b..6bf0bfc 100644
--- a/healthcare/v1alpha/healthcare-api.json
+++ b/healthcare/v1alpha/healthcare-api.json
@@ -178,117 +178,6 @@
           "resources": {
             "datasets": {
               "methods": {
-                "create": {
-                  "description": "Creates a new health dataset.",
-                  "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets",
-                  "httpMethod": "POST",
-                  "id": "healthcare.projects.locations.datasets.create",
-                  "parameterOrder": [
-                    "parent"
-                  ],
-                  "parameters": {
-                    "datasetId": {
-                      "description": "The ID of the dataset that is being created.\nThe string must match the following regex: `[\\p{L}\\p{N}_\\-\\.]{1,256}`.",
-                      "location": "query",
-                      "type": "string"
-                    },
-                    "parent": {
-                      "description": "The name of the project in which the dataset should be created (e.g.,\n`projects/{project_id}/locations/{location_id}`).",
-                      "location": "path",
-                      "pattern": "^projects/[^/]+/locations/[^/]+$",
-                      "required": true,
-                      "type": "string"
-                    }
-                  },
-                  "path": "v1alpha/{+parent}/datasets",
-                  "request": {
-                    "$ref": "Dataset"
-                  },
-                  "response": {
-                    "$ref": "Dataset"
-                  },
-                  "scopes": [
-                    "https://www.googleapis.com/auth/cloud-platform"
-                  ]
-                },
-                "deidentify": {
-                  "description": "Creates a new dataset containing de-identified data from the source\ndataset. The metadata field type\nis OperationMetadata.\nIf the request is successful, the\nresponse field type is\nDeidentifySummary.\nIf errors occur,\ndetails field type is\nDeidentifyErrorDetails.",
-                  "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}:deidentify",
-                  "httpMethod": "POST",
-                  "id": "healthcare.projects.locations.datasets.deidentify",
-                  "parameterOrder": [
-                    "sourceDataset"
-                  ],
-                  "parameters": {
-                    "sourceDataset": {
-                      "description": "Source dataset resource name. (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`).",
-                      "location": "path",
-                      "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-                      "required": true,
-                      "type": "string"
-                    }
-                  },
-                  "path": "v1alpha/{+sourceDataset}:deidentify",
-                  "request": {
-                    "$ref": "DeidentifyDatasetRequest"
-                  },
-                  "response": {
-                    "$ref": "Operation"
-                  },
-                  "scopes": [
-                    "https://www.googleapis.com/auth/cloud-platform"
-                  ]
-                },
-                "delete": {
-                  "description": "Deletes the specified health dataset and all data contained in the dataset.\nDeleting a dataset does not affect the sources from which the dataset was\nimported (if any).",
-                  "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}",
-                  "httpMethod": "DELETE",
-                  "id": "healthcare.projects.locations.datasets.delete",
-                  "parameterOrder": [
-                    "name"
-                  ],
-                  "parameters": {
-                    "name": {
-                      "description": "The name of the dataset to delete (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`).",
-                      "location": "path",
-                      "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-                      "required": true,
-                      "type": "string"
-                    }
-                  },
-                  "path": "v1alpha/{+name}",
-                  "response": {
-                    "$ref": "Empty"
-                  },
-                  "scopes": [
-                    "https://www.googleapis.com/auth/cloud-platform"
-                  ]
-                },
-                "get": {
-                  "description": "Gets any metadata associated with a dataset.",
-                  "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}",
-                  "httpMethod": "GET",
-                  "id": "healthcare.projects.locations.datasets.get",
-                  "parameterOrder": [
-                    "name"
-                  ],
-                  "parameters": {
-                    "name": {
-                      "description": "The name of the dataset to read (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`).",
-                      "location": "path",
-                      "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-                      "required": true,
-                      "type": "string"
-                    }
-                  },
-                  "path": "v1alpha/{+name}",
-                  "response": {
-                    "$ref": "Dataset"
-                  },
-                  "scopes": [
-                    "https://www.googleapis.com/auth/cloud-platform"
-                  ]
-                },
                 "getIamPolicy": {
                   "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
                   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}:getIamPolicy",
@@ -314,76 +203,6 @@
                     "https://www.googleapis.com/auth/cloud-platform"
                   ]
                 },
-                "list": {
-                  "description": "Lists the health datasets in the current project.",
-                  "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets",
-                  "httpMethod": "GET",
-                  "id": "healthcare.projects.locations.datasets.list",
-                  "parameterOrder": [
-                    "parent"
-                  ],
-                  "parameters": {
-                    "pageSize": {
-                      "description": "The maximum number of items to return. Capped to 100 if not specified.\nMay not be larger than 1000.",
-                      "format": "int32",
-                      "location": "query",
-                      "type": "integer"
-                    },
-                    "pageToken": {
-                      "description": "The next_page_token value returned from a previous List request, if any.",
-                      "location": "query",
-                      "type": "string"
-                    },
-                    "parent": {
-                      "description": "The name of the project whose datasets should be listed (e.g.,\n`projects/{project_id}/locations/{location_id}`).",
-                      "location": "path",
-                      "pattern": "^projects/[^/]+/locations/[^/]+$",
-                      "required": true,
-                      "type": "string"
-                    }
-                  },
-                  "path": "v1alpha/{+parent}/datasets",
-                  "response": {
-                    "$ref": "ListDatasetsResponse"
-                  },
-                  "scopes": [
-                    "https://www.googleapis.com/auth/cloud-platform"
-                  ]
-                },
-                "patch": {
-                  "description": "Updates dataset metadata.",
-                  "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}",
-                  "httpMethod": "PATCH",
-                  "id": "healthcare.projects.locations.datasets.patch",
-                  "parameterOrder": [
-                    "name"
-                  ],
-                  "parameters": {
-                    "name": {
-                      "description": "Output only. Resource name of the dataset, of the form\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`.",
-                      "location": "path",
-                      "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-                      "required": true,
-                      "type": "string"
-                    },
-                    "updateMask": {
-                      "description": "The update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask",
-                      "format": "google-fieldmask",
-                      "location": "query",
-                      "type": "string"
-                    }
-                  },
-                  "path": "v1alpha/{+name}",
-                  "request": {
-                    "$ref": "Dataset"
-                  },
-                  "response": {
-                    "$ref": "Dataset"
-                  },
-                  "scopes": [
-                    "https://www.googleapis.com/auth/cloud-platform"
-                  ]
-                },
                 "setIamPolicy": {
                   "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
                   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}:setIamPolicy",
@@ -442,524 +261,8 @@
                 }
               },
               "resources": {
-                "annotationStores": {
-                  "methods": {
-                    "create": {
-                      "description": "Creates a new Annotation store within the parent dataset.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores",
-                      "httpMethod": "POST",
-                      "id": "healthcare.projects.locations.datasets.annotationStores.create",
-                      "parameterOrder": [
-                        "parent"
-                      ],
-                      "parameters": {
-                        "annotationStoreId": {
-                          "description": "The ID of the Annotation store that is being created.\nThe string must match the following regex: `[\\p{L}\\p{N}_\\-\\.]{1,256}`.",
-                          "location": "query",
-                          "type": "string"
-                        },
-                        "parent": {
-                          "description": "The name of the dataset this Annotation store belongs to.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+parent}/annotationStores",
-                      "request": {
-                        "$ref": "AnnotationStore"
-                      },
-                      "response": {
-                        "$ref": "AnnotationStore"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "delete": {
-                      "description": "Deletes the specified Annotation store and removes all annotations that are\ncontained within it.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}",
-                      "httpMethod": "DELETE",
-                      "id": "healthcare.projects.locations.datasets.annotationStores.delete",
-                      "parameterOrder": [
-                        "name"
-                      ],
-                      "parameters": {
-                        "name": {
-                          "description": "The resource name of the Annotation store to delete.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+name}",
-                      "response": {
-                        "$ref": "Empty"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "get": {
-                      "description": "Gets the specified Annotation store or returns NOT_FOUND if it does not\nexist.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}",
-                      "httpMethod": "GET",
-                      "id": "healthcare.projects.locations.datasets.annotationStores.get",
-                      "parameterOrder": [
-                        "name"
-                      ],
-                      "parameters": {
-                        "name": {
-                          "description": "The resource name of the Annotation store to get.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+name}",
-                      "response": {
-                        "$ref": "AnnotationStore"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "getIamPolicy": {
-                      "description": "Gets the access control policy for a resource. Returns NOT_FOUND error if\nthe resource does not exist. Returns an empty policy if the resource exists\nbut does not have a policy set.\n\nAuthorization requires the Google IAM permission\n`healthcare.AnnotationStores.getIamPolicy` on the specified resource",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}:getIamPolicy",
-                      "httpMethod": "POST",
-                      "id": "healthcare.projects.locations.datasets.annotationStores.getIamPolicy",
-                      "parameterOrder": [
-                        "resource"
-                      ],
-                      "parameters": {
-                        "resource": {
-                          "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+resource}:getIamPolicy",
-                      "request": {
-                        "$ref": "GetIamPolicyRequest"
-                      },
-                      "response": {
-                        "$ref": "Policy"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "list": {
-                      "description": "Lists the Annotation stores in the given dataset for a source store.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores",
-                      "httpMethod": "GET",
-                      "id": "healthcare.projects.locations.datasets.annotationStores.list",
-                      "parameterOrder": [
-                        "parent"
-                      ],
-                      "parameters": {
-                        "filter": {
-                          "description": "Restricts stores returned to those matching a filter. Syntax:\nhttps://cloud.google.com/appengine/docs/standard/python/search/query_strings\nOnly filtering on labels is supported, for example `labels.key=value`.",
-                          "location": "query",
-                          "type": "string"
-                        },
-                        "pageSize": {
-                          "description": "Limit on the number of Annotation stores to return in a single response.\nIf zero the default page size of 100 is used.",
-                          "format": "int32",
-                          "location": "query",
-                          "type": "integer"
-                        },
-                        "pageToken": {
-                          "description": "The next_page_token value returned from the previous List request, if any.",
-                          "location": "query",
-                          "type": "string"
-                        },
-                        "parent": {
-                          "description": "Name of the dataset.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+parent}/annotationStores",
-                      "response": {
-                        "$ref": "ListAnnotationStoresResponse"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "patch": {
-                      "description": "Updates the specified Annotation store.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}",
-                      "httpMethod": "PATCH",
-                      "id": "healthcare.projects.locations.datasets.annotationStores.patch",
-                      "parameterOrder": [
-                        "name"
-                      ],
-                      "parameters": {
-                        "name": {
-                          "description": "Output only. Resource name of the Annotation store, of the form\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/annotationStores/{annotation_store_id}`.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        },
-                        "updateMask": {
-                          "description": "The update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask",
-                          "format": "google-fieldmask",
-                          "location": "query",
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+name}",
-                      "request": {
-                        "$ref": "AnnotationStore"
-                      },
-                      "response": {
-                        "$ref": "AnnotationStore"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "setIamPolicy": {
-                      "description": "POLICIES\nSets the access control policy for a resource. Replaces any existing\npolicy.\n\nAuthorization requires the Google IAM permission\n'healthcare.annotationStores.setIamPolicy' on the specified resource",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}:setIamPolicy",
-                      "httpMethod": "POST",
-                      "id": "healthcare.projects.locations.datasets.annotationStores.setIamPolicy",
-                      "parameterOrder": [
-                        "resource"
-                      ],
-                      "parameters": {
-                        "resource": {
-                          "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+resource}:setIamPolicy",
-                      "request": {
-                        "$ref": "SetIamPolicyRequest"
-                      },
-                      "response": {
-                        "$ref": "Policy"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "testIamPermissions": {
-                      "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nThere is no permission required to make this API call.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}:testIamPermissions",
-                      "httpMethod": "POST",
-                      "id": "healthcare.projects.locations.datasets.annotationStores.testIamPermissions",
-                      "parameterOrder": [
-                        "resource"
-                      ],
-                      "parameters": {
-                        "resource": {
-                          "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+resource}:testIamPermissions",
-                      "request": {
-                        "$ref": "TestIamPermissionsRequest"
-                      },
-                      "response": {
-                        "$ref": "TestIamPermissionsResponse"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    }
-                  },
-                  "resources": {
-                    "annotations": {
-                      "methods": {
-                        "create": {
-                          "description": "Creates a new Annotation\nrecord. It is valid to create Annotation objects for the same source more\nthan once since a unique ID is assigned to each record by this service.",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}/annotations",
-                          "httpMethod": "POST",
-                          "id": "healthcare.projects.locations.datasets.annotationStores.annotations.create",
-                          "parameterOrder": [
-                            "parent"
-                          ],
-                          "parameters": {
-                            "parent": {
-                              "description": "The name of the Annotation store this annotation belongs to. For example,\n`projects/my-project/locations/us-central1/datasets/mydataset/annotationStores/myannotationstore`.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+parent}/annotations",
-                          "request": {
-                            "$ref": "Annotation"
-                          },
-                          "response": {
-                            "$ref": "Annotation"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "delete": {
-                          "description": "Deletes an Annotation or\nreturns NOT_FOUND if it does not exist.",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}/annotations/{annotationsId}",
-                          "httpMethod": "DELETE",
-                          "id": "healthcare.projects.locations.datasets.annotationStores.annotations.delete",
-                          "parameterOrder": [
-                            "name"
-                          ],
-                          "parameters": {
-                            "name": {
-                              "description": "The resource name of the Annotation to delete.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+/annotations/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+name}",
-                          "response": {
-                            "$ref": "Empty"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "get": {
-                          "description": "Gets an Annotation.",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}/annotations/{annotationsId}",
-                          "httpMethod": "GET",
-                          "id": "healthcare.projects.locations.datasets.annotationStores.annotations.get",
-                          "parameterOrder": [
-                            "name"
-                          ],
-                          "parameters": {
-                            "name": {
-                              "description": "The resource name of the Annotation to retrieve.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+/annotations/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+name}",
-                          "response": {
-                            "$ref": "Annotation"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "list": {
-                          "description": "Lists the Annotations in the\ngiven Annotation store\nfor a source resource.",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}/annotations",
-                          "httpMethod": "GET",
-                          "id": "healthcare.projects.locations.datasets.annotationStores.annotations.list",
-                          "parameterOrder": [
-                            "parent"
-                          ],
-                          "parameters": {
-                            "filter": {
-                              "description": "Restricts Annotations returned to those matching a filter. Syntax:\nhttps://cloud.google.com/appengine/docs/standard/python/search/query_strings\nFields/functions available for filtering are:\n- source_version",
-                              "location": "query",
-                              "type": "string"
-                            },
-                            "pageSize": {
-                              "description": "Limit on the number of Annotations to return in a single response.\nIf zero the default page size of 100 is used.",
-                              "format": "int32",
-                              "location": "query",
-                              "type": "integer"
-                            },
-                            "pageToken": {
-                              "description": "The next_page_token value returned from the previous List request, if any.",
-                              "location": "query",
-                              "type": "string"
-                            },
-                            "parent": {
-                              "description": "Name of the Annotation store to retrieve Annotations from.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+parent}/annotations",
-                          "response": {
-                            "$ref": "ListAnnotationsResponse"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "patch": {
-                          "description": "Updates the Annotation.",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}/annotations/{annotationsId}",
-                          "httpMethod": "PATCH",
-                          "id": "healthcare.projects.locations.datasets.annotationStores.annotations.patch",
-                          "parameterOrder": [
-                            "name"
-                          ],
-                          "parameters": {
-                            "name": {
-                              "description": "Output only. Resource name of the Annotation, of the form\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/annotationStores/{annotation_store_id}/annotations/{annotation_id}`.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+/annotations/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            },
-                            "updateMask": {
-                              "description": "The update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask",
-                              "format": "google-fieldmask",
-                              "location": "query",
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+name}",
-                          "request": {
-                            "$ref": "Annotation"
-                          },
-                          "response": {
-                            "$ref": "Annotation"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        }
-                      }
-                    }
-                  }
-                },
                 "dicomStores": {
                   "methods": {
-                    "create": {
-                      "description": "Creates a new DICOM store within the parent dataset.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores",
-                      "httpMethod": "POST",
-                      "id": "healthcare.projects.locations.datasets.dicomStores.create",
-                      "parameterOrder": [
-                        "parent"
-                      ],
-                      "parameters": {
-                        "dicomStoreId": {
-                          "description": "The ID of the DICOM store that is being created.\nThe string must match the following regex: `[\\p{L}\\p{N}_\\-\\.]{1,256}`.",
-                          "location": "query",
-                          "type": "string"
-                        },
-                        "parent": {
-                          "description": "The name of the dataset this DICOM store belongs to.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+parent}/dicomStores",
-                      "request": {
-                        "$ref": "DicomStore"
-                      },
-                      "response": {
-                        "$ref": "DicomStore"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "delete": {
-                      "description": "Deletes the specified DICOM store and removes all images that are contained\nwithin it.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}",
-                      "httpMethod": "DELETE",
-                      "id": "healthcare.projects.locations.datasets.dicomStores.delete",
-                      "parameterOrder": [
-                        "name"
-                      ],
-                      "parameters": {
-                        "name": {
-                          "description": "The resource name of the DICOM store to delete.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+name}",
-                      "response": {
-                        "$ref": "Empty"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "export": {
-                      "description": "Exports data to the specified destination by copying it from the DICOM\nstore.\nThe metadata field type is\nOperationMetadata.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}:export",
-                      "httpMethod": "POST",
-                      "id": "healthcare.projects.locations.datasets.dicomStores.export",
-                      "parameterOrder": [
-                        "name"
-                      ],
-                      "parameters": {
-                        "name": {
-                          "description": "The DICOM store resource name from which the data should be exported (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+name}:export",
-                      "request": {
-                        "$ref": "ExportDicomDataRequest"
-                      },
-                      "response": {
-                        "$ref": "Operation"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "get": {
-                      "description": "Gets the specified DICOM store.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}",
-                      "httpMethod": "GET",
-                      "id": "healthcare.projects.locations.datasets.dicomStores.get",
-                      "parameterOrder": [
-                        "name"
-                      ],
-                      "parameters": {
-                        "name": {
-                          "description": "The resource name of the DICOM store to get.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+name}",
-                      "response": {
-                        "$ref": "DicomStore"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
                     "getIamPolicy": {
                       "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
                       "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}:getIamPolicy",
@@ -985,104 +288,6 @@
                         "https://www.googleapis.com/auth/cloud-platform"
                       ]
                     },
-                    "import": {
-                      "description": "Imports data into the DICOM store by copying it from the specified source.\nFor errors, the Operation will be populated with error details (in the form\nof ImportDicomDataErrorDetails in error.details), which will hold\nfiner-grained error information.\nThe metadata field type is\nOperationMetadata.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}:import",
-                      "httpMethod": "POST",
-                      "id": "healthcare.projects.locations.datasets.dicomStores.import",
-                      "parameterOrder": [
-                        "name"
-                      ],
-                      "parameters": {
-                        "name": {
-                          "description": "The name of the DICOM store resource into which the data is imported (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+name}:import",
-                      "request": {
-                        "$ref": "ImportDicomDataRequest"
-                      },
-                      "response": {
-                        "$ref": "Operation"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "list": {
-                      "description": "Lists the DICOM stores in the given dataset.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores",
-                      "httpMethod": "GET",
-                      "id": "healthcare.projects.locations.datasets.dicomStores.list",
-                      "parameterOrder": [
-                        "parent"
-                      ],
-                      "parameters": {
-                        "pageSize": {
-                          "description": "Limit on the number of DICOM stores to return in a single response.\nIf zero the default page size of 100 is used.",
-                          "format": "int32",
-                          "location": "query",
-                          "type": "integer"
-                        },
-                        "pageToken": {
-                          "description": "The next_page_token value returned from the previous List request, if any.",
-                          "location": "query",
-                          "type": "string"
-                        },
-                        "parent": {
-                          "description": "Name of the dataset.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+parent}/dicomStores",
-                      "response": {
-                        "$ref": "ListDicomStoresResponse"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "patch": {
-                      "description": "Updates the specified DICOM store.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}",
-                      "httpMethod": "PATCH",
-                      "id": "healthcare.projects.locations.datasets.dicomStores.patch",
-                      "parameterOrder": [
-                        "name"
-                      ],
-                      "parameters": {
-                        "name": {
-                          "description": "Output only. Resource name of the DICOM store, of the form\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        },
-                        "updateMask": {
-                          "description": "The update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask",
-                          "format": "google-fieldmask",
-                          "location": "query",
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+name}",
-                      "request": {
-                        "$ref": "DicomStore"
-                      },
-                      "response": {
-                        "$ref": "DicomStore"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
                     "setIamPolicy": {
                       "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
                       "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}:setIamPolicy",
@@ -1139,1091 +344,10 @@
                         "https://www.googleapis.com/auth/cloud-platform"
                       ]
                     }
-                  },
-                  "resources": {
-                    "dicomWeb": {
-                      "methods": {
-                        "dicomWebDelete": {
-                          "description": "Handles DELETE requests equivalent to the GET requests specified in the\nWADO-RS standard. Since this implements an industry standard API, the\ndicom_web_path is interpreted directly by the serving binary. For example,\nif the request is for\n`/v1alpha/projects/{project_id}/locations/{location_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}/dicomWeb/studies/1.2`,\nthen `/studies/1.2` is passed to the serving binary as the dicom_web_path.",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/{dicomWebId}",
-                          "httpMethod": "DELETE",
-                          "id": "healthcare.projects.locations.datasets.dicomStores.dicomWeb.dicomWebDelete",
-                          "parameterOrder": [
-                            "parent",
-                            "dicomWebPath"
-                          ],
-                          "parameters": {
-                            "dicomWebPath": {
-                              "description": "The path of the DICOMweb request, as specified in the WADO-RS standard.",
-                              "location": "path",
-                              "pattern": "^.+$",
-                              "required": true,
-                              "type": "string"
-                            },
-                            "parent": {
-                              "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+parent}/dicomWeb/{+dicomWebPath}",
-                          "response": {
-                            "$ref": "Empty"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "dicomWebGet": {
-                          "description": "Handles the GET requests specified in the STOW-RS, WADO-RS, or QIDO-RS\nstandard. Since this implements an industry standard API, the\ndicom_web_path is interpreted directly by the serving binary. For example,\nif the request is for\n`/v1alpha/projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}/dicomWeb/studies/{study_id}/series?PatientName={patient_name}`,\nthen `studies/{study_id}/series` is passed to the serving binary as the\ndicom_web_path.",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/{dicomWebId}",
-                          "httpMethod": "GET",
-                          "id": "healthcare.projects.locations.datasets.dicomStores.dicomWeb.dicomWebGet",
-                          "parameterOrder": [
-                            "parent",
-                            "dicomWebPath"
-                          ],
-                          "parameters": {
-                            "dicomWebPath": {
-                              "description": "The path of the DICOMweb request, as specified in the STOW-RS, WADO-RS, or\nQIDO-RS standard (e.g., studies/{study_id}/series`).",
-                              "location": "path",
-                              "pattern": "^.+$",
-                              "required": true,
-                              "type": "string"
-                            },
-                            "parent": {
-                              "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+parent}/dicomWeb/{+dicomWebPath}",
-                          "response": {
-                            "$ref": "HttpBody"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "dicomWebPost": {
-                          "description": "Handles the POST requests specified in the STOW-RS, WADO-RS, or QIDO-RS\nstandard. Since this implements an industry standard API, the\ndicom_web_path is interpreted directly by the serving binary. For example,\nif the request is for\n`/v1alpha/projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}/dicomWeb/studies/{study_id}`,\nthen `/studies/{study_id}` is passed to the serving binary as the\ndicom_web_path.",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/{dicomWebId}",
-                          "httpMethod": "POST",
-                          "id": "healthcare.projects.locations.datasets.dicomStores.dicomWeb.dicomWebPost",
-                          "parameterOrder": [
-                            "parent",
-                            "dicomWebPath"
-                          ],
-                          "parameters": {
-                            "dicomWebPath": {
-                              "description": "The path of the DICOMweb request, as specified in the STOW-RS, WADO-RS, or\nQIDO-RS standard (e.g., studies/{study_id}`).",
-                              "location": "path",
-                              "pattern": "^.+$",
-                              "required": true,
-                              "type": "string"
-                            },
-                            "parent": {
-                              "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+parent}/dicomWeb/{+dicomWebPath}",
-                          "request": {
-                            "$ref": "HttpBody"
-                          },
-                          "response": {
-                            "$ref": "HttpBody"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        }
-                      }
-                    }
-                  }
-                },
-                "fhirStores": {
-                  "methods": {
-                    "create": {
-                      "description": "Creates a new FHIR store within the parent dataset.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores",
-                      "httpMethod": "POST",
-                      "id": "healthcare.projects.locations.datasets.fhirStores.create",
-                      "parameterOrder": [
-                        "parent"
-                      ],
-                      "parameters": {
-                        "fhirStoreId": {
-                          "description": "The ID of the FHIR store that is being created.\nThe string must match the following regex: `[\\p{L}\\p{N}_\\-\\.]{1,256}`.",
-                          "location": "query",
-                          "type": "string"
-                        },
-                        "parent": {
-                          "description": "The name of the dataset this FHIR store belongs to.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+parent}/fhirStores",
-                      "request": {
-                        "$ref": "FhirStore"
-                      },
-                      "response": {
-                        "$ref": "FhirStore"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "delete": {
-                      "description": "Deletes the FHIR store and removes all resources that are contained within\nit.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}",
-                      "httpMethod": "DELETE",
-                      "id": "healthcare.projects.locations.datasets.fhirStores.delete",
-                      "parameterOrder": [
-                        "name"
-                      ],
-                      "parameters": {
-                        "name": {
-                          "description": "The resource name of the FHIR store to delete.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+name}",
-                      "response": {
-                        "$ref": "Empty"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "executeBundle": {
-                      "description": "Executes all the requests in the given Bundle.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}",
-                      "httpMethod": "POST",
-                      "id": "healthcare.projects.locations.datasets.fhirStores.executeBundle",
-                      "parameterOrder": [
-                        "parent"
-                      ],
-                      "parameters": {
-                        "parent": {
-                          "description": "Name of the FHIR store in which this bundle will be executed.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+parent}",
-                      "request": {
-                        "$ref": "HttpBody"
-                      },
-                      "response": {
-                        "$ref": "HttpBody"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "export": {
-                      "description": "Export resources from the FHIR store to the specified destination.\nFatal errors will be populated in the\nerror field.\nOtherwise a detailed response will be returned as of type\nExportResourcesResponse contained in the\nresponse field when the operation\nfinishes.\nThe metadata field type is\nOperationMetadata.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}:export",
-                      "httpMethod": "POST",
-                      "id": "healthcare.projects.locations.datasets.fhirStores.export",
-                      "parameterOrder": [
-                        "name"
-                      ],
-                      "parameters": {
-                        "name": {
-                          "description": "The FHIR store name to export from. The name should be in the format\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/fhirStores/{fhir_store_id}`.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+name}:export",
-                      "request": {
-                        "$ref": "ExportResourcesRequest"
-                      },
-                      "response": {
-                        "$ref": "Operation"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "get": {
-                      "description": "Gets the specified FHIR store.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}",
-                      "httpMethod": "GET",
-                      "id": "healthcare.projects.locations.datasets.fhirStores.get",
-                      "parameterOrder": [
-                        "name"
-                      ],
-                      "parameters": {
-                        "name": {
-                          "description": "The resource name of the FHIR store to get.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+name}",
-                      "response": {
-                        "$ref": "FhirStore"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "getIamPolicy": {
-                      "description": "Gets the access control policy for a FHIR store or security label within a\nFHIR store. Returns NOT_FOUND error if the resource does not exist. Returns\nan empty policy if the resource exists but does not have a policy set.\n\nAuthorization requires the Google IAM permission\n'healthcare.fhirStores.getIamPolicy' for a FHIR store or\n'healthcare.securityLabels.getIamPolicy' for a security label",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}:getIamPolicy",
-                      "httpMethod": "POST",
-                      "id": "healthcare.projects.locations.datasets.fhirStores.getIamPolicy",
-                      "parameterOrder": [
-                        "resource"
-                      ],
-                      "parameters": {
-                        "resource": {
-                          "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+resource}:getIamPolicy",
-                      "request": {
-                        "$ref": "GetIamPolicyRequest"
-                      },
-                      "response": {
-                        "$ref": "Policy"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "getMetadata": {
-                      "description": "Gets the capabilities statement for the store.\n",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/metadata",
-                      "httpMethod": "GET",
-                      "id": "healthcare.projects.locations.datasets.fhirStores.getMetadata",
-                      "parameterOrder": [
-                        "name"
-                      ],
-                      "parameters": {
-                        "name": {
-                          "description": "Name of the FHIR store to retrieve the capabilities for.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+name}/metadata",
-                      "response": {
-                        "$ref": "HttpBody"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "import": {
-                      "description": "Import resources to the FHIR store by loading data from the specified\nsources.\nFatal errors will be populated in the\nerror field.\nOtherwise a detailed response will be returned as of type\nImportResourcesResponse contained in the\nresponse field when the operation\nfinishes.\nThe metadata field type is\nOperationMetadata.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}:import",
-                      "httpMethod": "POST",
-                      "id": "healthcare.projects.locations.datasets.fhirStores.import",
-                      "parameterOrder": [
-                        "name"
-                      ],
-                      "parameters": {
-                        "name": {
-                          "description": "The FHIR store name to import FHIR resources to. The name should be in the\nformat\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/fhirStores/{fhir_store_id}`.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+name}:import",
-                      "request": {
-                        "$ref": "ImportResourcesRequest"
-                      },
-                      "response": {
-                        "$ref": "Operation"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "list": {
-                      "description": "Lists the FHIR stores in the given dataset.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores",
-                      "httpMethod": "GET",
-                      "id": "healthcare.projects.locations.datasets.fhirStores.list",
-                      "parameterOrder": [
-                        "parent"
-                      ],
-                      "parameters": {
-                        "pageSize": {
-                          "description": "Limit on the number of FHIR stores to return in a single response.  If zero\nthe default page size of 100 is used.",
-                          "format": "int32",
-                          "location": "query",
-                          "type": "integer"
-                        },
-                        "pageToken": {
-                          "description": "The next_page_token value returned from the previous List request, if any.",
-                          "location": "query",
-                          "type": "string"
-                        },
-                        "parent": {
-                          "description": "Name of the dataset.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+parent}/fhirStores",
-                      "response": {
-                        "$ref": "ListFhirStoresResponse"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "patch": {
-                      "description": "Updates the FHIR store.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}",
-                      "httpMethod": "PATCH",
-                      "id": "healthcare.projects.locations.datasets.fhirStores.patch",
-                      "parameterOrder": [
-                        "name"
-                      ],
-                      "parameters": {
-                        "name": {
-                          "description": "Output only. Resource name of the FHIR store, of the form\n`projects/{project_id}/datasets/{dataset_id}/fhirStores/{fhir_store_id}`.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        },
-                        "updateMask": {
-                          "description": "The update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask",
-                          "format": "google-fieldmask",
-                          "location": "query",
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+name}",
-                      "request": {
-                        "$ref": "FhirStore"
-                      },
-                      "response": {
-                        "$ref": "FhirStore"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "setIamPolicy": {
-                      "description": "Sets the access control policy for a FHIR store or security label within a\nFHIR store. Replaces any existing policy.\n\nAuthorization requires the Google IAM permission\n'healthcare.fhirStores.setIamPolicy' for a FHIR store or\n'healthcare.securityLabels.setIamPolicy' for a security label",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}:setIamPolicy",
-                      "httpMethod": "POST",
-                      "id": "healthcare.projects.locations.datasets.fhirStores.setIamPolicy",
-                      "parameterOrder": [
-                        "resource"
-                      ],
-                      "parameters": {
-                        "resource": {
-                          "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+resource}:setIamPolicy",
-                      "request": {
-                        "$ref": "SetIamPolicyRequest"
-                      },
-                      "response": {
-                        "$ref": "Policy"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "testIamPermissions": {
-                      "description": "Returns permissions that a caller has on the specified resource.  If the\nresource does not exist, this will return an empty set of permissions, not\na NOT_FOUND error.\n\nThere is no permission required to make this API call.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}:testIamPermissions",
-                      "httpMethod": "POST",
-                      "id": "healthcare.projects.locations.datasets.fhirStores.testIamPermissions",
-                      "parameterOrder": [
-                        "resource"
-                      ],
-                      "parameters": {
-                        "resource": {
-                          "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/.+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+resource}:testIamPermissions",
-                      "request": {
-                        "$ref": "TestIamPermissionsRequest"
-                      },
-                      "response": {
-                        "$ref": "TestIamPermissionsResponse"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    }
-                  },
-                  "resources": {
-                    "resources": {
-                      "methods": {
-                        "_search": {
-                          "description": "Searches resources in the given FHIR store.\n\n# Search Parameters\n\nThe server's capability statement, retrieved through\nGetCapabilityStatement, indicates which search\nparameters are supported on each FHIR resource.\n\n# Search Modifiers\n\nModifier   | Supported\n----------- | ---------\n`:missing`  | Yes\n`:exact`    | Yes\n`:contains` | Yes\n`:text`     | Yes\n`:in`       | Yes\n`:not-in`   | Yes\n`:above`    | Yes\n`:below`    | Yes\n`:[type]`   | Yes\n`:not`      | Yes\n`:recurse`  | No",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/_search",
-                          "httpMethod": "POST",
-                          "id": "healthcare.projects.locations.datasets.fhirStores.resources._search",
-                          "parameterOrder": [
-                            "parent"
-                          ],
-                          "parameters": {
-                            "parent": {
-                              "description": "Name of the FHIR store to retrieve resources from.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+parent}/resources/_search",
-                          "request": {
-                            "$ref": "SearchResourcesRequest"
-                          },
-                          "response": {
-                            "$ref": "HttpBody"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "conditionalDeleteResource": {
-                          "description": "Deletes FHIR resources matching a search query.\nNote: unless resource versioning is disabled by setting the\ndisable_resource_versioning flag\non the FHIR store, the deleted resources will be moved to a history\nrepository that can still be retrieved through GetResourceVersion and\nrelated methods, unless they are removed by the DeleteResourceVersions\nmethod.",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}",
-                          "httpMethod": "DELETE",
-                          "id": "healthcare.projects.locations.datasets.fhirStores.resources.conditionalDeleteResource",
-                          "parameterOrder": [
-                            "parent",
-                            "type"
-                          ],
-                          "parameters": {
-                            "parent": {
-                              "description": "The name of the FHIR store this resource belongs to.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            },
-                            "type": {
-                              "description": "The type of the resource to update.",
-                              "location": "path",
-                              "pattern": "^[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+parent}/resources/{+type}",
-                          "response": {
-                            "$ref": "Empty"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "conditionalPatchResource": {
-                          "description": "Updates parts of a resource if the resource exists based on the\nsearch criteria specified via query parameters.",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}",
-                          "httpMethod": "PATCH",
-                          "id": "healthcare.projects.locations.datasets.fhirStores.resources.conditionalPatchResource",
-                          "parameterOrder": [
-                            "parent",
-                            "type"
-                          ],
-                          "parameters": {
-                            "parent": {
-                              "description": "The name of the FHIR store this resource belongs to.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            },
-                            "type": {
-                              "description": "The type of the resource to update.",
-                              "location": "path",
-                              "pattern": "^[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+parent}/resources/{+type}",
-                          "request": {
-                            "$ref": "HttpBody"
-                          },
-                          "response": {
-                            "$ref": "HttpBody"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "conditionalUpdateResource": {
-                          "description": "Updates the entire resource if the resource exists based on the\nsearch criteria specified via query parameters.\n",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}",
-                          "httpMethod": "PUT",
-                          "id": "healthcare.projects.locations.datasets.fhirStores.resources.conditionalUpdateResource",
-                          "parameterOrder": [
-                            "parent",
-                            "type"
-                          ],
-                          "parameters": {
-                            "parent": {
-                              "description": "The name of the FHIR store this resource belongs to.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            },
-                            "type": {
-                              "description": "The type of the resource to update.",
-                              "location": "path",
-                              "pattern": "^[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+parent}/resources/{+type}",
-                          "request": {
-                            "$ref": "HttpBody"
-                          },
-                          "response": {
-                            "$ref": "HttpBody"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "createResource": {
-                          "description": "Creates a FHIR resource.\n",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}",
-                          "httpMethod": "POST",
-                          "id": "healthcare.projects.locations.datasets.fhirStores.resources.createResource",
-                          "parameterOrder": [
-                            "parent",
-                            "type"
-                          ],
-                          "parameters": {
-                            "parent": {
-                              "description": "The name of the FHIR store this resource belongs to.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            },
-                            "type": {
-                              "description": "The type of the resource to create.",
-                              "location": "path",
-                              "pattern": "^[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+parent}/resources/{+type}",
-                          "request": {
-                            "$ref": "HttpBody"
-                          },
-                          "response": {
-                            "$ref": "HttpBody"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "delete": {
-                          "description": "Deletes a FHIR resource.\nNote: unless resource versioning is disabled by setting the\ndisable_resource_versioning flag\non the FHIR store, the deleted resources will be moved to a history\nrepository that can still be retrieved through GetResourceVersion and\nrelated methods, unless they are removed by the DeleteResourceVersions\nmethod.",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}/{resourcesId1}",
-                          "httpMethod": "DELETE",
-                          "id": "healthcare.projects.locations.datasets.fhirStores.resources.delete",
-                          "parameterOrder": [
-                            "name"
-                          ],
-                          "parameters": {
-                            "name": {
-                              "description": "The name of the resource to delete.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/resources/[^/]+/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+name}",
-                          "response": {
-                            "$ref": "HttpBody"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "delete$purge": {
-                          "description": "Deletes all the historical versions of a resource (excluding current\nversion) from the FHIR store. To remove all versions of a resource, first\ndelete the current version and call this API.",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}/{resourcesId1}/$purge",
-                          "httpMethod": "DELETE",
-                          "id": "healthcare.projects.locations.datasets.fhirStores.resources.delete$purge",
-                          "parameterOrder": [
-                            "name"
-                          ],
-                          "parameters": {
-                            "name": {
-                              "description": "The name of the resource to purge.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/resources/[^/]+/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+name}/$purge",
-                          "response": {
-                            "$ref": "Empty"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "get": {
-                          "description": "Gets a FHIR resource.\n",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}/{resourcesId1}",
-                          "httpMethod": "GET",
-                          "id": "healthcare.projects.locations.datasets.fhirStores.resources.get",
-                          "parameterOrder": [
-                            "name"
-                          ],
-                          "parameters": {
-                            "name": {
-                              "description": "The name of the resource to retrieve.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/resources/[^/]+/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+name}",
-                          "response": {
-                            "$ref": "HttpBody"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "getMetadata": {
-                          "description": "Gets the capabilities statement for the store.\n",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/metadata",
-                          "httpMethod": "GET",
-                          "id": "healthcare.projects.locations.datasets.fhirStores.resources.getMetadata",
-                          "parameterOrder": [
-                            "name"
-                          ],
-                          "parameters": {
-                            "name": {
-                              "description": "Name of the FHIR store to retrieve the capabilities for.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+name}/resources/metadata",
-                          "response": {
-                            "$ref": "HttpBody"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "patch": {
-                          "description": "Updates part of an existing resource.\n",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}/{resourcesId1}",
-                          "httpMethod": "PATCH",
-                          "id": "healthcare.projects.locations.datasets.fhirStores.resources.patch",
-                          "parameterOrder": [
-                            "name"
-                          ],
-                          "parameters": {
-                            "name": {
-                              "description": "The name of the resource to update.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/resources/[^/]+/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+name}",
-                          "request": {
-                            "$ref": "HttpBody"
-                          },
-                          "response": {
-                            "$ref": "HttpBody"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "searchResources": {
-                          "description": "Searches resources in the given FHIR store.\n\n# Search Parameters\n\nThe server's capability statement, retrieved through\nGetCapabilityStatement, indicates which search\nparameters are supported on each FHIR resource.\n\n# Search Modifiers\n\nModifier   | Supported\n----------- | ---------\n`:missing`  | Yes\n`:exact`    | Yes\n`:contains` | Yes\n`:text`     | Yes\n`:in`       | Yes\n`:not-in`   | Yes\n`:above`    | Yes\n`:below`    | Yes\n`:[type]`   | Yes\n`:not`      | Yes\n`:recurse`  | No",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}",
-                          "httpMethod": "GET",
-                          "id": "healthcare.projects.locations.datasets.fhirStores.resources.searchResources",
-                          "parameterOrder": [
-                            "parent",
-                            "resourceType"
-                          ],
-                          "parameters": {
-                            "parent": {
-                              "description": "Name of the FHIR store to retrieve resources from.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            },
-                            "resourceType": {
-                              "description": "The type of the resource to search.",
-                              "location": "path",
-                              "pattern": "^.+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+parent}/resources/{+resourceType}",
-                          "response": {
-                            "$ref": "HttpBody"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "update": {
-                          "description": "Updates the entire resource or creates a new resource with a client\nspecified ID if the resource does not exist and the FHIR store has\nenable_update_create set.\n",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}/{resourcesId1}",
-                          "httpMethod": "PUT",
-                          "id": "healthcare.projects.locations.datasets.fhirStores.resources.update",
-                          "parameterOrder": [
-                            "name"
-                          ],
-                          "parameters": {
-                            "name": {
-                              "description": "The name of the resource to update.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/resources/[^/]+/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+name}",
-                          "request": {
-                            "$ref": "HttpBody"
-                          },
-                          "response": {
-                            "$ref": "HttpBody"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        }
-                      },
-                      "resources": {
-                        "Patient": {
-                          "methods": {
-                            "get$everything": {
-                              "description": "Gets all the resources in the patient compartment.\n",
-                              "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/Patient/{PatientId}/$everything",
-                              "httpMethod": "GET",
-                              "id": "healthcare.projects.locations.datasets.fhirStores.resources.Patient.get$everything",
-                              "parameterOrder": [
-                                "name"
-                              ],
-                              "parameters": {
-                                "end": {
-                                  "description": "The response includes records prior to the end date. If no end date is\nprovided, all records subsequent to the start date are in scope.",
-                                  "location": "query",
-                                  "type": "string"
-                                },
-                                "name": {
-                                  "description": "Name of the patient for which the information is required.",
-                                  "location": "path",
-                                  "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/resources/Patient/[^/]+$",
-                                  "required": true,
-                                  "type": "string"
-                                },
-                                "start": {
-                                  "description": "The response includes records subsequent to the start date. If no start\ndate is provided, all records prior to the end date are in scope.",
-                                  "location": "query",
-                                  "type": "string"
-                                }
-                              },
-                              "path": "v1alpha/{+name}/$everything",
-                              "response": {
-                                "$ref": "HttpBody"
-                              },
-                              "scopes": [
-                                "https://www.googleapis.com/auth/cloud-platform"
-                              ]
-                            }
-                          }
-                        },
-                        "_history": {
-                          "methods": {
-                            "get": {
-                              "description": "Gets a version (current or historical) of FHIR resource by version id.\n",
-                              "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}/{resourcesId1}/_history/{_historyId}",
-                              "httpMethod": "GET",
-                              "id": "healthcare.projects.locations.datasets.fhirStores.resources._history.get",
-                              "parameterOrder": [
-                                "name"
-                              ],
-                              "parameters": {
-                                "name": {
-                                  "description": "The name of the resource version to retrieve.",
-                                  "location": "path",
-                                  "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/resources/[^/]+/[^/]+/_history/[^/]+$",
-                                  "required": true,
-                                  "type": "string"
-                                }
-                              },
-                              "path": "v1alpha/{+name}",
-                              "response": {
-                                "$ref": "HttpBody"
-                              },
-                              "scopes": [
-                                "https://www.googleapis.com/auth/cloud-platform"
-                              ]
-                            },
-                            "list": {
-                              "description": "Lists all the versions of a resource (including the current version and\ndeleted versions) from the FHIR store.\n",
-                              "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}/{resourcesId1}/_history",
-                              "httpMethod": "GET",
-                              "id": "healthcare.projects.locations.datasets.fhirStores.resources._history.list",
-                              "parameterOrder": [
-                                "name"
-                              ],
-                              "parameters": {
-                                "at": {
-                                  "description": "Only include resource versions that were current at some point during the\ntime period specified in the date time value. The date parameter format is\nyyyy-mm-ddThh:mm:ss[Z|(+|-)hh:mm]\nClients may specify any of the following:\nAn entire year: `_at=2019`\nAn entire month: `_at=2019-01`\nA specific day: `_at=2019-01-20`\nA specific second: `_at=2018-12-31T23:59:58Z`",
-                                  "location": "query",
-                                  "type": "string"
-                                },
-                                "count": {
-                                  "description": "The maximum number of search results on a page.",
-                                  "format": "int32",
-                                  "location": "query",
-                                  "type": "integer"
-                                },
-                                "name": {
-                                  "description": "The name of the resource to retrieve.",
-                                  "location": "path",
-                                  "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/resources/[^/]+/[^/]+$",
-                                  "required": true,
-                                  "type": "string"
-                                },
-                                "page": {
-                                  "description": "Used to retrieve the first, previous, next, or last page of resource\nversions when using pagination. Value should be set to the value of the\n`link.url` field returned in the response to the previous request, where\n`link.relation` is \"first\", \"previous\", \"next\" or \"last\".\nOmit `page` if no previous request has been made.",
-                                  "location": "query",
-                                  "type": "string"
-                                },
-                                "since": {
-                                  "description": "Only include resource versions that were created at or after the given\ninstant in time. The instant in time uses the format\nYYYY-MM-DDThh:mm:ss.sss+zz:zz (for example 2015-02-07T13:28:17.239+02:00 or\n2017-01-01T00:00:00Z). The time must be specified to the second and\ninclude a time zone.",
-                                  "location": "query",
-                                  "type": "string"
-                                }
-                              },
-                              "path": "v1alpha/{+name}/_history",
-                              "response": {
-                                "$ref": "HttpBody"
-                              },
-                              "scopes": [
-                                "https://www.googleapis.com/auth/cloud-platform"
-                              ]
-                            }
-                          }
-                        }
-                      }
-                    },
-                    "securityLabels": {
-                      "methods": {
-                        "getIamPolicy": {
-                          "description": "Gets the access control policy for a FHIR store or security label within a\nFHIR store. Returns NOT_FOUND error if the resource does not exist. Returns\nan empty policy if the resource exists but does not have a policy set.\n\nAuthorization requires the Google IAM permission\n'healthcare.fhirStores.getIamPolicy' for a FHIR store or\n'healthcare.securityLabels.getIamPolicy' for a security label",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/securityLabels/{securityLabelsId}:getIamPolicy",
-                          "httpMethod": "POST",
-                          "id": "healthcare.projects.locations.datasets.fhirStores.securityLabels.getIamPolicy",
-                          "parameterOrder": [
-                            "resource"
-                          ],
-                          "parameters": {
-                            "resource": {
-                              "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/securityLabels/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+resource}:getIamPolicy",
-                          "request": {
-                            "$ref": "GetIamPolicyRequest"
-                          },
-                          "response": {
-                            "$ref": "Policy"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "setIamPolicy": {
-                          "description": "Sets the access control policy for a FHIR store or security label within a\nFHIR store. Replaces any existing policy.\n\nAuthorization requires the Google IAM permission\n'healthcare.fhirStores.setIamPolicy' for a FHIR store or\n'healthcare.securityLabels.setIamPolicy' for a security label",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/securityLabels/{securityLabelsId}:setIamPolicy",
-                          "httpMethod": "POST",
-                          "id": "healthcare.projects.locations.datasets.fhirStores.securityLabels.setIamPolicy",
-                          "parameterOrder": [
-                            "resource"
-                          ],
-                          "parameters": {
-                            "resource": {
-                              "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/securityLabels/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+resource}:setIamPolicy",
-                          "request": {
-                            "$ref": "SetIamPolicyRequest"
-                          },
-                          "response": {
-                            "$ref": "Policy"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        }
-                      }
-                    }
                   }
                 },
                 "hl7V2Stores": {
                   "methods": {
-                    "create": {
-                      "description": "Creates a new HL7v2 store within the parent dataset.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores",
-                      "httpMethod": "POST",
-                      "id": "healthcare.projects.locations.datasets.hl7V2Stores.create",
-                      "parameterOrder": [
-                        "parent"
-                      ],
-                      "parameters": {
-                        "hl7V2StoreId": {
-                          "description": "The ID of the HL7v2 store that is being created.\nThe string must match the following regex: `[\\p{L}\\p{N}_\\-\\.]{1,256}`.",
-                          "location": "query",
-                          "type": "string"
-                        },
-                        "parent": {
-                          "description": "The name of the dataset this HL7v2 store belongs to.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+parent}/hl7V2Stores",
-                      "request": {
-                        "$ref": "Hl7V2Store"
-                      },
-                      "response": {
-                        "$ref": "Hl7V2Store"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "delete": {
-                      "description": "Deletes the specified HL7v2 store and removes all messages that are\ncontained within it.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}",
-                      "httpMethod": "DELETE",
-                      "id": "healthcare.projects.locations.datasets.hl7V2Stores.delete",
-                      "parameterOrder": [
-                        "name"
-                      ],
-                      "parameters": {
-                        "name": {
-                          "description": "The resource name of the HL7v2 store to delete.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+name}",
-                      "response": {
-                        "$ref": "Empty"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "get": {
-                      "description": "Gets the specified HL7v2 store.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}",
-                      "httpMethod": "GET",
-                      "id": "healthcare.projects.locations.datasets.hl7V2Stores.get",
-                      "parameterOrder": [
-                        "name"
-                      ],
-                      "parameters": {
-                        "name": {
-                          "description": "The resource name of the HL7v2 store to get.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+name}",
-                      "response": {
-                        "$ref": "Hl7V2Store"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
                     "getIamPolicy": {
                       "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
                       "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}:getIamPolicy",
@@ -2249,76 +373,6 @@
                         "https://www.googleapis.com/auth/cloud-platform"
                       ]
                     },
-                    "list": {
-                      "description": "Lists the HL7v2 stores in the given dataset.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores",
-                      "httpMethod": "GET",
-                      "id": "healthcare.projects.locations.datasets.hl7V2Stores.list",
-                      "parameterOrder": [
-                        "parent"
-                      ],
-                      "parameters": {
-                        "pageSize": {
-                          "description": "Limit on the number of HL7v2 stores to return in a single response.\nIf zero the default page size of 100 is used.",
-                          "format": "int32",
-                          "location": "query",
-                          "type": "integer"
-                        },
-                        "pageToken": {
-                          "description": "The next_page_token value returned from the previous List request, if any.",
-                          "location": "query",
-                          "type": "string"
-                        },
-                        "parent": {
-                          "description": "Name of the dataset.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+parent}/hl7V2Stores",
-                      "response": {
-                        "$ref": "ListHl7V2StoresResponse"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
-                    "patch": {
-                      "description": "Updates the HL7v2 store.",
-                      "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}",
-                      "httpMethod": "PATCH",
-                      "id": "healthcare.projects.locations.datasets.hl7V2Stores.patch",
-                      "parameterOrder": [
-                        "name"
-                      ],
-                      "parameters": {
-                        "name": {
-                          "description": "Output only. Resource name of the HL7v2 store, of the form\n`projects/{project_id}/datasets/{dataset_id}/hl7V2Stores/{hl7v2_store_id}`.",
-                          "location": "path",
-                          "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
-                          "required": true,
-                          "type": "string"
-                        },
-                        "updateMask": {
-                          "description": "The update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask",
-                          "format": "google-fieldmask",
-                          "location": "query",
-                          "type": "string"
-                        }
-                      },
-                      "path": "v1alpha/{+name}",
-                      "request": {
-                        "$ref": "Hl7V2Store"
-                      },
-                      "response": {
-                        "$ref": "Hl7V2Store"
-                      },
-                      "scopes": [
-                        "https://www.googleapis.com/auth/cloud-platform"
-                      ]
-                    },
                     "setIamPolicy": {
                       "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
                       "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}:setIamPolicy",
@@ -2375,209 +429,6 @@
                         "https://www.googleapis.com/auth/cloud-platform"
                       ]
                     }
-                  },
-                  "resources": {
-                    "messages": {
-                      "methods": {
-                        "create": {
-                          "description": "Creates a message and sends a notification to the Cloud Pub/Sub topic. If\nconfigured, the MLLP adapter listens to messages created by this method and\nsends those back to the hospital. A successful response indicates the\nmessage has been persisted to storage and a Cloud Pub/Sub notification has\nbeen sent. Sending to the hospital by the MLLP adapter happens\nasynchronously.",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}/messages",
-                          "httpMethod": "POST",
-                          "id": "healthcare.projects.locations.datasets.hl7V2Stores.messages.create",
-                          "parameterOrder": [
-                            "parent"
-                          ],
-                          "parameters": {
-                            "parent": {
-                              "description": "The name of the dataset this message belongs to.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+parent}/messages",
-                          "request": {
-                            "$ref": "CreateMessageRequest"
-                          },
-                          "response": {
-                            "$ref": "Message"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "delete": {
-                          "description": "Deletes an HL7v2 message.",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}/messages/{messagesId}",
-                          "httpMethod": "DELETE",
-                          "id": "healthcare.projects.locations.datasets.hl7V2Stores.messages.delete",
-                          "parameterOrder": [
-                            "name"
-                          ],
-                          "parameters": {
-                            "name": {
-                              "description": "The resource name of the HL7v2 message to delete.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+/messages/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+name}",
-                          "response": {
-                            "$ref": "Empty"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "get": {
-                          "description": "Gets an HL7v2 message.",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}/messages/{messagesId}",
-                          "httpMethod": "GET",
-                          "id": "healthcare.projects.locations.datasets.hl7V2Stores.messages.get",
-                          "parameterOrder": [
-                            "name"
-                          ],
-                          "parameters": {
-                            "name": {
-                              "description": "The resource name of the HL7v2 message to retrieve.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+/messages/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            },
-                            "view": {
-                              "description": "Specifies which parts of the Message resource should be returned\nin the response.",
-                              "enum": [
-                                "MESSAGE_VIEW_UNSPECIFIED",
-                                "RAW_ONLY",
-                                "PARSED_ONLY",
-                                "FULL"
-                              ],
-                              "location": "query",
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+name}",
-                          "response": {
-                            "$ref": "Message"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "ingest": {
-                          "description": "Ingests a new HL7v2 message from the hospital and sends a notification to\nthe Cloud Pub/Sub topic. Return is an HL7v2 ACK message if the message was\nsuccessfully stored. Otherwise an error is returned.  If an identical\nHL7v2 message is created twice only one resource is created on the server\nand no error is reported.",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}/messages:ingest",
-                          "httpMethod": "POST",
-                          "id": "healthcare.projects.locations.datasets.hl7V2Stores.messages.ingest",
-                          "parameterOrder": [
-                            "parent"
-                          ],
-                          "parameters": {
-                            "parent": {
-                              "description": "The name of the HL7v2 store this message belongs to.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+parent}/messages:ingest",
-                          "request": {
-                            "$ref": "IngestMessageRequest"
-                          },
-                          "response": {
-                            "$ref": "IngestMessageResponse"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "list": {
-                          "description": "Lists all the messages in the given HL7v2 store with support for filtering.",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}/messages",
-                          "httpMethod": "GET",
-                          "id": "healthcare.projects.locations.datasets.hl7V2Stores.messages.list",
-                          "parameterOrder": [
-                            "parent"
-                          ],
-                          "parameters": {
-                            "filter": {
-                              "description": "Restricts messages returned to those matching a filter. Syntax:\nhttps://cloud.google.com/appengine/docs/standard/python/search/query_strings\nFields/functions available for filtering are:\n- message_type, from the MSH-9 segment, e.g. 'NOT message_type = \"ADT\"'\n- send_date or sendDate, the YYYY-MM-DD date the message was sent in the\n  dataset's time_zone, from the MSH-7 segment; e.g.\n  'send_date \u003c \"2017-01-02\"'\n- send_time, the timestamp of when the message was sent, using the RFC3339\n  time format for comparisons, from the MSH-7 segment; e.g. 'send_time \u003c\n  \"2017-01-02T00:00:00-05:00\"'\n- send_facility, the hospital/trust that the message came from, from the\n  MSH-4 segment, e.g. 'send_facility = \"RAL\"'\n- HL7RegExp(expr), which does regular expression matching of expr against\n  the HL7 message payload using re2 (http://code.google.com/p/re2/)\n  syntax; e.g. 'HL7RegExp(\"^.*\\|.*\\|CERNER\")'\n- PatientId(value, type), which matches if the message lists a patient\n  having an ID of the given value and type in the PID-2, PID-3, or PID-4\n  segments; e.g. 'PatientId(\"123456\", \"MRN\")'\n- HasLabel(x), a boolean returning true if the message has a label with\n  key x (having any value) set using the labels map in Message; e.g.\n  'HasLabel(\"priority\")'\n- Label(x), a string value of the label with key x as set using the labels\n  map in Message, e.g. 'Label(\"priority\") = \"high\"'\nNegation on the patient ID function and the label function are not\nsupported, e.g. invalid queries: 'NOT PatientId(\"123456\", \"MRN\")',\n'NOT HasLabel(\"tag1\")', 'NOT Label(\"tag2\") = \"val2\"'.\nConjunction of multiple patient ID functions is not supported, e.g. an\ninvalid query: 'PatientId(\"123456\", \"MRN\") AND PatientId(\"456789\", \"MRN\")'.\nConjunction of multiple label functions is also not supported, e.g. an\ninvalid query: 'HasLabel(\"tag1\") AND Label(\"tag2\") = \"val2\"'.\nConjunction of one patient ID function, one label function and other fields\nis supported, e.g. a valid query:\n'PatientId(\"123456\", \"MRN\") AND HasLabel(\"tag1\") AND message_type = \"ADT\"'.",
-                              "location": "query",
-                              "type": "string"
-                            },
-                            "orderBy": {
-                              "description": "Orders messages returned by the specified order_by clause.\nSyntax: https://cloud.google.com/apis/design/design_patterns#sorting_order\nFields available for ordering are:\n- send_time",
-                              "location": "query",
-                              "type": "string"
-                            },
-                            "pageSize": {
-                              "description": "Limit on the number of messages to return in a single response.\nIf zero the default page size of 100 is used.",
-                              "format": "int32",
-                              "location": "query",
-                              "type": "integer"
-                            },
-                            "pageToken": {
-                              "description": "The next_page_token value returned from the previous List request, if any.",
-                              "location": "query",
-                              "type": "string"
-                            },
-                            "parent": {
-                              "description": "Name of the HL7v2 store to retrieve messages from.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+parent}/messages",
-                          "response": {
-                            "$ref": "ListMessagesResponse"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        },
-                        "patch": {
-                          "description": "Update the message.",
-                          "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}/messages/{messagesId}",
-                          "httpMethod": "PATCH",
-                          "id": "healthcare.projects.locations.datasets.hl7V2Stores.messages.patch",
-                          "parameterOrder": [
-                            "name"
-                          ],
-                          "parameters": {
-                            "name": {
-                              "description": "Resource name of the Message, of the form\n`projects/{project_id}/datasets/{dataset_id}/hl7V2Stores/{hl7_v2_store_id}/messages/{message_id}`.\nAssigned by the server.",
-                              "location": "path",
-                              "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+/messages/[^/]+$",
-                              "required": true,
-                              "type": "string"
-                            },
-                            "updateMask": {
-                              "description": "The update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask\nOnly the `labels` field is allowed to be updated.\nThe labels in the request will be merged with the existing set of labels.\nExisting labels with the same keys will be updated.",
-                              "format": "google-fieldmask",
-                              "location": "query",
-                              "type": "string"
-                            }
-                          },
-                          "path": "v1alpha/{+name}",
-                          "request": {
-                            "$ref": "Message"
-                          },
-                          "response": {
-                            "$ref": "Message"
-                          },
-                          "scopes": [
-                            "https://www.googleapis.com/auth/cloud-platform"
-                          ]
-                        }
-                      }
-                    }
                   }
                 },
                 "operations": {
@@ -2657,65 +508,9 @@
       }
     }
   },
-  "revision": "20190321",
+  "revision": "20190417",
   "rootUrl": "https://healthcare.googleapis.com/",
   "schemas": {
-    "Annotation": {
-      "description": "An annotation record.",
-      "id": "Annotation",
-      "properties": {
-        "annotationSource": {
-          "$ref": "AnnotationSource",
-          "description": "Details of the source."
-        },
-        "imageAnnotation": {
-          "$ref": "ImageAnnotation",
-          "description": "Annnotations for images, e.g., bounding polygons."
-        },
-        "name": {
-          "description": "Output only. Resource name of the Annotation, of the form\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/annotationStores/{annotation_store_id}/annotations/{annotation_id}`.",
-          "type": "string"
-        },
-        "resourceAnnotation": {
-          "$ref": "ResourceAnnotation",
-          "description": "Annotations for resource, e.g., classification tags."
-        },
-        "textAnnotation": {
-          "$ref": "SensitiveTextAnnotation",
-          "description": "Annotations for sentitive texts, e.g., range of such texts."
-        }
-      },
-      "type": "object"
-    },
-    "AnnotationSource": {
-      "description": "AnnotationSource holds the source information of the annotation.",
-      "id": "AnnotationSource",
-      "properties": {
-        "cloudHealthcareSource": {
-          "$ref": "CloudHealthcareSource",
-          "description": "Cloud Healthcare API resource."
-        }
-      },
-      "type": "object"
-    },
-    "AnnotationStore": {
-      "description": "An Annotation store that can store annotation resources such as\nlabels and tags for text, image and audio.",
-      "id": "AnnotationStore",
-      "properties": {
-        "labels": {
-          "additionalProperties": {
-            "type": "string"
-          },
-          "description": "User-supplied key-value pairs used to organize Annotation stores.\n\nLabel keys must be between 1 and 63 characters long, have a UTF-8 encoding\nof maximum 128 bytes, and must conform to the\nfollowing PCRE regular expression:\n\\p{Ll}\\p{Lo}{0,62}\n\nLabel values are optional, must be between 1 and 63 characters long, have\na UTF-8 encoding of maximum 128 bytes, and must conform to the\nfollowing PCRE regular expression: [\\p{Ll}\\p{Lo}\\p{N}_-]{0,63}\n\nNo more than 64 labels can be associated with a given store.",
-          "type": "object"
-        },
-        "name": {
-          "description": "Output only. Resource name of the Annotation store, of the form\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/annotationStores/{annotation_store_id}`.",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
     "AuditConfig": {
       "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditLogConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n    {\n      \"audit_configs\": [\n        {\n          \"service\": \"allServices\"\n          \"audit_log_configs\": [\n            {\n              \"log_type\": \"DATA_READ\",\n              \"exempted_members\": [\n                \"user:foo@gmail.com\"\n              ]\n            },\n            {\n              \"log_type\": \"DATA_WRITE\",\n            },\n            {\n              \"log_type\": \"ADMIN_READ\",\n            }\n          ]\n        },\n        {\n          \"service\": \"fooservice.googleapis.com\"\n          \"audit_log_configs\": [\n            {\n              \"log_type\": \"DATA_READ\",\n            },\n            {\n              \"log_type\": \"DATA_WRITE\",\n              \"exempted_members\": [\n                \"user:bar@gmail.com\"\n              ]\n            }\n          ]\n        }\n      ]\n    }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.",
       "id": "AuditConfig",
@@ -2764,51 +559,13 @@
       },
       "type": "object"
     },
-    "BigQueryDestination": {
-      "description": "The BigQuery table to which the output should be written.",
-      "id": "BigQueryDestination",
-      "properties": {
-        "dataset": {
-          "description": "Required. The BigQuery dataset to which the DICOM store should be exported.\nIf this dataset does not exist, the export call returns an error.",
-          "type": "string"
-        },
-        "overwriteTable": {
-          "description": "If the destination table already exists and this flag is `TRUE`, the table\nwill be overwritten by the contents of the DICOM store. If the flag is not\nset and the destination table already exists, the export call returns an\nerror.",
-          "type": "boolean"
-        },
-        "table": {
-          "description": "Required. The BigQuery table to which the DICOM store should be written. If\nthis table does not exist, a new table with the given name will be created.",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "BigQueryLocation": {
-      "description": "BigQuery dataset location.",
-      "id": "BigQueryLocation",
-      "properties": {
-        "datasetId": {
-          "description": "ID of the dataset that houses the BigQuery tables.",
-          "type": "string"
-        },
-        "projectId": {
-          "description": "ID of the project that owns the BigQuery datasets.",
-          "type": "string"
-        },
-        "schemaConfig": {
-          "$ref": "SchemaConfig",
-          "description": "The configuration for the exported BigQuery schema."
-        }
-      },
-      "type": "object"
-    },
     "Binding": {
       "description": "Associates `members` with a `role`.",
       "id": "Binding",
       "properties": {
         "condition": {
           "$ref": "Expr",
-          "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
+          "description": "The condition that is associated with this binding.\nNOTE: An unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
         },
         "members": {
           "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n   on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n   who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n   account. For example, `alice@gmail.com` .\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n   account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n   For example, `admins@example.com`.\n\n\n* `domain:{domain}`: The G Suite domain (primary) that represents all the\n   users of that domain. For example, `google.com` or `example.com`.\n\n",
@@ -2824,167 +581,6 @@
       },
       "type": "object"
     },
-    "BoundingPoly": {
-      "description": "A bounding polygon for the detected image annotation.",
-      "id": "BoundingPoly",
-      "properties": {
-        "label": {
-          "type": "string"
-        },
-        "vertices": {
-          "items": {
-            "$ref": "Vertex"
-          },
-          "type": "array"
-        }
-      },
-      "type": "object"
-    },
-    "CloudHealthcareSource": {
-      "description": "Cloud Healthcare API resource.",
-      "id": "CloudHealthcareSource",
-      "properties": {
-        "name": {
-          "description": "Full path of a Cloud Healthcare API resource.",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "CreateMessageRequest": {
-      "description": "Creates a new message.",
-      "id": "CreateMessageRequest",
-      "properties": {
-        "message": {
-          "$ref": "Message",
-          "description": "HL7v2 message."
-        }
-      },
-      "type": "object"
-    },
-    "Dataset": {
-      "description": "A message representing a health dataset.\n\nA health dataset represents a collection of healthcare data pertaining to one\nor more patients. This may include multiple modalities of healthcare data,\nsuch as electronic medical records or medical imaging data.",
-      "id": "Dataset",
-      "properties": {
-        "name": {
-          "description": "Output only. Resource name of the dataset, of the form\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`.",
-          "type": "string"
-        },
-        "timeZone": {
-          "description": "The default timezone used by this dataset. Must be a either a valid IANA\ntime zone name such as \"America/New_York\" or empty, which defaults to UTC.\nThis is used for parsing times in resources (e.g., HL7 messages) where no\nexplicit timezone is specified.",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "DeidentifyConfig": {
-      "description": "Configures de-id options specific to different types of content.\nEach submessage customizes the handling of an\nhttps://tools.ietf.org/html/rfc6838 media type or subtype. Configs are\napplied in a nested manner at runtime.",
-      "id": "DeidentifyConfig",
-      "properties": {
-        "dicom": {
-          "$ref": "DicomConfig",
-          "description": "Configures de-id of application/DICOM content."
-        },
-        "fhir": {
-          "$ref": "FhirConfig",
-          "description": "Configures de-id of application/FHIR content."
-        },
-        "image": {
-          "$ref": "ImageConfig",
-          "description": "Configures de-identification of image pixels wherever they are found in the\nsource_dataset."
-        }
-      },
-      "type": "object"
-    },
-    "DeidentifyDatasetRequest": {
-      "description": "Redacts identifying information from the specified dataset.",
-      "id": "DeidentifyDatasetRequest",
-      "properties": {
-        "config": {
-          "$ref": "DeidentifyConfig",
-          "description": "Deidentify configuration"
-        },
-        "destinationDataset": {
-          "description": "The name of the dataset resource to which the redacted data should be\nwritten (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`).\nThe new dataset must not exist, or the request will fail.",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "Detail": {
-      "description": "Contains multiple sensitive information findings for each resource slice.",
-      "id": "Detail",
-      "properties": {
-        "findings": {
-          "items": {
-            "$ref": "Finding"
-          },
-          "type": "array"
-        }
-      },
-      "type": "object"
-    },
-    "DicomConfig": {
-      "description": "Specifies the parameters needed for de-identification of DICOM stores.",
-      "id": "DicomConfig",
-      "properties": {
-        "whitelistTags": {
-          "description": "Tags to be whitelisted, for example \"PatientID\",  \"0010,0010\". Any tag\nthat is whitelisted will copied as is. All other tags will be omitted.",
-          "items": {
-            "type": "string"
-          },
-          "type": "array"
-        }
-      },
-      "type": "object"
-    },
-    "DicomStore": {
-      "description": "Represents a DICOM store.",
-      "id": "DicomStore",
-      "properties": {
-        "name": {
-          "description": "Output only. Resource name of the DICOM store, of the form\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`.",
-          "type": "string"
-        },
-        "notificationConfig": {
-          "$ref": "NotificationConfig",
-          "description": "Notification destination for new DICOM instances.\nSupplied by the client."
-        }
-      },
-      "type": "object"
-    },
-    "Empty": {
-      "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n    service Foo {\n      rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n    }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
-      "id": "Empty",
-      "properties": {},
-      "type": "object"
-    },
-    "ExportDicomDataRequest": {
-      "description": "Exports data from the specified DICOM store.\nIf a given resource (e.g., a DICOM object with the same SOPInstance UID)\nalready exists in the output, it is overwritten with the version\nin the source dataset.\nExported DICOM data will persist when the DICOM store from which it was\nexported is deleted.",
-      "id": "ExportDicomDataRequest",
-      "properties": {
-        "outputConfig": {
-          "$ref": "OutputConfig",
-          "description": "Specifies where the exported data should be placed."
-        }
-      },
-      "type": "object"
-    },
-    "ExportResourcesRequest": {
-      "description": "Request to export resources.",
-      "id": "ExportResourcesRequest",
-      "properties": {
-        "bigqueryDestinationLocation": {
-          "$ref": "BigQueryLocation",
-          "description": "The BigQuery destination location.\nThe output will be one BigQuery table per resource type."
-        },
-        "gcsDestinationLocation": {
-          "$ref": "GcsDataLocation",
-          "description": "The Cloud Storage destination location.\nSpecify a path to a Cloud Storage bucket or folder rather\nthan a concrete object. The exported outputs are\norganized by FHIR resource types. The server will create one object per\nresource type. Each object contains newline delimited JSON, and each line\nis a FHIR resource."
-        }
-      },
-      "type": "object"
-    },
     "Expr": {
       "description": "Represents an expression text. Example:\n\n    title: \"User account presence\"\n    description: \"Determines whether the request has a user account\"\n    expression: \"size(request.user) \u003e 0\"",
       "id": "Expr",
@@ -3008,430 +604,6 @@
       },
       "type": "object"
     },
-    "FhirConfig": {
-      "description": "Specifies how de-identification of a FHIR store should be handled.",
-      "id": "FhirConfig",
-      "properties": {},
-      "type": "object"
-    },
-    "FhirStore": {
-      "description": "Represents a FHIR store.",
-      "id": "FhirStore",
-      "properties": {
-        "disableReferentialIntegrity": {
-          "description": "Whether to disable referential integrity in this FHIR store. This field is\nimmutable after FHIR store creation.\nThe default value is false, meaning that the API will enforce referential\nintegrity and fail the requests that will result in inconsistent state in\nthe FHIR store.\nWhen this field is set to true, the API will skip referential integrity\ncheck. Consequently, operations that rely on references, such as\nGetPatientEverything, will not return all the results if broken references\nexist.",
-          "type": "boolean"
-        },
-        "disableResourceVersioning": {
-          "description": "Whether to disable resource versioning for this FHIR store. This field can\nnot be changed after the creation of FHIR store.\nIf set to false, which is the default behavior, all write operations will\ncause historical versions to be recorded automatically. The historical\nversions can be fetched through the history APIs, but cannot be updated.\nIf set to true, no historical versions will be kept. The server will send\nback errors for attempts to read the historical versions.",
-          "type": "boolean"
-        },
-        "enableUpdateCreate": {
-          "description": "Whether this FHIR store has the [updateCreate\ncapability](https://www.hl7.org/fhir/capabilitystatement-definitions.html#CapabilityStatement.rest.resource.updateCreate).\nThis determines if the client can use an Update operation to create a new\nresource with a client-specified ID. If false, all IDs are server-assigned\nthrough the Create operation and attempts to Update a non-existent resource\nwill return errors. Please treat the audit logs with appropriate levels of\ncare if client-specified resource IDs contain sensitive data such as\npatient identifiers, those IDs will be part of the FHIR resource path\nrecorded in Cloud audit logs and Cloud Pub/Sub notifications.",
-          "type": "boolean"
-        },
-        "name": {
-          "description": "Output only. Resource name of the FHIR store, of the form\n`projects/{project_id}/datasets/{dataset_id}/fhirStores/{fhir_store_id}`.",
-          "type": "string"
-        },
-        "notificationConfig": {
-          "$ref": "NotificationConfig",
-          "description": "If non-empty, publish all resource modifications of this FHIR store to\nthis destination. The Cloud Pub/Sub message attributes will contain a map\nwith a string describing the action that has triggered the notification,\ne.g. \"action\":\"CreateResource\"."
-        }
-      },
-      "type": "object"
-    },
-    "Finding": {
-      "id": "Finding",
-      "properties": {
-        "end": {
-          "description": "Zero-based ending index of the found text, exclusively.",
-          "format": "int64",
-          "type": "string"
-        },
-        "infoType": {
-          "description": "The type of information stored in this text range (e.g. HumanName,\nBirthDate, Address, etc.)",
-          "type": "string"
-        },
-        "start": {
-          "description": "Zero-based starting index of the found text, inclusively.",
-          "format": "int64",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "GcsDataLocation": {
-      "description": "Google Cloud Storage location.",
-      "id": "GcsDataLocation",
-      "properties": {
-        "gcsUri": {
-          "description": "The gcs_uri must be in the format \"gs://bucket/path/to/object\".\nThe gcs_uri may include wildcards in the \"path/to/object\" part to\nto indicate potential matching of multiple objects.\nSupported wildcards:\n  '*' to match 0 or more non-separator characters\n  '**' to match 0 or more characters (including separators). Only\n  supported at the end of a path and with no other wildcards.\n  '?' to match 1 character.",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "GcsDestination": {
-      "description": "The Google Cloud Storage location to which the output should be written.",
-      "id": "GcsDestination",
-      "properties": {
-        "mimeType": {
-          "description": "MIME types supported by DICOM spec.\nEach file will be written in the following format:\n`.../{study_id}/{series_id}/{instance_id}[/{frame_number}].{extension}`\nThe frame_number component will exist only for multi-frame instances.\n\nRefer to the DICOM conformance statement for permissible MIME types:\nhttps://cloud.google.com/healthcare/docs/dicom#wado-rs\n\nThe following extensions will be used for output files:\n  application/dicom -\u003e .dcm\n  image/jpeg -\u003e .jpg\n  image/png -\u003e .png\n\nIf unspecified, the instances will be exported in their original\nDICOM format.",
-          "type": "string"
-        },
-        "uriPrefix": {
-          "description": "URI for a Google Cloud Storage directory to which result files should be\nwritten (e.g., `gs://bucket-id/path/to/destination/dir`). If there is no\ntrailing slash, the service will append one when composing the object\npath. The user is responsible for creating the Google Cloud Storage bucket\nreferenced in `uri_prefix`.",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "GetIamPolicyRequest": {
-      "description": "Request message for `GetIamPolicy` method.",
-      "id": "GetIamPolicyRequest",
-      "properties": {},
-      "type": "object"
-    },
-    "GoogleCloudHealthcareV1alphaFhirRestExportResourcesResponse": {
-      "description": "Final response of exporting resources.\nThis structure will be included in the\nresponse to describe the detailed\noutcome. It will only be included when the operation finishes.",
-      "id": "GoogleCloudHealthcareV1alphaFhirRestExportResourcesResponse",
-      "properties": {
-        "name": {
-          "description": "The FHIR store name of the resources that have been exported, in the format\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/fhirStores/{fhir_store_id}`.",
-          "type": "string"
-        },
-        "resourceCount": {
-          "description": "The total number of resources exported from the requested FHIR store.",
-          "format": "int64",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "GoogleCloudHealthcareV1alphaFhirRestImportResourcesResponse": {
-      "description": "Final response of importing resources.\nThis structure will be included in the\nresponse to describe the detailed\noutcome. It will only be included when the operation finishes.",
-      "id": "GoogleCloudHealthcareV1alphaFhirRestImportResourcesResponse",
-      "properties": {
-        "errorCount": {
-          "description": "The number of resources that had errors.",
-          "format": "int64",
-          "type": "string"
-        },
-        "inputSize": {
-          "description": "The total number of resources included in the source data. This is the sum\nof the success and error counts.",
-          "format": "int64",
-          "type": "string"
-        },
-        "name": {
-          "description": "The FHIR store name the resources have been imported to, in the\nformat\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/fhirStores/{fhir_store_id}`.",
-          "type": "string"
-        },
-        "successCount": {
-          "description": "The number of resources that have been imported.",
-          "format": "int64",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "GoogleCloudHealthcareV1alphaGcsSource": {
-      "description": "The Google Cloud Storage location for the input content.",
-      "id": "GoogleCloudHealthcareV1alphaGcsSource",
-      "properties": {
-        "contentUri": {
-          "description": "Points to a [Google Cloud Storage](https://cloud.google.com/storage/) URI\ncontaining file(s) with content only.\nThe URI must be in the following format: `gs://bucket-id/object-id`.\nThe URI can include wildcards in `object-id` and thus identify multiple\nfiles. Supported wildcards:\n '*' to match 0 or more non-separator characters\n '**' to match 0 or more characters (including separators). Must be used at\n      the end of a path and with no other wildcards in the\n      path. Can also be used with a file extension (such as .dcm), which\n      imports all files with the extension in the specified directory and\n      its sub-directories. For example,\n      `gs://bucket-id/directory-id/**.dcm` imports all files with .dcm\n      extensions in `directory-id/` and its sub-directories.\n '?' to match 1 character\nReturns [google.rpc.Code.INVALID_ARGUMENT] for all other URI formats.\nFiles matching the wildcard are expected to contain content only, no\nmetadata.",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "Hl7V2Store": {
-      "description": "Represents an HL7v2 store.",
-      "id": "Hl7V2Store",
-      "properties": {
-        "name": {
-          "description": "Output only. Resource name of the HL7v2 store, of the form\n`projects/{project_id}/datasets/{dataset_id}/hl7V2Stores/{hl7v2_store_id}`.",
-          "type": "string"
-        },
-        "notificationConfig": {
-          "$ref": "NotificationConfig",
-          "description": "The notification destination all messages (both Ingest \u0026 Create) are\npublished on. Only the message name is sent as part of the notification. If\nthis is unset, no notifications will be sent. Supplied by the client."
-        },
-        "parserConfig": {
-          "$ref": "ParserConfig",
-          "description": "The configuration for the parser. It determines how the server parses the\nmessages."
-        }
-      },
-      "type": "object"
-    },
-    "HttpBody": {
-      "description": "Message that represents an arbitrary HTTP body. It should only be used for\npayload formats that can't be represented as JSON, such as raw binary or\nan HTML page.\n\n\nThis message can be used both in streaming and non-streaming API methods in\nthe request as well as the response.\n\nIt can be used as a top-level request field, which is convenient if one\nwants to extract parameters from either the URL or HTTP template into the\nrequest fields and also want access to the raw HTTP body.\n\nExample:\n\n    message GetResourceRequest {\n      // A unique request id.\n      string request_id = 1;\n\n      // The raw HTTP body is bound to this field.\n      google.api.HttpBody http_body = 2;\n    }\n\n    service ResourceService {\n      rpc GetResource(GetResourceRequest) returns (google.api.HttpBody);\n      rpc UpdateResource(google.api.HttpBody) returns (google.protobuf.Empty);\n    }\n\nExample with streaming methods:\n\n    service CaldavService {\n      rpc GetCalendar(stream google.api.HttpBody)\n        returns (stream google.api.HttpBody);\n      rpc UpdateCalendar(stream google.api.HttpBody)\n        returns (stream google.api.HttpBody);\n    }\n\nUse of this type only changes how the request and response bodies are\nhandled, all other features will continue to work unchanged.",
-      "id": "HttpBody",
-      "properties": {
-        "contentType": {
-          "description": "The HTTP Content-Type header value specifying the content type of the body.",
-          "type": "string"
-        },
-        "data": {
-          "description": "The HTTP request/response body as raw binary.",
-          "format": "byte",
-          "type": "string"
-        },
-        "extensions": {
-          "description": "Application specific response metadata. Must be set in the first response\nfor streaming APIs.",
-          "items": {
-            "additionalProperties": {
-              "description": "Properties of the object. Contains field @type with type URL.",
-              "type": "any"
-            },
-            "type": "object"
-          },
-          "type": "array"
-        }
-      },
-      "type": "object"
-    },
-    "ImageAnnotation": {
-      "description": "Image annotation.",
-      "id": "ImageAnnotation",
-      "properties": {
-        "boundingPolys": {
-          "description": "The list of polygons outlining the sensitive regions in the image.",
-          "items": {
-            "$ref": "BoundingPoly"
-          },
-          "type": "array"
-        }
-      },
-      "type": "object"
-    },
-    "ImageConfig": {
-      "description": "Specifies how de-identification of image pixel should be handled.",
-      "id": "ImageConfig",
-      "properties": {
-        "redactAllText": {
-          "description": "If true, all text found in the image is redacted.",
-          "type": "boolean"
-        }
-      },
-      "type": "object"
-    },
-    "ImportDicomDataErrorDetails": {
-      "description": "Returns the errors encountered during DICOM store import.",
-      "id": "ImportDicomDataErrorDetails",
-      "properties": {
-        "errors": {
-          "description": "Contains errors encountered in imports of individual resources (e.g.,\na Google Cloud Storage object).",
-          "items": {
-            "$ref": "ImportError"
-          },
-          "type": "array"
-        }
-      },
-      "type": "object"
-    },
-    "ImportDicomDataRequest": {
-      "description": "Imports data into the specified DICOM store.\nReturns an error if any of the files to import are not DICOM files. This\nAPI will accept duplicate DICOM instances, by simply ignoring the newly\npushed instance (it will not overwrite).",
-      "id": "ImportDicomDataRequest",
-      "properties": {
-        "inputConfig": {
-          "$ref": "InputConfig",
-          "description": "Specifies where the imported data resides."
-        }
-      },
-      "type": "object"
-    },
-    "ImportError": {
-      "description": "Contains error status for each import failure.",
-      "id": "ImportError",
-      "properties": {
-        "resource": {
-          "description": "Resource name.",
-          "type": "string"
-        },
-        "status": {
-          "$ref": "Status",
-          "description": "Error status associated with resource."
-        }
-      },
-      "type": "object"
-    },
-    "ImportResourcesRequest": {
-      "description": "Request to import resources.\nThe FHIR resources to be imported must have client supplied IDs. The server\nwill retain the resource IDs. The import operation is idempotent. Retry will\noverwrite existing data identified by client supplied IDs. The import\noperation is not transactional. The server will not roll back any committed\nchanges upon partial failures.",
-      "id": "ImportResourcesRequest",
-      "properties": {
-        "contentStructure": {
-          "description": "The content structure in the source location. The default is\nBUNDLE.",
-          "enum": [
-            "CONTENT_STRUCTURE_UNSPECIFIED",
-            "BUNDLE",
-            "RESOURCE"
-          ],
-          "enumDescriptions": [
-            "",
-            "Each unit is a bundle, which contains one or more resources.",
-            "Each unit is a single resource."
-          ],
-          "type": "string"
-        },
-        "gcsErrorLocation": {
-          "$ref": "GcsDataLocation",
-          "description": "The Cloud Storage bucket/folder path to write files that contain error\ndetails."
-        },
-        "gcsSourceLocation": {
-          "$ref": "GcsDataLocation",
-          "description": "Cloud Storage source data locations.\nEach Cloud Storage object should be a text file that contains newline\ndelimited JSON structures conforming to FHIR standard."
-        }
-      },
-      "type": "object"
-    },
-    "IngestMessageRequest": {
-      "description": "Ingests a message into the specified HL7v2 store.",
-      "id": "IngestMessageRequest",
-      "properties": {
-        "message": {
-          "$ref": "Message",
-          "description": "HL7v2 message to ingest."
-        }
-      },
-      "type": "object"
-    },
-    "IngestMessageResponse": {
-      "description": "Acknowledges that a message has been ingested into the specified\nHL7v2 store.",
-      "id": "IngestMessageResponse",
-      "properties": {
-        "hl7Ack": {
-          "description": "HL7v2 ACK message.",
-          "format": "byte",
-          "type": "string"
-        },
-        "message": {
-          "$ref": "Message",
-          "description": "Created message resource."
-        }
-      },
-      "type": "object"
-    },
-    "InputConfig": {
-      "description": "Specifies the location(s) from which data should be imported.",
-      "id": "InputConfig",
-      "properties": {
-        "gcsSource": {
-          "$ref": "GoogleCloudHealthcareV1alphaGcsSource",
-          "description": "Files on Google Cloud Storage.\nTo enable the Cloud Healthcare API to read from resources in your\nproject (e.g. Google Cloud Storage buckets), you must give the consumer\nCloud Healthcare API service account the proper permissions. The service\naccount is:\n`service-{PROJECT_NUMBER}@gcp-sa-healthcare.iam.gserviceaccount.com`.\nThe PROJECT_NUMBER identifies the project that contains the source Google\nCloud Storage bucket. To get the project number, go to the GCP Console\nDashboard.\n\nGcsSource requires the `roles/storage.objectViewer` Cloud IAM role."
-        }
-      },
-      "type": "object"
-    },
-    "ListAnnotationStoresResponse": {
-      "description": "Lists the Annotation stores\nin the given dataset.",
-      "id": "ListAnnotationStoresResponse",
-      "properties": {
-        "annotationStores": {
-          "description": "The returned Annotation stores. Won't be more Annotation stores than the\nvalue of page_size in the request.",
-          "items": {
-            "$ref": "AnnotationStore"
-          },
-          "type": "array"
-        },
-        "nextPageToken": {
-          "description": "Token to retrieve the next page of results or empty if there are no more\nresults in the list.",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "ListAnnotationsResponse": {
-      "description": "Lists the Annotations in the\nspecified Annotation store.",
-      "id": "ListAnnotationsResponse",
-      "properties": {
-        "annotations": {
-          "description": "The returned Annotations names. Won't be more values than the value of\npage_size in the request.",
-          "items": {
-            "type": "string"
-          },
-          "type": "array"
-        },
-        "nextPageToken": {
-          "description": "Token to retrieve the next page of results or empty if there are no more\nresults in the list.",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "ListDatasetsResponse": {
-      "description": "Lists the available datasets.",
-      "id": "ListDatasetsResponse",
-      "properties": {
-        "datasets": {
-          "description": "The first page of datasets.",
-          "items": {
-            "$ref": "Dataset"
-          },
-          "type": "array"
-        },
-        "nextPageToken": {
-          "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "ListDicomStoresResponse": {
-      "description": "Lists the DICOM stores in the given dataset.",
-      "id": "ListDicomStoresResponse",
-      "properties": {
-        "dicomStores": {
-          "description": "The returned DICOM stores. Won't be more DICOM stores than the value of\npage_size in the request.",
-          "items": {
-            "$ref": "DicomStore"
-          },
-          "type": "array"
-        },
-        "nextPageToken": {
-          "description": "Token to retrieve the next page of results or empty if there are no more\nresults in the list.",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "ListFhirStoresResponse": {
-      "description": "Lists the FHIR stores in the given dataset.",
-      "id": "ListFhirStoresResponse",
-      "properties": {
-        "fhirStores": {
-          "description": "The returned FHIR stores. Won't be more FHIR stores than the value of\npage_size in the request.",
-          "items": {
-            "$ref": "FhirStore"
-          },
-          "type": "array"
-        },
-        "nextPageToken": {
-          "description": "Token to retrieve the next page of results or empty if there are no more\nresults in the list.",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "ListHl7V2StoresResponse": {
-      "description": "Lists the HL7v2 stores in the given dataset.",
-      "id": "ListHl7V2StoresResponse",
-      "properties": {
-        "hl7V2Stores": {
-          "description": "The returned HL7v2 stores. Won't be more HL7v2 stores than the value of\npage_size in the request.",
-          "items": {
-            "$ref": "Hl7V2Store"
-          },
-          "type": "array"
-        },
-        "nextPageToken": {
-          "description": "Token to retrieve the next page of results or empty if there are no more\nresults in the list.",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
     "ListLocationsResponse": {
       "description": "The response message for Locations.ListLocations.",
       "id": "ListLocationsResponse",
@@ -3450,24 +622,6 @@
       },
       "type": "object"
     },
-    "ListMessagesResponse": {
-      "description": "Lists the messages in the specified HL7v2 store.",
-      "id": "ListMessagesResponse",
-      "properties": {
-        "messages": {
-          "description": "The returned message names. Won't be more values than the value of\npage_size in the request.",
-          "items": {
-            "type": "string"
-          },
-          "type": "array"
-        },
-        "nextPageToken": {
-          "description": "Token to retrieve the next page of results or empty if there are no more\nresults in the list.",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
     "ListOperationsResponse": {
       "description": "The response message for Operations.ListOperations.",
       "id": "ListOperationsResponse",
@@ -3520,69 +674,6 @@
       },
       "type": "object"
     },
-    "Message": {
-      "description": "A complete HL7v2 message.\nSee http://www.hl7.org/implement/standards/index.cfm?ref=common for details\non the standard.",
-      "id": "Message",
-      "properties": {
-        "createTime": {
-          "description": "The datetime when the message was created. Set by the server.",
-          "format": "google-datetime",
-          "type": "string"
-        },
-        "data": {
-          "description": "Raw message bytes.",
-          "format": "byte",
-          "type": "string"
-        },
-        "labels": {
-          "additionalProperties": {
-            "type": "string"
-          },
-          "description": "User-supplied key-value pairs used to organize HL7v2 stores.\n\nLabel keys must be between 1 and 63 characters long, have a UTF-8 encoding\nof maximum 128 bytes, and must conform to the\nfollowing PCRE regular expression:\n\\p{Ll}\\p{Lo}{0,62}\n\nLabel values are optional, must be between 1 and 63 characters long, have\na UTF-8 encoding of maximum 128 bytes, and must conform to the\nfollowing PCRE regular expression: [\\p{Ll}\\p{Lo}\\p{N}_-]{0,63}\n\nNo more than 64 labels can be associated with a given store.",
-          "type": "object"
-        },
-        "messageType": {
-          "description": "The message type and trigger event for this message. MSH-9.",
-          "type": "string"
-        },
-        "name": {
-          "description": "Resource name of the Message, of the form\n`projects/{project_id}/datasets/{dataset_id}/hl7V2Stores/{hl7_v2_store_id}/messages/{message_id}`.\nAssigned by the server.",
-          "type": "string"
-        },
-        "parsedData": {
-          "$ref": "ParsedData",
-          "description": "The parsed version of the raw message data."
-        },
-        "patientIds": {
-          "description": "All patient IDs listed in the PID-2, PID-3, and PID-4 segments of this\nmessage.",
-          "items": {
-            "$ref": "PatientId"
-          },
-          "type": "array"
-        },
-        "sendFacility": {
-          "description": "The hospital that this message came from. MSH-4.",
-          "type": "string"
-        },
-        "sendTime": {
-          "description": "The datetime the sending application sent this message. MSH-7.",
-          "format": "google-datetime",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "NotificationConfig": {
-      "description": "Specifies where notifications should be sent upon changes to a data store.",
-      "id": "NotificationConfig",
-      "properties": {
-        "pubsubTopic": {
-          "description": "The [Cloud Pub/Sub](https://cloud.google.com/pubsub/docs/) topic that\nnotifications of changes are published on. Supplied by the client.\nPubsubMessage.Data will contain the resource name.\nPubsubMessage.MessageId is the ID of this message. It is guaranteed to be\nunique within the topic.\nPubsubMessage.PublishTime is the time at which the message was published.\nNotifications are only sent if the topic is\nnon-empty. [Topic\nnames](https://cloud.google.com/pubsub/docs/overview#names) must be scoped\nto a project. cloud-healthcare@system.gserviceaccount.com must have\npublisher permissions on the given Cloud Pub/Sub topic. Not having adequate\npermissions will cause the calls that send notifications to fail.",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
     "Operation": {
       "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
       "id": "Operation",
@@ -3618,89 +709,6 @@
       },
       "type": "object"
     },
-    "OperationMetadata": {
-      "description": "OperationMetadata provides information about the operation execution.\nReturned in the long-running operation's metadata field.",
-      "id": "OperationMetadata",
-      "properties": {
-        "apiMethodName": {
-          "description": "The name of the API method that initiated the operation.",
-          "type": "string"
-        },
-        "counter": {
-          "$ref": "ProgressCounter"
-        },
-        "createTime": {
-          "description": "The time at which the operation was created by the API.",
-          "format": "google-datetime",
-          "type": "string"
-        },
-        "endTime": {
-          "description": "The time at which execution was completed.",
-          "format": "google-datetime",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "OutputConfig": {
-      "description": "Specifies the location(s) to which data should be exported.",
-      "id": "OutputConfig",
-      "properties": {
-        "bigQueryDestination": {
-          "$ref": "BigQueryDestination",
-          "description": "BigQueryDestination requires two IAM roles: `roles/bigquery.dataEditor`\nand `roles/bigquery.jobUser`."
-        },
-        "gcsDestination": {
-          "$ref": "GcsDestination",
-          "description": "GcsDestination requires `roles/storage.objectAdmin` Cloud IAM role.\nNote that writing a file to the same destination multiple times will\nresult in the previous version of the file being overwritten."
-        }
-      },
-      "type": "object"
-    },
-    "ParsedData": {
-      "description": "The content of a HL7v2 message in a structured format.",
-      "id": "ParsedData",
-      "properties": {
-        "segments": {
-          "items": {
-            "$ref": "Segment"
-          },
-          "type": "array"
-        }
-      },
-      "type": "object"
-    },
-    "ParserConfig": {
-      "description": "The configuration for the parser. It determines how the server parses the\nmessages.",
-      "id": "ParserConfig",
-      "properties": {
-        "allowNullHeader": {
-          "description": "Determines whether messages with no header are allowed.",
-          "type": "boolean"
-        },
-        "segmentTerminator": {
-          "description": "Byte(s) to be used as the segment terminator. If this is unset, '\\r' will\nbe used as segment terminator.",
-          "format": "byte",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "PatientId": {
-      "description": "A patient identifier and associated type.",
-      "id": "PatientId",
-      "properties": {
-        "type": {
-          "description": "ID type, e.g. MRN or NHS.",
-          "type": "string"
-        },
-        "value": {
-          "description": "The patient's unique identifier.",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
     "Policy": {
       "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**JSON Example**\n\n    {\n      \"bindings\": [\n        {\n          \"role\": \"roles/owner\",\n          \"members\": [\n            \"user:mike@example.com\",\n            \"group:admins@example.com\",\n            \"domain:google.com\",\n            \"serviceAccount:my-other-app@appspot.gserviceaccount.com\"\n          ]\n        },\n        {\n          \"role\": \"roles/viewer\",\n          \"members\": [\"user:sean@example.com\"]\n        }\n      ]\n    }\n\n**YAML Example**\n\n    bindings:\n    - members:\n      - user:mike@example.com\n      - group:admins@example.com\n      - domain:google.com\n      - serviceAccount:my-other-app@appspot.gserviceaccount.com\n      role: roles/owner\n    - members:\n      - user:sean@example.com\n      role: roles/viewer\n\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).",
       "id": "Policy",
@@ -3732,111 +740,6 @@
       },
       "type": "object"
     },
-    "ProgressCounter": {
-      "description": "ProgressCounter provides counters to describe an operation's progress.",
-      "id": "ProgressCounter",
-      "properties": {
-        "failure": {
-          "description": "The number of units that failed in the operation.",
-          "format": "int64",
-          "type": "string"
-        },
-        "pending": {
-          "description": "The number of units that are pending in the operation.",
-          "format": "int64",
-          "type": "string"
-        },
-        "success": {
-          "description": "The number of units that succeeded in the operation.",
-          "format": "int64",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "ResourceAnnotation": {
-      "description": "Resource level annotation.",
-      "id": "ResourceAnnotation",
-      "properties": {
-        "label": {
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "SchemaConfig": {
-      "description": "Configuration for the FHIR BigQuery schema. Determines how the server\ngenerates the schema.",
-      "id": "SchemaConfig",
-      "properties": {
-        "recursiveStructureDepth": {
-          "description": "The depth for all recursive structures in the output analytics\nschema. For example, concept in the CodeSystem resource is a recursive\nstructure; when the depth is 2, the CodeSystem table will have a column\ncalled `concept.concept` but not `concept.concept.concept`. If not\nspecified or set to 0, the server will use the default value 2.",
-          "format": "int64",
-          "type": "string"
-        },
-        "schemaType": {
-          "description": "Specifies the output schema type. If unspecified, the default is\n`LOSSLESS`.",
-          "enum": [
-            "SCHEMA_TYPE_UNSPECIFIED",
-            "LOSSLESS",
-            "ANALYTICS"
-          ],
-          "enumDescriptions": [
-            "No schema type specified. Same as `LOSSLESS`.",
-            "Schema generated from original FHIR data.",
-            "Analytics schema defined by the FHIR community.\nSee https://github.com/FHIR/sql-on-fhir."
-          ],
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "SearchResourcesRequest": {
-      "description": "Request to search the resources in the specified FHIR store.",
-      "id": "SearchResourcesRequest",
-      "properties": {
-        "resourceType": {
-          "description": "The type of the resource to search.",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "Segment": {
-      "description": "A segment in a structured format.",
-      "id": "Segment",
-      "properties": {
-        "fields": {
-          "additionalProperties": {
-            "type": "string"
-          },
-          "description": "A mapping from the positional location to the value.\nThe key string uses indexes separated by dots to identify Fields,\ncomponents and sub-components. To be consistent with how the standard\nrefers to different parts of message, we use zero-based indexes for fields\nand one-based indexes for components and sub-components. A bracket notation\nis also used to identify different instances of a repeated field.\nZero-based indexes are used to refer to each instance.\nRegex for key: (\\d+)(\\[\\d+\\])?(.\\d+)?(.\\d+)?\n\nExamples of (key, value) pairs:\n\n(0.1, \"foo\") denotes First component of Field 0 has the value \"foo\".\n\n(1.1.2, \"bar\") denotes Second sub-component of the first component of\nField 1 has the value \"bar\".\n\n(1[0].1, \"baz\") denotes First component of the\nfirst Instance of Field 1, which is repeated, has the value \"baz\".",
-          "type": "object"
-        },
-        "segmentId": {
-          "description": "A string that indicates the type of segment, e.g., EVN, PID.",
-          "type": "string"
-        },
-        "setId": {
-          "description": "Set ID for segments that can be in a set. This can be empty if it is\nmissing or it is not applicable.",
-          "type": "string"
-        }
-      },
-      "type": "object"
-    },
-    "SensitiveTextAnnotation": {
-      "description": "A TextAnnotation specifies a text range that includes sensitive information.",
-      "id": "SensitiveTextAnnotation",
-      "properties": {
-        "details": {
-          "additionalProperties": {
-            "$ref": "Detail"
-          },
-          "description": "Maps from a resource slice (e.g. FHIR resource field path) to a set of\nsensitive text findings. For example,\nAppointment.Narrative text1 --\u003e {findings_1, findings_2, findings_3}",
-          "type": "object"
-        }
-      },
-      "type": "object"
-    },
     "SetIamPolicyRequest": {
       "description": "Request message for `SetIamPolicy` method.",
       "id": "SetIamPolicyRequest",
@@ -3907,23 +810,6 @@
         }
       },
       "type": "object"
-    },
-    "Vertex": {
-      "description": "A 2D coordinate in an image. The origin is the top-left.",
-      "id": "Vertex",
-      "properties": {
-        "x": {
-          "description": "X coordinate.",
-          "format": "float",
-          "type": "number"
-        },
-        "y": {
-          "description": "Y coordinate.",
-          "format": "float",
-          "type": "number"
-        }
-      },
-      "type": "object"
     }
   },
   "servicePath": "",
diff --git a/healthcare/v1alpha/healthcare-gen.go b/healthcare/v1alpha/healthcare-gen.go
index b31663d..7844479 100644
--- a/healthcare/v1alpha/healthcare-gen.go
+++ b/healthcare/v1alpha/healthcare-gen.go
@@ -156,9 +156,7 @@
 
 func NewProjectsLocationsDatasetsService(s *Service) *ProjectsLocationsDatasetsService {
 	rs := &ProjectsLocationsDatasetsService{s: s}
-	rs.AnnotationStores = NewProjectsLocationsDatasetsAnnotationStoresService(s)
 	rs.DicomStores = NewProjectsLocationsDatasetsDicomStoresService(s)
-	rs.FhirStores = NewProjectsLocationsDatasetsFhirStoresService(s)
 	rs.Hl7V2Stores = NewProjectsLocationsDatasetsHl7V2StoresService(s)
 	rs.Operations = NewProjectsLocationsDatasetsOperationsService(s)
 	return rs
@@ -167,135 +165,29 @@
 type ProjectsLocationsDatasetsService struct {
 	s *Service
 
-	AnnotationStores *ProjectsLocationsDatasetsAnnotationStoresService
-
 	DicomStores *ProjectsLocationsDatasetsDicomStoresService
 
-	FhirStores *ProjectsLocationsDatasetsFhirStoresService
-
 	Hl7V2Stores *ProjectsLocationsDatasetsHl7V2StoresService
 
 	Operations *ProjectsLocationsDatasetsOperationsService
 }
 
-func NewProjectsLocationsDatasetsAnnotationStoresService(s *Service) *ProjectsLocationsDatasetsAnnotationStoresService {
-	rs := &ProjectsLocationsDatasetsAnnotationStoresService{s: s}
-	rs.Annotations = NewProjectsLocationsDatasetsAnnotationStoresAnnotationsService(s)
-	return rs
-}
-
-type ProjectsLocationsDatasetsAnnotationStoresService struct {
-	s *Service
-
-	Annotations *ProjectsLocationsDatasetsAnnotationStoresAnnotationsService
-}
-
-func NewProjectsLocationsDatasetsAnnotationStoresAnnotationsService(s *Service) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsService {
-	rs := &ProjectsLocationsDatasetsAnnotationStoresAnnotationsService{s: s}
-	return rs
-}
-
-type ProjectsLocationsDatasetsAnnotationStoresAnnotationsService struct {
-	s *Service
-}
-
 func NewProjectsLocationsDatasetsDicomStoresService(s *Service) *ProjectsLocationsDatasetsDicomStoresService {
 	rs := &ProjectsLocationsDatasetsDicomStoresService{s: s}
-	rs.DicomWeb = NewProjectsLocationsDatasetsDicomStoresDicomWebService(s)
 	return rs
 }
 
 type ProjectsLocationsDatasetsDicomStoresService struct {
 	s *Service
-
-	DicomWeb *ProjectsLocationsDatasetsDicomStoresDicomWebService
-}
-
-func NewProjectsLocationsDatasetsDicomStoresDicomWebService(s *Service) *ProjectsLocationsDatasetsDicomStoresDicomWebService {
-	rs := &ProjectsLocationsDatasetsDicomStoresDicomWebService{s: s}
-	return rs
-}
-
-type ProjectsLocationsDatasetsDicomStoresDicomWebService struct {
-	s *Service
-}
-
-func NewProjectsLocationsDatasetsFhirStoresService(s *Service) *ProjectsLocationsDatasetsFhirStoresService {
-	rs := &ProjectsLocationsDatasetsFhirStoresService{s: s}
-	rs.Resources = NewProjectsLocationsDatasetsFhirStoresResourcesService(s)
-	rs.SecurityLabels = NewProjectsLocationsDatasetsFhirStoresSecurityLabelsService(s)
-	return rs
-}
-
-type ProjectsLocationsDatasetsFhirStoresService struct {
-	s *Service
-
-	Resources *ProjectsLocationsDatasetsFhirStoresResourcesService
-
-	SecurityLabels *ProjectsLocationsDatasetsFhirStoresSecurityLabelsService
-}
-
-func NewProjectsLocationsDatasetsFhirStoresResourcesService(s *Service) *ProjectsLocationsDatasetsFhirStoresResourcesService {
-	rs := &ProjectsLocationsDatasetsFhirStoresResourcesService{s: s}
-	rs.Patient = NewProjectsLocationsDatasetsFhirStoresResourcesPatientService(s)
-	rs.History = NewProjectsLocationsDatasetsFhirStoresResourcesHistoryService(s)
-	return rs
-}
-
-type ProjectsLocationsDatasetsFhirStoresResourcesService struct {
-	s *Service
-
-	Patient *ProjectsLocationsDatasetsFhirStoresResourcesPatientService
-
-	History *ProjectsLocationsDatasetsFhirStoresResourcesHistoryService
-}
-
-func NewProjectsLocationsDatasetsFhirStoresResourcesPatientService(s *Service) *ProjectsLocationsDatasetsFhirStoresResourcesPatientService {
-	rs := &ProjectsLocationsDatasetsFhirStoresResourcesPatientService{s: s}
-	return rs
-}
-
-type ProjectsLocationsDatasetsFhirStoresResourcesPatientService struct {
-	s *Service
-}
-
-func NewProjectsLocationsDatasetsFhirStoresResourcesHistoryService(s *Service) *ProjectsLocationsDatasetsFhirStoresResourcesHistoryService {
-	rs := &ProjectsLocationsDatasetsFhirStoresResourcesHistoryService{s: s}
-	return rs
-}
-
-type ProjectsLocationsDatasetsFhirStoresResourcesHistoryService struct {
-	s *Service
-}
-
-func NewProjectsLocationsDatasetsFhirStoresSecurityLabelsService(s *Service) *ProjectsLocationsDatasetsFhirStoresSecurityLabelsService {
-	rs := &ProjectsLocationsDatasetsFhirStoresSecurityLabelsService{s: s}
-	return rs
-}
-
-type ProjectsLocationsDatasetsFhirStoresSecurityLabelsService struct {
-	s *Service
 }
 
 func NewProjectsLocationsDatasetsHl7V2StoresService(s *Service) *ProjectsLocationsDatasetsHl7V2StoresService {
 	rs := &ProjectsLocationsDatasetsHl7V2StoresService{s: s}
-	rs.Messages = NewProjectsLocationsDatasetsHl7V2StoresMessagesService(s)
 	return rs
 }
 
 type ProjectsLocationsDatasetsHl7V2StoresService struct {
 	s *Service
-
-	Messages *ProjectsLocationsDatasetsHl7V2StoresMessagesService
-}
-
-func NewProjectsLocationsDatasetsHl7V2StoresMessagesService(s *Service) *ProjectsLocationsDatasetsHl7V2StoresMessagesService {
-	rs := &ProjectsLocationsDatasetsHl7V2StoresMessagesService{s: s}
-	return rs
-}
-
-type ProjectsLocationsDatasetsHl7V2StoresMessagesService struct {
-	s *Service
 }
 
 func NewProjectsLocationsDatasetsOperationsService(s *Service) *ProjectsLocationsDatasetsOperationsService {
@@ -307,143 +199,6 @@
 	s *Service
 }
 
-// Annotation: An annotation record.
-type Annotation struct {
-	// AnnotationSource: Details of the source.
-	AnnotationSource *AnnotationSource `json:"annotationSource,omitempty"`
-
-	// ImageAnnotation: Annnotations for images, e.g., bounding polygons.
-	ImageAnnotation *ImageAnnotation `json:"imageAnnotation,omitempty"`
-
-	// Name: Output only. Resource name of the Annotation, of the
-	// form
-	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_
-	// id}/annotationStores/{annotation_store_id}/annotations/{annotation_id}
-	// `.
-	Name string `json:"name,omitempty"`
-
-	// ResourceAnnotation: Annotations for resource, e.g., classification
-	// tags.
-	ResourceAnnotation *ResourceAnnotation `json:"resourceAnnotation,omitempty"`
-
-	// TextAnnotation: Annotations for sentitive texts, e.g., range of such
-	// texts.
-	TextAnnotation *SensitiveTextAnnotation `json:"textAnnotation,omitempty"`
-
-	// ServerResponse contains the HTTP response code and headers from the
-	// server.
-	googleapi.ServerResponse `json:"-"`
-
-	// ForceSendFields is a list of field names (e.g. "AnnotationSource") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "AnnotationSource") to
-	// include in API requests with the JSON null value. By default, fields
-	// with empty values are omitted from API requests. However, any field
-	// with an empty value appearing in NullFields will be sent to the
-	// server as null. It is an error if a field in this list has a
-	// non-empty value. This may be used to include null fields in Patch
-	// requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *Annotation) MarshalJSON() ([]byte, error) {
-	type NoMethod Annotation
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// AnnotationSource: AnnotationSource holds the source information of
-// the annotation.
-type AnnotationSource struct {
-	// CloudHealthcareSource: Cloud Healthcare API resource.
-	CloudHealthcareSource *CloudHealthcareSource `json:"cloudHealthcareSource,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g.
-	// "CloudHealthcareSource") to unconditionally include in API requests.
-	// By default, fields with empty values are omitted from API requests.
-	// However, any non-pointer, non-interface field appearing in
-	// ForceSendFields will be sent to the server regardless of whether the
-	// field is empty or not. This may be used to include empty fields in
-	// Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "CloudHealthcareSource") to
-	// include in API requests with the JSON null value. By default, fields
-	// with empty values are omitted from API requests. However, any field
-	// with an empty value appearing in NullFields will be sent to the
-	// server as null. It is an error if a field in this list has a
-	// non-empty value. This may be used to include null fields in Patch
-	// requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *AnnotationSource) MarshalJSON() ([]byte, error) {
-	type NoMethod AnnotationSource
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// AnnotationStore: An Annotation store that can store annotation
-// resources such as
-// labels and tags for text, image and audio.
-type AnnotationStore struct {
-	// Labels: User-supplied key-value pairs used to organize Annotation
-	// stores.
-	//
-	// Label keys must be between 1 and 63 characters long, have a UTF-8
-	// encoding
-	// of maximum 128 bytes, and must conform to the
-	// following PCRE regular expression:
-	// \p{Ll}\p{Lo}{0,62}
-	//
-	// Label values are optional, must be between 1 and 63 characters long,
-	// have
-	// a UTF-8 encoding of maximum 128 bytes, and must conform to
-	// the
-	// following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
-	//
-	// No more than 64 labels can be associated with a given store.
-	Labels map[string]string `json:"labels,omitempty"`
-
-	// Name: Output only. Resource name of the Annotation store, of the
-	// form
-	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_
-	// id}/annotationStores/{annotation_store_id}`.
-	Name string `json:"name,omitempty"`
-
-	// ServerResponse contains the HTTP response code and headers from the
-	// server.
-	googleapi.ServerResponse `json:"-"`
-
-	// ForceSendFields is a list of field names (e.g. "Labels") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Labels") to include in API
-	// requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *AnnotationStore) MarshalJSON() ([]byte, error) {
-	type NoMethod AnnotationStore
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
 // AuditConfig: Specifies the audit configuration for a service.
 // The configuration determines which permission types are logged, and
 // what
@@ -598,90 +353,10 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
-// BigQueryDestination: The BigQuery table to which the output should be
-// written.
-type BigQueryDestination struct {
-	// Dataset: Required. The BigQuery dataset to which the DICOM store
-	// should be exported.
-	// If this dataset does not exist, the export call returns an error.
-	Dataset string `json:"dataset,omitempty"`
-
-	// OverwriteTable: If the destination table already exists and this flag
-	// is `TRUE`, the table
-	// will be overwritten by the contents of the DICOM store. If the flag
-	// is not
-	// set and the destination table already exists, the export call returns
-	// an
-	// error.
-	OverwriteTable bool `json:"overwriteTable,omitempty"`
-
-	// Table: Required. The BigQuery table to which the DICOM store should
-	// be written. If
-	// this table does not exist, a new table with the given name will be
-	// created.
-	Table string `json:"table,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "Dataset") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Dataset") to include in
-	// API requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *BigQueryDestination) MarshalJSON() ([]byte, error) {
-	type NoMethod BigQueryDestination
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// BigQueryLocation: BigQuery dataset location.
-type BigQueryLocation struct {
-	// DatasetId: ID of the dataset that houses the BigQuery tables.
-	DatasetId string `json:"datasetId,omitempty"`
-
-	// ProjectId: ID of the project that owns the BigQuery datasets.
-	ProjectId string `json:"projectId,omitempty"`
-
-	// SchemaConfig: The configuration for the exported BigQuery schema.
-	SchemaConfig *SchemaConfig `json:"schemaConfig,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "DatasetId") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "DatasetId") to include in
-	// API requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *BigQueryLocation) MarshalJSON() ([]byte, error) {
-	type NoMethod BigQueryLocation
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
 // Binding: Associates `members` with a `role`.
 type Binding struct {
 	// Condition: The condition that is associated with this binding.
-	// NOTE: an unsatisfied condition will not allow user access via
+	// NOTE: An unsatisfied condition will not allow user access via
 	// current
 	// binding. Different bindings, including their conditions, are
 	// examined
@@ -750,417 +425,6 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
-// BoundingPoly: A bounding polygon for the detected image annotation.
-type BoundingPoly struct {
-	Label string `json:"label,omitempty"`
-
-	Vertices []*Vertex `json:"vertices,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "Label") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Label") to include in API
-	// requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *BoundingPoly) MarshalJSON() ([]byte, error) {
-	type NoMethod BoundingPoly
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// CloudHealthcareSource: Cloud Healthcare API resource.
-type CloudHealthcareSource struct {
-	// Name: Full path of a Cloud Healthcare API resource.
-	Name string `json:"name,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "Name") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Name") to include in API
-	// requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *CloudHealthcareSource) MarshalJSON() ([]byte, error) {
-	type NoMethod CloudHealthcareSource
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// CreateMessageRequest: Creates a new message.
-type CreateMessageRequest struct {
-	// Message: HL7v2 message.
-	Message *Message `json:"message,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "Message") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Message") to include in
-	// API requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *CreateMessageRequest) MarshalJSON() ([]byte, error) {
-	type NoMethod CreateMessageRequest
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// Dataset: A message representing a health dataset.
-//
-// A health dataset represents a collection of healthcare data
-// pertaining to one
-// or more patients. This may include multiple modalities of healthcare
-// data,
-// such as electronic medical records or medical imaging data.
-type Dataset struct {
-	// Name: Output only. Resource name of the dataset, of the
-	// form
-	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_
-	// id}`.
-	Name string `json:"name,omitempty"`
-
-	// TimeZone: The default timezone used by this dataset. Must be a either
-	// a valid IANA
-	// time zone name such as "America/New_York" or empty, which defaults to
-	// UTC.
-	// This is used for parsing times in resources (e.g., HL7 messages)
-	// where no
-	// explicit timezone is specified.
-	TimeZone string `json:"timeZone,omitempty"`
-
-	// ServerResponse contains the HTTP response code and headers from the
-	// server.
-	googleapi.ServerResponse `json:"-"`
-
-	// ForceSendFields is a list of field names (e.g. "Name") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Name") to include in API
-	// requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *Dataset) MarshalJSON() ([]byte, error) {
-	type NoMethod Dataset
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// DeidentifyConfig: Configures de-id options specific to different
-// types of content.
-// Each submessage customizes the handling of
-// an
-// https://tools.ietf.org/html/rfc6838 media type or subtype. Configs
-// are
-// applied in a nested manner at runtime.
-type DeidentifyConfig struct {
-	// Dicom: Configures de-id of application/DICOM content.
-	Dicom *DicomConfig `json:"dicom,omitempty"`
-
-	// Fhir: Configures de-id of application/FHIR content.
-	Fhir *FhirConfig `json:"fhir,omitempty"`
-
-	// Image: Configures de-identification of image pixels wherever they are
-	// found in the
-	// source_dataset.
-	Image *ImageConfig `json:"image,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "Dicom") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Dicom") to include in API
-	// requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *DeidentifyConfig) MarshalJSON() ([]byte, error) {
-	type NoMethod DeidentifyConfig
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// DeidentifyDatasetRequest: Redacts identifying information from the
-// specified dataset.
-type DeidentifyDatasetRequest struct {
-	// Config: Deidentify configuration
-	Config *DeidentifyConfig `json:"config,omitempty"`
-
-	// DestinationDataset: The name of the dataset resource to which the
-	// redacted data should be
-	// written
-	// (e.g.,
-	// `projects/{project_id}/locations/{location_id}/datasets/{datase
-	// t_id}`).
-	// The new dataset must not exist, or the request will fail.
-	DestinationDataset string `json:"destinationDataset,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "Config") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Config") to include in API
-	// requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *DeidentifyDatasetRequest) MarshalJSON() ([]byte, error) {
-	type NoMethod DeidentifyDatasetRequest
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// Detail: Contains multiple sensitive information findings for each
-// resource slice.
-type Detail struct {
-	Findings []*Finding `json:"findings,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "Findings") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Findings") to include in
-	// API requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *Detail) MarshalJSON() ([]byte, error) {
-	type NoMethod Detail
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// DicomConfig: Specifies the parameters needed for de-identification of
-// DICOM stores.
-type DicomConfig struct {
-	// WhitelistTags: Tags to be whitelisted, for example "PatientID",
-	// "0010,0010". Any tag
-	// that is whitelisted will copied as is. All other tags will be
-	// omitted.
-	WhitelistTags []string `json:"whitelistTags,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "WhitelistTags") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "WhitelistTags") to include
-	// in API requests with the JSON null value. By default, fields with
-	// empty values are omitted from API requests. However, any field with
-	// an empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *DicomConfig) MarshalJSON() ([]byte, error) {
-	type NoMethod DicomConfig
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// DicomStore: Represents a DICOM store.
-type DicomStore struct {
-	// Name: Output only. Resource name of the DICOM store, of the
-	// form
-	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_
-	// id}/dicomStores/{dicom_store_id}`.
-	Name string `json:"name,omitempty"`
-
-	// NotificationConfig: Notification destination for new DICOM
-	// instances.
-	// Supplied by the client.
-	NotificationConfig *NotificationConfig `json:"notificationConfig,omitempty"`
-
-	// ServerResponse contains the HTTP response code and headers from the
-	// server.
-	googleapi.ServerResponse `json:"-"`
-
-	// ForceSendFields is a list of field names (e.g. "Name") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Name") to include in API
-	// requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *DicomStore) MarshalJSON() ([]byte, error) {
-	type NoMethod DicomStore
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// Empty: A generic empty message that you can re-use to avoid defining
-// duplicated
-// empty messages in your APIs. A typical example is to use it as the
-// request
-// or the response type of an API method. For instance:
-//
-//     service Foo {
-//       rpc Bar(google.protobuf.Empty) returns
-// (google.protobuf.Empty);
-//     }
-//
-// The JSON representation for `Empty` is empty JSON object `{}`.
-type Empty struct {
-	// ServerResponse contains the HTTP response code and headers from the
-	// server.
-	googleapi.ServerResponse `json:"-"`
-}
-
-// ExportDicomDataRequest: Exports data from the specified DICOM
-// store.
-// If a given resource (e.g., a DICOM object with the same SOPInstance
-// UID)
-// already exists in the output, it is overwritten with the version
-// in the source dataset.
-// Exported DICOM data will persist when the DICOM store from which it
-// was
-// exported is deleted.
-type ExportDicomDataRequest struct {
-	// OutputConfig: Specifies where the exported data should be placed.
-	OutputConfig *OutputConfig `json:"outputConfig,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "OutputConfig") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "OutputConfig") to include
-	// in API requests with the JSON null value. By default, fields with
-	// empty values are omitted from API requests. However, any field with
-	// an empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *ExportDicomDataRequest) MarshalJSON() ([]byte, error) {
-	type NoMethod ExportDicomDataRequest
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// ExportResourcesRequest: Request to export resources.
-type ExportResourcesRequest struct {
-	// BigqueryDestinationLocation: The BigQuery destination location.
-	// The output will be one BigQuery table per resource type.
-	BigqueryDestinationLocation *BigQueryLocation `json:"bigqueryDestinationLocation,omitempty"`
-
-	// GcsDestinationLocation: The Cloud Storage destination
-	// location.
-	// Specify a path to a Cloud Storage bucket or folder rather
-	// than a concrete object. The exported outputs are
-	// organized by FHIR resource types. The server will create one object
-	// per
-	// resource type. Each object contains newline delimited JSON, and each
-	// line
-	// is a FHIR resource.
-	GcsDestinationLocation *GcsDataLocation `json:"gcsDestinationLocation,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g.
-	// "BigqueryDestinationLocation") to unconditionally include in API
-	// requests. By default, fields with empty values are omitted from API
-	// requests. However, any non-pointer, non-interface field appearing in
-	// ForceSendFields will be sent to the server regardless of whether the
-	// field is empty or not. This may be used to include empty fields in
-	// Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g.
-	// "BigqueryDestinationLocation") to include in API requests with the
-	// JSON null value. By default, fields with empty values are omitted
-	// from API requests. However, any field with an empty value appearing
-	// in NullFields will be sent to the server as null. It is an error if a
-	// field in this list has a non-empty value. This may be used to include
-	// null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *ExportResourcesRequest) MarshalJSON() ([]byte, error) {
-	type NoMethod ExportResourcesRequest
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
 // Expr: Represents an expression text. Example:
 //
 //     title: "User account presence"
@@ -1215,1074 +479,6 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
-// FhirConfig: Specifies how de-identification of a FHIR store should be
-// handled.
-type FhirConfig struct {
-}
-
-// FhirStore: Represents a FHIR store.
-type FhirStore struct {
-	// DisableReferentialIntegrity: Whether to disable referential integrity
-	// in this FHIR store. This field is
-	// immutable after FHIR store creation.
-	// The default value is false, meaning that the API will enforce
-	// referential
-	// integrity and fail the requests that will result in inconsistent
-	// state in
-	// the FHIR store.
-	// When this field is set to true, the API will skip referential
-	// integrity
-	// check. Consequently, operations that rely on references, such
-	// as
-	// GetPatientEverything, will not return all the results if broken
-	// references
-	// exist.
-	DisableReferentialIntegrity bool `json:"disableReferentialIntegrity,omitempty"`
-
-	// DisableResourceVersioning: Whether to disable resource versioning for
-	// this FHIR store. This field can
-	// not be changed after the creation of FHIR store.
-	// If set to false, which is the default behavior, all write operations
-	// will
-	// cause historical versions to be recorded automatically. The
-	// historical
-	// versions can be fetched through the history APIs, but cannot be
-	// updated.
-	// If set to true, no historical versions will be kept. The server will
-	// send
-	// back errors for attempts to read the historical versions.
-	DisableResourceVersioning bool `json:"disableResourceVersioning,omitempty"`
-
-	// EnableUpdateCreate: Whether this FHIR store has the
-	// [updateCreate
-	// capability](https://www.hl7.org/fhir/capabilitystatement
-	// -definitions.html#CapabilityStatement.rest.resource.updateCreate).
-	// Thi
-	// s determines if the client can use an Update operation to create a
-	// new
-	// resource with a client-specified ID. If false, all IDs are
-	// server-assigned
-	// through the Create operation and attempts to Update a non-existent
-	// resource
-	// will return errors. Please treat the audit logs with appropriate
-	// levels of
-	// care if client-specified resource IDs contain sensitive data such
-	// as
-	// patient identifiers, those IDs will be part of the FHIR resource
-	// path
-	// recorded in Cloud audit logs and Cloud Pub/Sub notifications.
-	EnableUpdateCreate bool `json:"enableUpdateCreate,omitempty"`
-
-	// Name: Output only. Resource name of the FHIR store, of the
-	// form
-	// `projects/{project_id}/datasets/{dataset_id}/fhirStores/{fhir_sto
-	// re_id}`.
-	Name string `json:"name,omitempty"`
-
-	// NotificationConfig: If non-empty, publish all resource modifications
-	// of this FHIR store to
-	// this destination. The Cloud Pub/Sub message attributes will contain a
-	// map
-	// with a string describing the action that has triggered the
-	// notification,
-	// e.g. "action":"CreateResource".
-	NotificationConfig *NotificationConfig `json:"notificationConfig,omitempty"`
-
-	// ServerResponse contains the HTTP response code and headers from the
-	// server.
-	googleapi.ServerResponse `json:"-"`
-
-	// ForceSendFields is a list of field names (e.g.
-	// "DisableReferentialIntegrity") to unconditionally include in API
-	// requests. By default, fields with empty values are omitted from API
-	// requests. However, any non-pointer, non-interface field appearing in
-	// ForceSendFields will be sent to the server regardless of whether the
-	// field is empty or not. This may be used to include empty fields in
-	// Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g.
-	// "DisableReferentialIntegrity") to include in API requests with the
-	// JSON null value. By default, fields with empty values are omitted
-	// from API requests. However, any field with an empty value appearing
-	// in NullFields will be sent to the server as null. It is an error if a
-	// field in this list has a non-empty value. This may be used to include
-	// null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *FhirStore) MarshalJSON() ([]byte, error) {
-	type NoMethod FhirStore
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-type Finding struct {
-	// End: Zero-based ending index of the found text, exclusively.
-	End int64 `json:"end,omitempty,string"`
-
-	// InfoType: The type of information stored in this text range (e.g.
-	// HumanName,
-	// BirthDate, Address, etc.)
-	InfoType string `json:"infoType,omitempty"`
-
-	// Start: Zero-based starting index of the found text, inclusively.
-	Start int64 `json:"start,omitempty,string"`
-
-	// ForceSendFields is a list of field names (e.g. "End") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "End") to include in API
-	// requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *Finding) MarshalJSON() ([]byte, error) {
-	type NoMethod Finding
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GcsDataLocation: Google Cloud Storage location.
-type GcsDataLocation struct {
-	// GcsUri: The gcs_uri must be in the format
-	// "gs://bucket/path/to/object".
-	// The gcs_uri may include wildcards in the "path/to/object" part to
-	// to indicate potential matching of multiple objects.
-	// Supported wildcards:
-	//   '*' to match 0 or more non-separator characters
-	//   '**' to match 0 or more characters (including separators). Only
-	//   supported at the end of a path and with no other wildcards.
-	//   '?' to match 1 character.
-	GcsUri string `json:"gcsUri,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "GcsUri") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "GcsUri") to include in API
-	// requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *GcsDataLocation) MarshalJSON() ([]byte, error) {
-	type NoMethod GcsDataLocation
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GcsDestination: The Google Cloud Storage location to which the output
-// should be written.
-type GcsDestination struct {
-	// MimeType: MIME types supported by DICOM spec.
-	// Each file will be written in the following
-	// format:
-	// `.../{study_id}/{series_id}/{instance_id}[/{frame_number}].{ex
-	// tension}`
-	// The frame_number component will exist only for multi-frame
-	// instances.
-	//
-	// Refer to the DICOM conformance statement for permissible MIME
-	// types:
-	// https://cloud.google.com/healthcare/docs/dicom#wado-rs
-	//
-	// The following extensions will be used for output files:
-	//   application/dicom -> .dcm
-	//   image/jpeg -> .jpg
-	//   image/png -> .png
-	//
-	// If unspecified, the instances will be exported in their
-	// original
-	// DICOM format.
-	MimeType string `json:"mimeType,omitempty"`
-
-	// UriPrefix: URI for a Google Cloud Storage directory to which result
-	// files should be
-	// written (e.g., `gs://bucket-id/path/to/destination/dir`). If there is
-	// no
-	// trailing slash, the service will append one when composing the
-	// object
-	// path. The user is responsible for creating the Google Cloud Storage
-	// bucket
-	// referenced in `uri_prefix`.
-	UriPrefix string `json:"uriPrefix,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "MimeType") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "MimeType") to include in
-	// API requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *GcsDestination) MarshalJSON() ([]byte, error) {
-	type NoMethod GcsDestination
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GetIamPolicyRequest: Request message for `GetIamPolicy` method.
-type GetIamPolicyRequest struct {
-}
-
-// GoogleCloudHealthcareV1alphaFhirRestExportResourcesResponse: Final
-// response of exporting resources.
-// This structure will be included in the
-// response to describe the detailed
-// outcome. It will only be included when the operation finishes.
-type GoogleCloudHealthcareV1alphaFhirRestExportResourcesResponse struct {
-	// Name: The FHIR store name of the resources that have been exported,
-	// in the
-	// format
-	// `projects/{project_id}/locations/{location_id}/datasets/{datase
-	// t_id}/fhirStores/{fhir_store_id}`.
-	Name string `json:"name,omitempty"`
-
-	// ResourceCount: The total number of resources exported from the
-	// requested FHIR store.
-	ResourceCount int64 `json:"resourceCount,omitempty,string"`
-
-	// ForceSendFields is a list of field names (e.g. "Name") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Name") to include in API
-	// requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudHealthcareV1alphaFhirRestExportResourcesResponse) MarshalJSON() ([]byte, error) {
-	type NoMethod GoogleCloudHealthcareV1alphaFhirRestExportResourcesResponse
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudHealthcareV1alphaFhirRestImportResourcesResponse: Final
-// response of importing resources.
-// This structure will be included in the
-// response to describe the detailed
-// outcome. It will only be included when the operation finishes.
-type GoogleCloudHealthcareV1alphaFhirRestImportResourcesResponse struct {
-	// ErrorCount: The number of resources that had errors.
-	ErrorCount int64 `json:"errorCount,omitempty,string"`
-
-	// InputSize: The total number of resources included in the source data.
-	// This is the sum
-	// of the success and error counts.
-	InputSize int64 `json:"inputSize,omitempty,string"`
-
-	// Name: The FHIR store name the resources have been imported to, in
-	// the
-	// format
-	// `projects/{project_id}/locations/{location_id}/datasets/{da
-	// taset_id}/fhirStores/{fhir_store_id}`.
-	Name string `json:"name,omitempty"`
-
-	// SuccessCount: The number of resources that have been imported.
-	SuccessCount int64 `json:"successCount,omitempty,string"`
-
-	// ForceSendFields is a list of field names (e.g. "ErrorCount") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "ErrorCount") to include in
-	// API requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudHealthcareV1alphaFhirRestImportResourcesResponse) MarshalJSON() ([]byte, error) {
-	type NoMethod GoogleCloudHealthcareV1alphaFhirRestImportResourcesResponse
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudHealthcareV1alphaGcsSource: The Google Cloud Storage
-// location for the input content.
-type GoogleCloudHealthcareV1alphaGcsSource struct {
-	// ContentUri: Points to a [Google Cloud
-	// Storage](https://cloud.google.com/storage/) URI
-	// containing file(s) with content only.
-	// The URI must be in the following format:
-	// `gs://bucket-id/object-id`.
-	// The URI can include wildcards in `object-id` and thus identify
-	// multiple
-	// files. Supported wildcards:
-	//  '*' to match 0 or more non-separator characters
-	//  '**' to match 0 or more characters (including separators). Must be
-	// used at
-	//       the end of a path and with no other wildcards in the
-	//       path. Can also be used with a file extension (such as .dcm),
-	// which
-	//       imports all files with the extension in the specified directory
-	// and
-	//       its sub-directories. For example,
-	//       `gs://bucket-id/directory-id/**.dcm` imports all files with
-	// .dcm
-	//       extensions in `directory-id/` and its sub-directories.
-	//  '?' to match 1 character
-	// Returns [google.rpc.Code.INVALID_ARGUMENT] for all other URI
-	// formats.
-	// Files matching the wildcard are expected to contain content only,
-	// no
-	// metadata.
-	ContentUri string `json:"contentUri,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "ContentUri") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "ContentUri") to include in
-	// API requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudHealthcareV1alphaGcsSource) MarshalJSON() ([]byte, error) {
-	type NoMethod GoogleCloudHealthcareV1alphaGcsSource
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// Hl7V2Store: Represents an HL7v2 store.
-type Hl7V2Store struct {
-	// Name: Output only. Resource name of the HL7v2 store, of the
-	// form
-	// `projects/{project_id}/datasets/{dataset_id}/hl7V2Stores/{hl7v2_s
-	// tore_id}`.
-	Name string `json:"name,omitempty"`
-
-	// NotificationConfig: The notification destination all messages (both
-	// Ingest & Create) are
-	// published on. Only the message name is sent as part of the
-	// notification. If
-	// this is unset, no notifications will be sent. Supplied by the client.
-	NotificationConfig *NotificationConfig `json:"notificationConfig,omitempty"`
-
-	// ParserConfig: The configuration for the parser. It determines how the
-	// server parses the
-	// messages.
-	ParserConfig *ParserConfig `json:"parserConfig,omitempty"`
-
-	// ServerResponse contains the HTTP response code and headers from the
-	// server.
-	googleapi.ServerResponse `json:"-"`
-
-	// ForceSendFields is a list of field names (e.g. "Name") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Name") to include in API
-	// requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *Hl7V2Store) MarshalJSON() ([]byte, error) {
-	type NoMethod Hl7V2Store
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// HttpBody: Message that represents an arbitrary HTTP body. It should
-// only be used for
-// payload formats that can't be represented as JSON, such as raw binary
-// or
-// an HTML page.
-//
-//
-// This message can be used both in streaming and non-streaming API
-// methods in
-// the request as well as the response.
-//
-// It can be used as a top-level request field, which is convenient if
-// one
-// wants to extract parameters from either the URL or HTTP template into
-// the
-// request fields and also want access to the raw HTTP body.
-//
-// Example:
-//
-//     message GetResourceRequest {
-//       // A unique request id.
-//       string request_id = 1;
-//
-//       // The raw HTTP body is bound to this field.
-//       google.api.HttpBody http_body = 2;
-//     }
-//
-//     service ResourceService {
-//       rpc GetResource(GetResourceRequest) returns
-// (google.api.HttpBody);
-//       rpc UpdateResource(google.api.HttpBody) returns
-// (google.protobuf.Empty);
-//     }
-//
-// Example with streaming methods:
-//
-//     service CaldavService {
-//       rpc GetCalendar(stream google.api.HttpBody)
-//         returns (stream google.api.HttpBody);
-//       rpc UpdateCalendar(stream google.api.HttpBody)
-//         returns (stream google.api.HttpBody);
-//     }
-//
-// Use of this type only changes how the request and response bodies
-// are
-// handled, all other features will continue to work unchanged.
-type HttpBody struct {
-	// ContentType: The HTTP Content-Type header value specifying the
-	// content type of the body.
-	ContentType string `json:"contentType,omitempty"`
-
-	// Data: The HTTP request/response body as raw binary.
-	Data string `json:"data,omitempty"`
-
-	// Extensions: Application specific response metadata. Must be set in
-	// the first response
-	// for streaming APIs.
-	Extensions []googleapi.RawMessage `json:"extensions,omitempty"`
-
-	// ServerResponse contains the HTTP response code and headers from the
-	// server.
-	googleapi.ServerResponse `json:"-"`
-
-	// ForceSendFields is a list of field names (e.g. "ContentType") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "ContentType") to include
-	// in API requests with the JSON null value. By default, fields with
-	// empty values are omitted from API requests. However, any field with
-	// an empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *HttpBody) MarshalJSON() ([]byte, error) {
-	type NoMethod HttpBody
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// ImageAnnotation: Image annotation.
-type ImageAnnotation struct {
-	// BoundingPolys: The list of polygons outlining the sensitive regions
-	// in the image.
-	BoundingPolys []*BoundingPoly `json:"boundingPolys,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "BoundingPolys") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "BoundingPolys") to include
-	// in API requests with the JSON null value. By default, fields with
-	// empty values are omitted from API requests. However, any field with
-	// an empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *ImageAnnotation) MarshalJSON() ([]byte, error) {
-	type NoMethod ImageAnnotation
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// ImageConfig: Specifies how de-identification of image pixel should be
-// handled.
-type ImageConfig struct {
-	// RedactAllText: If true, all text found in the image is redacted.
-	RedactAllText bool `json:"redactAllText,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "RedactAllText") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "RedactAllText") to include
-	// in API requests with the JSON null value. By default, fields with
-	// empty values are omitted from API requests. However, any field with
-	// an empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *ImageConfig) MarshalJSON() ([]byte, error) {
-	type NoMethod ImageConfig
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// ImportDicomDataErrorDetails: Returns the errors encountered during
-// DICOM store import.
-type ImportDicomDataErrorDetails struct {
-	// Errors: Contains errors encountered in imports of individual
-	// resources (e.g.,
-	// a Google Cloud Storage object).
-	Errors []*ImportError `json:"errors,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "Errors") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Errors") to include in API
-	// requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *ImportDicomDataErrorDetails) MarshalJSON() ([]byte, error) {
-	type NoMethod ImportDicomDataErrorDetails
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// ImportDicomDataRequest: Imports data into the specified DICOM
-// store.
-// Returns an error if any of the files to import are not DICOM files.
-// This
-// API will accept duplicate DICOM instances, by simply ignoring the
-// newly
-// pushed instance (it will not overwrite).
-type ImportDicomDataRequest struct {
-	// InputConfig: Specifies where the imported data resides.
-	InputConfig *InputConfig `json:"inputConfig,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "InputConfig") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "InputConfig") to include
-	// in API requests with the JSON null value. By default, fields with
-	// empty values are omitted from API requests. However, any field with
-	// an empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *ImportDicomDataRequest) MarshalJSON() ([]byte, error) {
-	type NoMethod ImportDicomDataRequest
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// ImportError: Contains error status for each import failure.
-type ImportError struct {
-	// Resource: Resource name.
-	Resource string `json:"resource,omitempty"`
-
-	// Status: Error status associated with resource.
-	Status *Status `json:"status,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "Resource") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Resource") to include in
-	// API requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *ImportError) MarshalJSON() ([]byte, error) {
-	type NoMethod ImportError
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// ImportResourcesRequest: Request to import resources.
-// The FHIR resources to be imported must have client supplied IDs. The
-// server
-// will retain the resource IDs. The import operation is idempotent.
-// Retry will
-// overwrite existing data identified by client supplied IDs. The
-// import
-// operation is not transactional. The server will not roll back any
-// committed
-// changes upon partial failures.
-type ImportResourcesRequest struct {
-	// ContentStructure: The content structure in the source location. The
-	// default is
-	// BUNDLE.
-	//
-	// Possible values:
-	//   "CONTENT_STRUCTURE_UNSPECIFIED"
-	//   "BUNDLE" - Each unit is a bundle, which contains one or more
-	// resources.
-	//   "RESOURCE" - Each unit is a single resource.
-	ContentStructure string `json:"contentStructure,omitempty"`
-
-	// GcsErrorLocation: The Cloud Storage bucket/folder path to write files
-	// that contain error
-	// details.
-	GcsErrorLocation *GcsDataLocation `json:"gcsErrorLocation,omitempty"`
-
-	// GcsSourceLocation: Cloud Storage source data locations.
-	// Each Cloud Storage object should be a text file that contains
-	// newline
-	// delimited JSON structures conforming to FHIR standard.
-	GcsSourceLocation *GcsDataLocation `json:"gcsSourceLocation,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "ContentStructure") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "ContentStructure") to
-	// include in API requests with the JSON null value. By default, fields
-	// with empty values are omitted from API requests. However, any field
-	// with an empty value appearing in NullFields will be sent to the
-	// server as null. It is an error if a field in this list has a
-	// non-empty value. This may be used to include null fields in Patch
-	// requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *ImportResourcesRequest) MarshalJSON() ([]byte, error) {
-	type NoMethod ImportResourcesRequest
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// IngestMessageRequest: Ingests a message into the specified HL7v2
-// store.
-type IngestMessageRequest struct {
-	// Message: HL7v2 message to ingest.
-	Message *Message `json:"message,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "Message") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Message") to include in
-	// API requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *IngestMessageRequest) MarshalJSON() ([]byte, error) {
-	type NoMethod IngestMessageRequest
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// IngestMessageResponse: Acknowledges that a message has been ingested
-// into the specified
-// HL7v2 store.
-type IngestMessageResponse struct {
-	// Hl7Ack: HL7v2 ACK message.
-	Hl7Ack string `json:"hl7Ack,omitempty"`
-
-	// Message: Created message resource.
-	Message *Message `json:"message,omitempty"`
-
-	// ServerResponse contains the HTTP response code and headers from the
-	// server.
-	googleapi.ServerResponse `json:"-"`
-
-	// ForceSendFields is a list of field names (e.g. "Hl7Ack") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Hl7Ack") to include in API
-	// requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *IngestMessageResponse) MarshalJSON() ([]byte, error) {
-	type NoMethod IngestMessageResponse
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// InputConfig: Specifies the location(s) from which data should be
-// imported.
-type InputConfig struct {
-	// GcsSource: Files on Google Cloud Storage.
-	// To enable the Cloud Healthcare API to read from resources in
-	// your
-	// project (e.g. Google Cloud Storage buckets), you must give the
-	// consumer
-	// Cloud Healthcare API service account the proper permissions. The
-	// service
-	// account
-	// is:
-	// `service-{PROJECT_NUMBER}@gcp-sa-healthcare.iam.gserviceaccount.co
-	// m`.
-	// The PROJECT_NUMBER identifies the project that contains the source
-	// Google
-	// Cloud Storage bucket. To get the project number, go to the GCP
-	// Console
-	// Dashboard.
-	//
-	// GcsSource requires the `roles/storage.objectViewer` Cloud IAM role.
-	GcsSource *GoogleCloudHealthcareV1alphaGcsSource `json:"gcsSource,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "GcsSource") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "GcsSource") to include in
-	// API requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *InputConfig) MarshalJSON() ([]byte, error) {
-	type NoMethod InputConfig
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// ListAnnotationStoresResponse: Lists the Annotation stores
-// in the given dataset.
-type ListAnnotationStoresResponse struct {
-	// AnnotationStores: The returned Annotation stores. Won't be more
-	// Annotation stores than the
-	// value of page_size in the request.
-	AnnotationStores []*AnnotationStore `json:"annotationStores,omitempty"`
-
-	// NextPageToken: Token to retrieve the next page of results or empty if
-	// there are no more
-	// results in the list.
-	NextPageToken string `json:"nextPageToken,omitempty"`
-
-	// ServerResponse contains the HTTP response code and headers from the
-	// server.
-	googleapi.ServerResponse `json:"-"`
-
-	// ForceSendFields is a list of field names (e.g. "AnnotationStores") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "AnnotationStores") to
-	// include in API requests with the JSON null value. By default, fields
-	// with empty values are omitted from API requests. However, any field
-	// with an empty value appearing in NullFields will be sent to the
-	// server as null. It is an error if a field in this list has a
-	// non-empty value. This may be used to include null fields in Patch
-	// requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *ListAnnotationStoresResponse) MarshalJSON() ([]byte, error) {
-	type NoMethod ListAnnotationStoresResponse
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// ListAnnotationsResponse: Lists the Annotations in the
-// specified Annotation store.
-type ListAnnotationsResponse struct {
-	// Annotations: The returned Annotations names. Won't be more values
-	// than the value of
-	// page_size in the request.
-	Annotations []string `json:"annotations,omitempty"`
-
-	// NextPageToken: Token to retrieve the next page of results or empty if
-	// there are no more
-	// results in the list.
-	NextPageToken string `json:"nextPageToken,omitempty"`
-
-	// ServerResponse contains the HTTP response code and headers from the
-	// server.
-	googleapi.ServerResponse `json:"-"`
-
-	// ForceSendFields is a list of field names (e.g. "Annotations") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Annotations") to include
-	// in API requests with the JSON null value. By default, fields with
-	// empty values are omitted from API requests. However, any field with
-	// an empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *ListAnnotationsResponse) MarshalJSON() ([]byte, error) {
-	type NoMethod ListAnnotationsResponse
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// ListDatasetsResponse: Lists the available datasets.
-type ListDatasetsResponse struct {
-	// Datasets: The first page of datasets.
-	Datasets []*Dataset `json:"datasets,omitempty"`
-
-	// NextPageToken: Token to retrieve the next page of results, or empty
-	// if there are no
-	// more results in the list.
-	NextPageToken string `json:"nextPageToken,omitempty"`
-
-	// ServerResponse contains the HTTP response code and headers from the
-	// server.
-	googleapi.ServerResponse `json:"-"`
-
-	// ForceSendFields is a list of field names (e.g. "Datasets") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Datasets") to include in
-	// API requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *ListDatasetsResponse) MarshalJSON() ([]byte, error) {
-	type NoMethod ListDatasetsResponse
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// ListDicomStoresResponse: Lists the DICOM stores in the given dataset.
-type ListDicomStoresResponse struct {
-	// DicomStores: The returned DICOM stores. Won't be more DICOM stores
-	// than the value of
-	// page_size in the request.
-	DicomStores []*DicomStore `json:"dicomStores,omitempty"`
-
-	// NextPageToken: Token to retrieve the next page of results or empty if
-	// there are no more
-	// results in the list.
-	NextPageToken string `json:"nextPageToken,omitempty"`
-
-	// ServerResponse contains the HTTP response code and headers from the
-	// server.
-	googleapi.ServerResponse `json:"-"`
-
-	// ForceSendFields is a list of field names (e.g. "DicomStores") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "DicomStores") to include
-	// in API requests with the JSON null value. By default, fields with
-	// empty values are omitted from API requests. However, any field with
-	// an empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *ListDicomStoresResponse) MarshalJSON() ([]byte, error) {
-	type NoMethod ListDicomStoresResponse
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// ListFhirStoresResponse: Lists the FHIR stores in the given dataset.
-type ListFhirStoresResponse struct {
-	// FhirStores: The returned FHIR stores. Won't be more FHIR stores than
-	// the value of
-	// page_size in the request.
-	FhirStores []*FhirStore `json:"fhirStores,omitempty"`
-
-	// NextPageToken: Token to retrieve the next page of results or empty if
-	// there are no more
-	// results in the list.
-	NextPageToken string `json:"nextPageToken,omitempty"`
-
-	// ServerResponse contains the HTTP response code and headers from the
-	// server.
-	googleapi.ServerResponse `json:"-"`
-
-	// ForceSendFields is a list of field names (e.g. "FhirStores") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "FhirStores") to include in
-	// API requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *ListFhirStoresResponse) MarshalJSON() ([]byte, error) {
-	type NoMethod ListFhirStoresResponse
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// ListHl7V2StoresResponse: Lists the HL7v2 stores in the given dataset.
-type ListHl7V2StoresResponse struct {
-	// Hl7V2Stores: The returned HL7v2 stores. Won't be more HL7v2 stores
-	// than the value of
-	// page_size in the request.
-	Hl7V2Stores []*Hl7V2Store `json:"hl7V2Stores,omitempty"`
-
-	// NextPageToken: Token to retrieve the next page of results or empty if
-	// there are no more
-	// results in the list.
-	NextPageToken string `json:"nextPageToken,omitempty"`
-
-	// ServerResponse contains the HTTP response code and headers from the
-	// server.
-	googleapi.ServerResponse `json:"-"`
-
-	// ForceSendFields is a list of field names (e.g. "Hl7V2Stores") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Hl7V2Stores") to include
-	// in API requests with the JSON null value. By default, fields with
-	// empty values are omitted from API requests. However, any field with
-	// an empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *ListHl7V2StoresResponse) MarshalJSON() ([]byte, error) {
-	type NoMethod ListHl7V2StoresResponse
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
 // ListLocationsResponse: The response message for
 // Locations.ListLocations.
 type ListLocationsResponse struct {
@@ -2320,46 +516,6 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
-// ListMessagesResponse: Lists the messages in the specified HL7v2
-// store.
-type ListMessagesResponse struct {
-	// Messages: The returned message names. Won't be more values than the
-	// value of
-	// page_size in the request.
-	Messages []string `json:"messages,omitempty"`
-
-	// NextPageToken: Token to retrieve the next page of results or empty if
-	// there are no more
-	// results in the list.
-	NextPageToken string `json:"nextPageToken,omitempty"`
-
-	// ServerResponse contains the HTTP response code and headers from the
-	// server.
-	googleapi.ServerResponse `json:"-"`
-
-	// ForceSendFields is a list of field names (e.g. "Messages") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Messages") to include in
-	// API requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *ListMessagesResponse) MarshalJSON() ([]byte, error) {
-	type NoMethod ListMessagesResponse
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
 // ListOperationsResponse: The response message for
 // Operations.ListOperations.
 type ListOperationsResponse struct {
@@ -2450,139 +606,6 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
-// Message: A complete HL7v2 message.
-// See http://www.hl7.org/implement/standards/index.cfm?ref=common for
-// details
-// on the standard.
-type Message struct {
-	// CreateTime: The datetime when the message was created. Set by the
-	// server.
-	CreateTime string `json:"createTime,omitempty"`
-
-	// Data: Raw message bytes.
-	Data string `json:"data,omitempty"`
-
-	// Labels: User-supplied key-value pairs used to organize HL7v2
-	// stores.
-	//
-	// Label keys must be between 1 and 63 characters long, have a UTF-8
-	// encoding
-	// of maximum 128 bytes, and must conform to the
-	// following PCRE regular expression:
-	// \p{Ll}\p{Lo}{0,62}
-	//
-	// Label values are optional, must be between 1 and 63 characters long,
-	// have
-	// a UTF-8 encoding of maximum 128 bytes, and must conform to
-	// the
-	// following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
-	//
-	// No more than 64 labels can be associated with a given store.
-	Labels map[string]string `json:"labels,omitempty"`
-
-	// MessageType: The message type and trigger event for this message.
-	// MSH-9.
-	MessageType string `json:"messageType,omitempty"`
-
-	// Name: Resource name of the Message, of the
-	// form
-	// `projects/{project_id}/datasets/{dataset_id}/hl7V2Stores/{hl7_v2_
-	// store_id}/messages/{message_id}`.
-	// Assigned by the server.
-	Name string `json:"name,omitempty"`
-
-	// ParsedData: The parsed version of the raw message data.
-	ParsedData *ParsedData `json:"parsedData,omitempty"`
-
-	// PatientIds: All patient IDs listed in the PID-2, PID-3, and PID-4
-	// segments of this
-	// message.
-	PatientIds []*PatientId `json:"patientIds,omitempty"`
-
-	// SendFacility: The hospital that this message came from. MSH-4.
-	SendFacility string `json:"sendFacility,omitempty"`
-
-	// SendTime: The datetime the sending application sent this message.
-	// MSH-7.
-	SendTime string `json:"sendTime,omitempty"`
-
-	// ServerResponse contains the HTTP response code and headers from the
-	// server.
-	googleapi.ServerResponse `json:"-"`
-
-	// ForceSendFields is a list of field names (e.g. "CreateTime") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "CreateTime") to include in
-	// API requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *Message) MarshalJSON() ([]byte, error) {
-	type NoMethod Message
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// NotificationConfig: Specifies where notifications should be sent upon
-// changes to a data store.
-type NotificationConfig struct {
-	// PubsubTopic: The [Cloud
-	// Pub/Sub](https://cloud.google.com/pubsub/docs/) topic
-	// that
-	// notifications of changes are published on. Supplied by the
-	// client.
-	// PubsubMessage.Data will contain the resource
-	// name.
-	// PubsubMessage.MessageId is the ID of this message. It is guaranteed
-	// to be
-	// unique within the topic.
-	// PubsubMessage.PublishTime is the time at which the message was
-	// published.
-	// Notifications are only sent if the topic is
-	// non-empty.
-	// [Topic
-	// names](https://cloud.google.com/pubsub/docs/overview#names) must be
-	// scoped
-	// to a project. cloud-healthcare@system.gserviceaccount.com must
-	// have
-	// publisher permissions on the given Cloud Pub/Sub topic. Not having
-	// adequate
-	// permissions will cause the calls that send notifications to fail.
-	PubsubTopic string `json:"pubsubTopic,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "PubsubTopic") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "PubsubTopic") to include
-	// in API requests with the JSON null value. By default, fields with
-	// empty values are omitted from API requests. However, any field with
-	// an empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *NotificationConfig) MarshalJSON() ([]byte, error) {
-	type NoMethod NotificationConfig
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
 // Operation: This resource represents a long-running operation that is
 // the result of a
 // network API call.
@@ -2658,179 +681,6 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
-// OperationMetadata: OperationMetadata provides information about the
-// operation execution.
-// Returned in the long-running operation's metadata field.
-type OperationMetadata struct {
-	// ApiMethodName: The name of the API method that initiated the
-	// operation.
-	ApiMethodName string `json:"apiMethodName,omitempty"`
-
-	Counter *ProgressCounter `json:"counter,omitempty"`
-
-	// CreateTime: The time at which the operation was created by the API.
-	CreateTime string `json:"createTime,omitempty"`
-
-	// EndTime: The time at which execution was completed.
-	EndTime string `json:"endTime,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "ApiMethodName") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "ApiMethodName") to include
-	// in API requests with the JSON null value. By default, fields with
-	// empty values are omitted from API requests. However, any field with
-	// an empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *OperationMetadata) MarshalJSON() ([]byte, error) {
-	type NoMethod OperationMetadata
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// OutputConfig: Specifies the location(s) to which data should be
-// exported.
-type OutputConfig struct {
-	// BigQueryDestination: BigQueryDestination requires two IAM roles:
-	// `roles/bigquery.dataEditor`
-	// and `roles/bigquery.jobUser`.
-	BigQueryDestination *BigQueryDestination `json:"bigQueryDestination,omitempty"`
-
-	// GcsDestination: GcsDestination requires `roles/storage.objectAdmin`
-	// Cloud IAM role.
-	// Note that writing a file to the same destination multiple times
-	// will
-	// result in the previous version of the file being overwritten.
-	GcsDestination *GcsDestination `json:"gcsDestination,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "BigQueryDestination")
-	// to unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "BigQueryDestination") to
-	// include in API requests with the JSON null value. By default, fields
-	// with empty values are omitted from API requests. However, any field
-	// with an empty value appearing in NullFields will be sent to the
-	// server as null. It is an error if a field in this list has a
-	// non-empty value. This may be used to include null fields in Patch
-	// requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *OutputConfig) MarshalJSON() ([]byte, error) {
-	type NoMethod OutputConfig
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// ParsedData: The content of a HL7v2 message in a structured format.
-type ParsedData struct {
-	Segments []*Segment `json:"segments,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "Segments") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Segments") to include in
-	// API requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *ParsedData) MarshalJSON() ([]byte, error) {
-	type NoMethod ParsedData
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// ParserConfig: The configuration for the parser. It determines how the
-// server parses the
-// messages.
-type ParserConfig struct {
-	// AllowNullHeader: Determines whether messages with no header are
-	// allowed.
-	AllowNullHeader bool `json:"allowNullHeader,omitempty"`
-
-	// SegmentTerminator: Byte(s) to be used as the segment terminator. If
-	// this is unset, '\r' will
-	// be used as segment terminator.
-	SegmentTerminator string `json:"segmentTerminator,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "AllowNullHeader") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "AllowNullHeader") to
-	// include in API requests with the JSON null value. By default, fields
-	// with empty values are omitted from API requests. However, any field
-	// with an empty value appearing in NullFields will be sent to the
-	// server as null. It is an error if a field in this list has a
-	// non-empty value. This may be used to include null fields in Patch
-	// requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *ParserConfig) MarshalJSON() ([]byte, error) {
-	type NoMethod ParserConfig
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// PatientId: A patient identifier and associated type.
-type PatientId struct {
-	// Type: ID type, e.g. MRN or NHS.
-	Type string `json:"type,omitempty"`
-
-	// Value: The patient's unique identifier.
-	Value string `json:"value,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "Type") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Type") to include in API
-	// requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *PatientId) MarshalJSON() ([]byte, error) {
-	type NoMethod PatientId
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
 // Policy: Defines an Identity and Access Management (IAM) policy. It is
 // used to
 // specify access control policies for Cloud Platform resources.
@@ -2940,242 +790,6 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
-// ProgressCounter: ProgressCounter provides counters to describe an
-// operation's progress.
-type ProgressCounter struct {
-	// Failure: The number of units that failed in the operation.
-	Failure int64 `json:"failure,omitempty,string"`
-
-	// Pending: The number of units that are pending in the operation.
-	Pending int64 `json:"pending,omitempty,string"`
-
-	// Success: The number of units that succeeded in the operation.
-	Success int64 `json:"success,omitempty,string"`
-
-	// ForceSendFields is a list of field names (e.g. "Failure") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Failure") to include in
-	// API requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *ProgressCounter) MarshalJSON() ([]byte, error) {
-	type NoMethod ProgressCounter
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// ResourceAnnotation: Resource level annotation.
-type ResourceAnnotation struct {
-	Label string `json:"label,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "Label") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Label") to include in API
-	// requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *ResourceAnnotation) MarshalJSON() ([]byte, error) {
-	type NoMethod ResourceAnnotation
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// SchemaConfig: Configuration for the FHIR BigQuery schema. Determines
-// how the server
-// generates the schema.
-type SchemaConfig struct {
-	// RecursiveStructureDepth: The depth for all recursive structures in
-	// the output analytics
-	// schema. For example, concept in the CodeSystem resource is a
-	// recursive
-	// structure; when the depth is 2, the CodeSystem table will have a
-	// column
-	// called `concept.concept` but not `concept.concept.concept`. If
-	// not
-	// specified or set to 0, the server will use the default value 2.
-	RecursiveStructureDepth int64 `json:"recursiveStructureDepth,omitempty,string"`
-
-	// SchemaType: Specifies the output schema type. If unspecified, the
-	// default is
-	// `LOSSLESS`.
-	//
-	// Possible values:
-	//   "SCHEMA_TYPE_UNSPECIFIED" - No schema type specified. Same as
-	// `LOSSLESS`.
-	//   "LOSSLESS" - Schema generated from original FHIR data.
-	//   "ANALYTICS" - Analytics schema defined by the FHIR community.
-	// See https://github.com/FHIR/sql-on-fhir.
-	SchemaType string `json:"schemaType,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g.
-	// "RecursiveStructureDepth") to unconditionally include in API
-	// requests. By default, fields with empty values are omitted from API
-	// requests. However, any non-pointer, non-interface field appearing in
-	// ForceSendFields will be sent to the server regardless of whether the
-	// field is empty or not. This may be used to include empty fields in
-	// Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "RecursiveStructureDepth")
-	// to include in API requests with the JSON null value. By default,
-	// fields with empty values are omitted from API requests. However, any
-	// field with an empty value appearing in NullFields will be sent to the
-	// server as null. It is an error if a field in this list has a
-	// non-empty value. This may be used to include null fields in Patch
-	// requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *SchemaConfig) MarshalJSON() ([]byte, error) {
-	type NoMethod SchemaConfig
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// SearchResourcesRequest: Request to search the resources in the
-// specified FHIR store.
-type SearchResourcesRequest struct {
-	// ResourceType: The type of the resource to search.
-	ResourceType string `json:"resourceType,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "ResourceType") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "ResourceType") to include
-	// in API requests with the JSON null value. By default, fields with
-	// empty values are omitted from API requests. However, any field with
-	// an empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *SearchResourcesRequest) MarshalJSON() ([]byte, error) {
-	type NoMethod SearchResourcesRequest
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// Segment: A segment in a structured format.
-type Segment struct {
-	// Fields: A mapping from the positional location to the value.
-	// The key string uses indexes separated by dots to identify
-	// Fields,
-	// components and sub-components. To be consistent with how the
-	// standard
-	// refers to different parts of message, we use zero-based indexes for
-	// fields
-	// and one-based indexes for components and sub-components. A bracket
-	// notation
-	// is also used to identify different instances of a repeated
-	// field.
-	// Zero-based indexes are used to refer to each instance.
-	// Regex for key: (\d+)(\[\d+\])?(.\d+)?(.\d+)?
-	//
-	// Examples of (key, value) pairs:
-	//
-	// (0.1, "foo") denotes First component of Field 0 has the value
-	// "foo".
-	//
-	// (1.1.2, "bar") denotes Second sub-component of the first component
-	// of
-	// Field 1 has the value "bar".
-	//
-	// (1[0].1, "baz") denotes First component of the
-	// first Instance of Field 1, which is repeated, has the value "baz".
-	Fields map[string]string `json:"fields,omitempty"`
-
-	// SegmentId: A string that indicates the type of segment, e.g., EVN,
-	// PID.
-	SegmentId string `json:"segmentId,omitempty"`
-
-	// SetId: Set ID for segments that can be in a set. This can be empty if
-	// it is
-	// missing or it is not applicable.
-	SetId string `json:"setId,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "Fields") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Fields") to include in API
-	// requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *Segment) MarshalJSON() ([]byte, error) {
-	type NoMethod Segment
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// SensitiveTextAnnotation: A TextAnnotation specifies a text range that
-// includes sensitive information.
-type SensitiveTextAnnotation struct {
-	// Details: Maps from a resource slice (e.g. FHIR resource field path)
-	// to a set of
-	// sensitive text findings. For example,
-	// Appointment.Narrative text1 --> {findings_1, findings_2, findings_3}
-	Details map[string]Detail `json:"details,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "Details") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "Details") to include in
-	// API requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *SensitiveTextAnnotation) MarshalJSON() ([]byte, error) {
-	type NoMethod SensitiveTextAnnotation
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
 // SetIamPolicyRequest: Request message for `SetIamPolicy` method.
 type SetIamPolicyRequest struct {
 	// Policy: REQUIRED: The complete policy to be applied to the
@@ -3407,53 +1021,6 @@
 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 }
 
-// Vertex: A 2D coordinate in an image. The origin is the top-left.
-type Vertex struct {
-	// X: X coordinate.
-	X float64 `json:"x,omitempty"`
-
-	// Y: Y coordinate.
-	Y float64 `json:"y,omitempty"`
-
-	// ForceSendFields is a list of field names (e.g. "X") to
-	// unconditionally include in API requests. By default, fields with
-	// empty values are omitted from API requests. However, any non-pointer,
-	// non-interface field appearing in ForceSendFields will be sent to the
-	// server regardless of whether the field is empty or not. This may be
-	// used to include empty fields in Patch requests.
-	ForceSendFields []string `json:"-"`
-
-	// NullFields is a list of field names (e.g. "X") to include in API
-	// requests with the JSON null value. By default, fields with empty
-	// values are omitted from API requests. However, any field with an
-	// empty value appearing in NullFields will be sent to the server as
-	// null. It is an error if a field in this list has a non-empty value.
-	// This may be used to include null fields in Patch requests.
-	NullFields []string `json:"-"`
-}
-
-func (s *Vertex) MarshalJSON() ([]byte, error) {
-	type NoMethod Vertex
-	raw := NoMethod(*s)
-	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-func (s *Vertex) UnmarshalJSON(data []byte) error {
-	type NoMethod Vertex
-	var s1 struct {
-		X gensupport.JSONFloat64 `json:"x"`
-		Y gensupport.JSONFloat64 `json:"y"`
-		*NoMethod
-	}
-	s1.NoMethod = (*NoMethod)(s)
-	if err := json.Unmarshal(data, &s1); err != nil {
-		return err
-	}
-	s.X = float64(s1.X)
-	s.Y = float64(s1.Y)
-	return nil
-}
-
 // method id "healthcare.projects.locations.get":
 
 type ProjectsLocationsGetCall struct {
@@ -3799,583 +1366,6 @@
 	}
 }
 
-// method id "healthcare.projects.locations.datasets.create":
-
-type ProjectsLocationsDatasetsCreateCall struct {
-	s          *Service
-	parent     string
-	dataset    *Dataset
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Create: Creates a new health dataset.
-func (r *ProjectsLocationsDatasetsService) Create(parent string, dataset *Dataset) *ProjectsLocationsDatasetsCreateCall {
-	c := &ProjectsLocationsDatasetsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	c.dataset = dataset
-	return c
-}
-
-// DatasetId sets the optional parameter "datasetId": The ID of the
-// dataset that is being created.
-// The string must match the following regex:
-// `[\p{L}\p{N}_\-\.]{1,256}`.
-func (c *ProjectsLocationsDatasetsCreateCall) DatasetId(datasetId string) *ProjectsLocationsDatasetsCreateCall {
-	c.urlParams_.Set("datasetId", datasetId)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsCreateCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsCreateCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsCreateCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsCreateCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.dataset)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/datasets")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.create" call.
-// Exactly one of *Dataset or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Dataset.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsCreateCall) Do(opts ...googleapi.CallOption) (*Dataset, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Dataset{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Creates a new health dataset.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.create",
-	//   "parameterOrder": [
-	//     "parent"
-	//   ],
-	//   "parameters": {
-	//     "datasetId": {
-	//       "description": "The ID of the dataset that is being created.\nThe string must match the following regex: `[\\p{L}\\p{N}_\\-\\.]{1,256}`.",
-	//       "location": "query",
-	//       "type": "string"
-	//     },
-	//     "parent": {
-	//       "description": "The name of the project in which the dataset should be created (e.g.,\n`projects/{project_id}/locations/{location_id}`).",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/datasets",
-	//   "request": {
-	//     "$ref": "Dataset"
-	//   },
-	//   "response": {
-	//     "$ref": "Dataset"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.deidentify":
-
-type ProjectsLocationsDatasetsDeidentifyCall struct {
-	s                        *Service
-	sourceDataset            string
-	deidentifydatasetrequest *DeidentifyDatasetRequest
-	urlParams_               gensupport.URLParams
-	ctx_                     context.Context
-	header_                  http.Header
-}
-
-// Deidentify: Creates a new dataset containing de-identified data from
-// the source
-// dataset. The metadata field type
-// is OperationMetadata.
-// If the request is successful, the
-// response field type is
-// DeidentifySummary.
-// If errors occur,
-// details field type is
-// DeidentifyErrorDetails.
-func (r *ProjectsLocationsDatasetsService) Deidentify(sourceDataset string, deidentifydatasetrequest *DeidentifyDatasetRequest) *ProjectsLocationsDatasetsDeidentifyCall {
-	c := &ProjectsLocationsDatasetsDeidentifyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.sourceDataset = sourceDataset
-	c.deidentifydatasetrequest = deidentifydatasetrequest
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsDeidentifyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDeidentifyCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsDeidentifyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDeidentifyCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsDeidentifyCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsDeidentifyCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.deidentifydatasetrequest)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+sourceDataset}:deidentify")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"sourceDataset": c.sourceDataset,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.deidentify" call.
-// Exactly one of *Operation or error will be non-nil. Any non-2xx
-// status code is an error. Response headers are in either
-// *Operation.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsDeidentifyCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Operation{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Creates a new dataset containing de-identified data from the source\ndataset. The metadata field type\nis OperationMetadata.\nIf the request is successful, the\nresponse field type is\nDeidentifySummary.\nIf errors occur,\ndetails field type is\nDeidentifyErrorDetails.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}:deidentify",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.deidentify",
-	//   "parameterOrder": [
-	//     "sourceDataset"
-	//   ],
-	//   "parameters": {
-	//     "sourceDataset": {
-	//       "description": "Source dataset resource name. (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`).",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+sourceDataset}:deidentify",
-	//   "request": {
-	//     "$ref": "DeidentifyDatasetRequest"
-	//   },
-	//   "response": {
-	//     "$ref": "Operation"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.delete":
-
-type ProjectsLocationsDatasetsDeleteCall struct {
-	s          *Service
-	name       string
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Delete: Deletes the specified health dataset and all data contained
-// in the dataset.
-// Deleting a dataset does not affect the sources from which the dataset
-// was
-// imported (if any).
-func (r *ProjectsLocationsDatasetsService) Delete(name string) *ProjectsLocationsDatasetsDeleteCall {
-	c := &ProjectsLocationsDatasetsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDeleteCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDeleteCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsDeleteCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsDeleteCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("DELETE", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.delete" call.
-// Exactly one of *Empty or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Empty.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Empty{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Deletes the specified health dataset and all data contained in the dataset.\nDeleting a dataset does not affect the sources from which the dataset was\nimported (if any).",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}",
-	//   "httpMethod": "DELETE",
-	//   "id": "healthcare.projects.locations.datasets.delete",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The name of the dataset to delete (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`).",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "response": {
-	//     "$ref": "Empty"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.get":
-
-type ProjectsLocationsDatasetsGetCall struct {
-	s            *Service
-	name         string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// Get: Gets any metadata associated with a dataset.
-func (r *ProjectsLocationsDatasetsService) Get(name string) *ProjectsLocationsDatasetsGetCall {
-	c := &ProjectsLocationsDatasetsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsGetCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsGetCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsGetCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsGetCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsGetCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.get" call.
-// Exactly one of *Dataset or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Dataset.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsGetCall) Do(opts ...googleapi.CallOption) (*Dataset, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Dataset{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Gets any metadata associated with a dataset.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.get",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The name of the dataset to read (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`).",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "response": {
-	//     "$ref": "Dataset"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
 // method id "healthcare.projects.locations.datasets.getIamPolicy":
 
 type ProjectsLocationsDatasetsGetIamPolicyCall struct {
@@ -4522,352 +1512,6 @@
 
 }
 
-// method id "healthcare.projects.locations.datasets.list":
-
-type ProjectsLocationsDatasetsListCall struct {
-	s            *Service
-	parent       string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// List: Lists the health datasets in the current project.
-func (r *ProjectsLocationsDatasetsService) List(parent string) *ProjectsLocationsDatasetsListCall {
-	c := &ProjectsLocationsDatasetsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	return c
-}
-
-// PageSize sets the optional parameter "pageSize": The maximum number
-// of items to return. Capped to 100 if not specified.
-// May not be larger than 1000.
-func (c *ProjectsLocationsDatasetsListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsListCall {
-	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
-	return c
-}
-
-// PageToken sets the optional parameter "pageToken": The
-// next_page_token value returned from a previous List request, if any.
-func (c *ProjectsLocationsDatasetsListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsListCall {
-	c.urlParams_.Set("pageToken", pageToken)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsListCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsListCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsListCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsListCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsListCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/datasets")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.list" call.
-// Exactly one of *ListDatasetsResponse or error will be non-nil. Any
-// non-2xx status code is an error. Response headers are in either
-// *ListDatasetsResponse.ServerResponse.Header or (if a response was
-// returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsListCall) Do(opts ...googleapi.CallOption) (*ListDatasetsResponse, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &ListDatasetsResponse{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Lists the health datasets in the current project.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.list",
-	//   "parameterOrder": [
-	//     "parent"
-	//   ],
-	//   "parameters": {
-	//     "pageSize": {
-	//       "description": "The maximum number of items to return. Capped to 100 if not specified.\nMay not be larger than 1000.",
-	//       "format": "int32",
-	//       "location": "query",
-	//       "type": "integer"
-	//     },
-	//     "pageToken": {
-	//       "description": "The next_page_token value returned from a previous List request, if any.",
-	//       "location": "query",
-	//       "type": "string"
-	//     },
-	//     "parent": {
-	//       "description": "The name of the project whose datasets should be listed (e.g.,\n`projects/{project_id}/locations/{location_id}`).",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/datasets",
-	//   "response": {
-	//     "$ref": "ListDatasetsResponse"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// Pages invokes f for each page of results.
-// A non-nil error returned from f will halt the iteration.
-// The provided context supersedes any context provided to the Context method.
-func (c *ProjectsLocationsDatasetsListCall) Pages(ctx context.Context, f func(*ListDatasetsResponse) error) error {
-	c.ctx_ = ctx
-	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
-	for {
-		x, err := c.Do()
-		if err != nil {
-			return err
-		}
-		if err := f(x); err != nil {
-			return err
-		}
-		if x.NextPageToken == "" {
-			return nil
-		}
-		c.PageToken(x.NextPageToken)
-	}
-}
-
-// method id "healthcare.projects.locations.datasets.patch":
-
-type ProjectsLocationsDatasetsPatchCall struct {
-	s          *Service
-	name       string
-	dataset    *Dataset
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Patch: Updates dataset metadata.
-func (r *ProjectsLocationsDatasetsService) Patch(name string, dataset *Dataset) *ProjectsLocationsDatasetsPatchCall {
-	c := &ProjectsLocationsDatasetsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	c.dataset = dataset
-	return c
-}
-
-// UpdateMask sets the optional parameter "updateMask": The update mask
-// applies to the resource. For the `FieldMask`
-// definition,
-// see
-// https://developers.google.com/protocol-buffers/docs/re
-// ference/google.protobuf#fieldmask
-func (c *ProjectsLocationsDatasetsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsPatchCall {
-	c.urlParams_.Set("updateMask", updateMask)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsPatchCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsPatchCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsPatchCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsPatchCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.dataset)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("PATCH", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.patch" call.
-// Exactly one of *Dataset or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Dataset.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsPatchCall) Do(opts ...googleapi.CallOption) (*Dataset, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Dataset{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Updates dataset metadata.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}",
-	//   "httpMethod": "PATCH",
-	//   "id": "healthcare.projects.locations.datasets.patch",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "Output only. Resource name of the dataset, of the form\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     },
-	//     "updateMask": {
-	//       "description": "The update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask",
-	//       "format": "google-fieldmask",
-	//       "location": "query",
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "request": {
-	//     "$ref": "Dataset"
-	//   },
-	//   "response": {
-	//     "$ref": "Dataset"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
 // method id "healthcare.projects.locations.datasets.setIamPolicy":
 
 type ProjectsLocationsDatasetsSetIamPolicyCall struct {
@@ -5158,2590 +1802,6 @@
 
 }
 
-// method id "healthcare.projects.locations.datasets.annotationStores.create":
-
-type ProjectsLocationsDatasetsAnnotationStoresCreateCall struct {
-	s               *Service
-	parent          string
-	annotationstore *AnnotationStore
-	urlParams_      gensupport.URLParams
-	ctx_            context.Context
-	header_         http.Header
-}
-
-// Create: Creates a new Annotation store within the parent dataset.
-func (r *ProjectsLocationsDatasetsAnnotationStoresService) Create(parent string, annotationstore *AnnotationStore) *ProjectsLocationsDatasetsAnnotationStoresCreateCall {
-	c := &ProjectsLocationsDatasetsAnnotationStoresCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	c.annotationstore = annotationstore
-	return c
-}
-
-// AnnotationStoreId sets the optional parameter "annotationStoreId":
-// The ID of the Annotation store that is being created.
-// The string must match the following regex:
-// `[\p{L}\p{N}_\-\.]{1,256}`.
-func (c *ProjectsLocationsDatasetsAnnotationStoresCreateCall) AnnotationStoreId(annotationStoreId string) *ProjectsLocationsDatasetsAnnotationStoresCreateCall {
-	c.urlParams_.Set("annotationStoreId", annotationStoreId)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsAnnotationStoresCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsAnnotationStoresCreateCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsAnnotationStoresCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsAnnotationStoresCreateCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsAnnotationStoresCreateCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsAnnotationStoresCreateCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.annotationstore)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/annotationStores")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.annotationStores.create" call.
-// Exactly one of *AnnotationStore or error will be non-nil. Any non-2xx
-// status code is an error. Response headers are in either
-// *AnnotationStore.ServerResponse.Header or (if a response was returned
-// at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsAnnotationStoresCreateCall) Do(opts ...googleapi.CallOption) (*AnnotationStore, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &AnnotationStore{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Creates a new Annotation store within the parent dataset.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.annotationStores.create",
-	//   "parameterOrder": [
-	//     "parent"
-	//   ],
-	//   "parameters": {
-	//     "annotationStoreId": {
-	//       "description": "The ID of the Annotation store that is being created.\nThe string must match the following regex: `[\\p{L}\\p{N}_\\-\\.]{1,256}`.",
-	//       "location": "query",
-	//       "type": "string"
-	//     },
-	//     "parent": {
-	//       "description": "The name of the dataset this Annotation store belongs to.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/annotationStores",
-	//   "request": {
-	//     "$ref": "AnnotationStore"
-	//   },
-	//   "response": {
-	//     "$ref": "AnnotationStore"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.annotationStores.delete":
-
-type ProjectsLocationsDatasetsAnnotationStoresDeleteCall struct {
-	s          *Service
-	name       string
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Delete: Deletes the specified Annotation store and removes all
-// annotations that are
-// contained within it.
-func (r *ProjectsLocationsDatasetsAnnotationStoresService) Delete(name string) *ProjectsLocationsDatasetsAnnotationStoresDeleteCall {
-	c := &ProjectsLocationsDatasetsAnnotationStoresDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsAnnotationStoresDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsAnnotationStoresDeleteCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsAnnotationStoresDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsAnnotationStoresDeleteCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsAnnotationStoresDeleteCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsAnnotationStoresDeleteCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("DELETE", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.annotationStores.delete" call.
-// Exactly one of *Empty or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Empty.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsAnnotationStoresDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Empty{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Deletes the specified Annotation store and removes all annotations that are\ncontained within it.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}",
-	//   "httpMethod": "DELETE",
-	//   "id": "healthcare.projects.locations.datasets.annotationStores.delete",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The resource name of the Annotation store to delete.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "response": {
-	//     "$ref": "Empty"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.annotationStores.get":
-
-type ProjectsLocationsDatasetsAnnotationStoresGetCall struct {
-	s            *Service
-	name         string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// Get: Gets the specified Annotation store or returns NOT_FOUND if it
-// does not
-// exist.
-func (r *ProjectsLocationsDatasetsAnnotationStoresService) Get(name string) *ProjectsLocationsDatasetsAnnotationStoresGetCall {
-	c := &ProjectsLocationsDatasetsAnnotationStoresGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsAnnotationStoresGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsAnnotationStoresGetCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsAnnotationStoresGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsAnnotationStoresGetCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsAnnotationStoresGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsAnnotationStoresGetCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsAnnotationStoresGetCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsAnnotationStoresGetCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.annotationStores.get" call.
-// Exactly one of *AnnotationStore or error will be non-nil. Any non-2xx
-// status code is an error. Response headers are in either
-// *AnnotationStore.ServerResponse.Header or (if a response was returned
-// at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsAnnotationStoresGetCall) Do(opts ...googleapi.CallOption) (*AnnotationStore, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &AnnotationStore{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Gets the specified Annotation store or returns NOT_FOUND if it does not\nexist.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.annotationStores.get",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The resource name of the Annotation store to get.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "response": {
-	//     "$ref": "AnnotationStore"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.annotationStores.getIamPolicy":
-
-type ProjectsLocationsDatasetsAnnotationStoresGetIamPolicyCall struct {
-	s                   *Service
-	resource            string
-	getiampolicyrequest *GetIamPolicyRequest
-	urlParams_          gensupport.URLParams
-	ctx_                context.Context
-	header_             http.Header
-}
-
-// GetIamPolicy: Gets the access control policy for a resource. Returns
-// NOT_FOUND error if
-// the resource does not exist. Returns an empty policy if the resource
-// exists
-// but does not have a policy set.
-//
-// Authorization requires the Google IAM
-// permission
-// `healthcare.AnnotationStores.getIamPolicy` on the specified resource
-func (r *ProjectsLocationsDatasetsAnnotationStoresService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *ProjectsLocationsDatasetsAnnotationStoresGetIamPolicyCall {
-	c := &ProjectsLocationsDatasetsAnnotationStoresGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.resource = resource
-	c.getiampolicyrequest = getiampolicyrequest
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsAnnotationStoresGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsAnnotationStoresGetIamPolicyCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsAnnotationStoresGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsAnnotationStoresGetIamPolicyCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsAnnotationStoresGetIamPolicyCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsAnnotationStoresGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.getiampolicyrequest)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+resource}:getIamPolicy")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"resource": c.resource,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.annotationStores.getIamPolicy" call.
-// Exactly one of *Policy or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Policy.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsAnnotationStoresGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Policy{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Gets the access control policy for a resource. Returns NOT_FOUND error if\nthe resource does not exist. Returns an empty policy if the resource exists\nbut does not have a policy set.\n\nAuthorization requires the Google IAM permission\n`healthcare.AnnotationStores.getIamPolicy` on the specified resource",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}:getIamPolicy",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.annotationStores.getIamPolicy",
-	//   "parameterOrder": [
-	//     "resource"
-	//   ],
-	//   "parameters": {
-	//     "resource": {
-	//       "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+resource}:getIamPolicy",
-	//   "request": {
-	//     "$ref": "GetIamPolicyRequest"
-	//   },
-	//   "response": {
-	//     "$ref": "Policy"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.annotationStores.list":
-
-type ProjectsLocationsDatasetsAnnotationStoresListCall struct {
-	s            *Service
-	parent       string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// List: Lists the Annotation stores in the given dataset for a source
-// store.
-func (r *ProjectsLocationsDatasetsAnnotationStoresService) List(parent string) *ProjectsLocationsDatasetsAnnotationStoresListCall {
-	c := &ProjectsLocationsDatasetsAnnotationStoresListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	return c
-}
-
-// Filter sets the optional parameter "filter": Restricts stores
-// returned to those matching a filter.
-// Syntax:
-// https://cloud.google.com/appengine/docs/standard/python/search
-// /query_strings
-// Only filtering on labels is supported, for example
-// `labels.key=value`.
-func (c *ProjectsLocationsDatasetsAnnotationStoresListCall) Filter(filter string) *ProjectsLocationsDatasetsAnnotationStoresListCall {
-	c.urlParams_.Set("filter", filter)
-	return c
-}
-
-// PageSize sets the optional parameter "pageSize": Limit on the number
-// of Annotation stores to return in a single response.
-// If zero the default page size of 100 is used.
-func (c *ProjectsLocationsDatasetsAnnotationStoresListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsAnnotationStoresListCall {
-	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
-	return c
-}
-
-// PageToken sets the optional parameter "pageToken": The
-// next_page_token value returned from the previous List request, if
-// any.
-func (c *ProjectsLocationsDatasetsAnnotationStoresListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsAnnotationStoresListCall {
-	c.urlParams_.Set("pageToken", pageToken)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsAnnotationStoresListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsAnnotationStoresListCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsAnnotationStoresListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsAnnotationStoresListCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsAnnotationStoresListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsAnnotationStoresListCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsAnnotationStoresListCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsAnnotationStoresListCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/annotationStores")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.annotationStores.list" call.
-// Exactly one of *ListAnnotationStoresResponse or error will be
-// non-nil. Any non-2xx status code is an error. Response headers are in
-// either *ListAnnotationStoresResponse.ServerResponse.Header or (if a
-// response was returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsAnnotationStoresListCall) Do(opts ...googleapi.CallOption) (*ListAnnotationStoresResponse, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &ListAnnotationStoresResponse{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Lists the Annotation stores in the given dataset for a source store.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.annotationStores.list",
-	//   "parameterOrder": [
-	//     "parent"
-	//   ],
-	//   "parameters": {
-	//     "filter": {
-	//       "description": "Restricts stores returned to those matching a filter. Syntax:\nhttps://cloud.google.com/appengine/docs/standard/python/search/query_strings\nOnly filtering on labels is supported, for example `labels.key=value`.",
-	//       "location": "query",
-	//       "type": "string"
-	//     },
-	//     "pageSize": {
-	//       "description": "Limit on the number of Annotation stores to return in a single response.\nIf zero the default page size of 100 is used.",
-	//       "format": "int32",
-	//       "location": "query",
-	//       "type": "integer"
-	//     },
-	//     "pageToken": {
-	//       "description": "The next_page_token value returned from the previous List request, if any.",
-	//       "location": "query",
-	//       "type": "string"
-	//     },
-	//     "parent": {
-	//       "description": "Name of the dataset.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/annotationStores",
-	//   "response": {
-	//     "$ref": "ListAnnotationStoresResponse"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// Pages invokes f for each page of results.
-// A non-nil error returned from f will halt the iteration.
-// The provided context supersedes any context provided to the Context method.
-func (c *ProjectsLocationsDatasetsAnnotationStoresListCall) Pages(ctx context.Context, f func(*ListAnnotationStoresResponse) error) error {
-	c.ctx_ = ctx
-	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
-	for {
-		x, err := c.Do()
-		if err != nil {
-			return err
-		}
-		if err := f(x); err != nil {
-			return err
-		}
-		if x.NextPageToken == "" {
-			return nil
-		}
-		c.PageToken(x.NextPageToken)
-	}
-}
-
-// method id "healthcare.projects.locations.datasets.annotationStores.patch":
-
-type ProjectsLocationsDatasetsAnnotationStoresPatchCall struct {
-	s               *Service
-	name            string
-	annotationstore *AnnotationStore
-	urlParams_      gensupport.URLParams
-	ctx_            context.Context
-	header_         http.Header
-}
-
-// Patch: Updates the specified Annotation store.
-func (r *ProjectsLocationsDatasetsAnnotationStoresService) Patch(name string, annotationstore *AnnotationStore) *ProjectsLocationsDatasetsAnnotationStoresPatchCall {
-	c := &ProjectsLocationsDatasetsAnnotationStoresPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	c.annotationstore = annotationstore
-	return c
-}
-
-// UpdateMask sets the optional parameter "updateMask": The update mask
-// applies to the resource. For the `FieldMask`
-// definition,
-// see
-// https://developers.google.com/protocol-buffers/docs/re
-// ference/google.protobuf#fieldmask
-func (c *ProjectsLocationsDatasetsAnnotationStoresPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsAnnotationStoresPatchCall {
-	c.urlParams_.Set("updateMask", updateMask)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsAnnotationStoresPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsAnnotationStoresPatchCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsAnnotationStoresPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsAnnotationStoresPatchCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsAnnotationStoresPatchCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsAnnotationStoresPatchCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.annotationstore)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("PATCH", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.annotationStores.patch" call.
-// Exactly one of *AnnotationStore or error will be non-nil. Any non-2xx
-// status code is an error. Response headers are in either
-// *AnnotationStore.ServerResponse.Header or (if a response was returned
-// at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsAnnotationStoresPatchCall) Do(opts ...googleapi.CallOption) (*AnnotationStore, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &AnnotationStore{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Updates the specified Annotation store.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}",
-	//   "httpMethod": "PATCH",
-	//   "id": "healthcare.projects.locations.datasets.annotationStores.patch",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "Output only. Resource name of the Annotation store, of the form\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/annotationStores/{annotation_store_id}`.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     },
-	//     "updateMask": {
-	//       "description": "The update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask",
-	//       "format": "google-fieldmask",
-	//       "location": "query",
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "request": {
-	//     "$ref": "AnnotationStore"
-	//   },
-	//   "response": {
-	//     "$ref": "AnnotationStore"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.annotationStores.setIamPolicy":
-
-type ProjectsLocationsDatasetsAnnotationStoresSetIamPolicyCall struct {
-	s                   *Service
-	resource            string
-	setiampolicyrequest *SetIamPolicyRequest
-	urlParams_          gensupport.URLParams
-	ctx_                context.Context
-	header_             http.Header
-}
-
-// SetIamPolicy: POLICIES
-// Sets the access control policy for a resource. Replaces any
-// existing
-// policy.
-//
-// Authorization requires the Google IAM
-// permission
-// 'healthcare.annotationStores.setIamPolicy' on the specified resource
-func (r *ProjectsLocationsDatasetsAnnotationStoresService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsDatasetsAnnotationStoresSetIamPolicyCall {
-	c := &ProjectsLocationsDatasetsAnnotationStoresSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.resource = resource
-	c.setiampolicyrequest = setiampolicyrequest
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsAnnotationStoresSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsAnnotationStoresSetIamPolicyCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsAnnotationStoresSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsAnnotationStoresSetIamPolicyCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsAnnotationStoresSetIamPolicyCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsAnnotationStoresSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+resource}:setIamPolicy")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"resource": c.resource,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.annotationStores.setIamPolicy" call.
-// Exactly one of *Policy or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Policy.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsAnnotationStoresSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Policy{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "POLICIES\nSets the access control policy for a resource. Replaces any existing\npolicy.\n\nAuthorization requires the Google IAM permission\n'healthcare.annotationStores.setIamPolicy' on the specified resource",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}:setIamPolicy",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.annotationStores.setIamPolicy",
-	//   "parameterOrder": [
-	//     "resource"
-	//   ],
-	//   "parameters": {
-	//     "resource": {
-	//       "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+resource}:setIamPolicy",
-	//   "request": {
-	//     "$ref": "SetIamPolicyRequest"
-	//   },
-	//   "response": {
-	//     "$ref": "Policy"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.annotationStores.testIamPermissions":
-
-type ProjectsLocationsDatasetsAnnotationStoresTestIamPermissionsCall struct {
-	s                         *Service
-	resource                  string
-	testiampermissionsrequest *TestIamPermissionsRequest
-	urlParams_                gensupport.URLParams
-	ctx_                      context.Context
-	header_                   http.Header
-}
-
-// TestIamPermissions: Returns permissions that a caller has on the
-// specified resource.
-// If the resource does not exist, this will return an empty set
-// of
-// permissions, not a NOT_FOUND error.
-//
-// There is no permission required to make this API call.
-func (r *ProjectsLocationsDatasetsAnnotationStoresService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsDatasetsAnnotationStoresTestIamPermissionsCall {
-	c := &ProjectsLocationsDatasetsAnnotationStoresTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.resource = resource
-	c.testiampermissionsrequest = testiampermissionsrequest
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsAnnotationStoresTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsAnnotationStoresTestIamPermissionsCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsAnnotationStoresTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsDatasetsAnnotationStoresTestIamPermissionsCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsAnnotationStoresTestIamPermissionsCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsAnnotationStoresTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+resource}:testIamPermissions")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"resource": c.resource,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.annotationStores.testIamPermissions" call.
-// Exactly one of *TestIamPermissionsResponse or error will be non-nil.
-// Any non-2xx status code is an error. Response headers are in either
-// *TestIamPermissionsResponse.ServerResponse.Header or (if a response
-// was returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsAnnotationStoresTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &TestIamPermissionsResponse{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nThere is no permission required to make this API call.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}:testIamPermissions",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.annotationStores.testIamPermissions",
-	//   "parameterOrder": [
-	//     "resource"
-	//   ],
-	//   "parameters": {
-	//     "resource": {
-	//       "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+resource}:testIamPermissions",
-	//   "request": {
-	//     "$ref": "TestIamPermissionsRequest"
-	//   },
-	//   "response": {
-	//     "$ref": "TestIamPermissionsResponse"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.annotationStores.annotations.create":
-
-type ProjectsLocationsDatasetsAnnotationStoresAnnotationsCreateCall struct {
-	s          *Service
-	parent     string
-	annotation *Annotation
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Create: Creates a new Annotation
-// record. It is valid to create Annotation objects for the same source
-// more
-// than once since a unique ID is assigned to each record by this
-// service.
-func (r *ProjectsLocationsDatasetsAnnotationStoresAnnotationsService) Create(parent string, annotation *Annotation) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsCreateCall {
-	c := &ProjectsLocationsDatasetsAnnotationStoresAnnotationsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	c.annotation = annotation
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsCreateCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsCreateCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsCreateCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsCreateCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.annotation)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/annotations")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.annotationStores.annotations.create" call.
-// Exactly one of *Annotation or error will be non-nil. Any non-2xx
-// status code is an error. Response headers are in either
-// *Annotation.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsCreateCall) Do(opts ...googleapi.CallOption) (*Annotation, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Annotation{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Creates a new Annotation\nrecord. It is valid to create Annotation objects for the same source more\nthan once since a unique ID is assigned to each record by this service.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}/annotations",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.annotationStores.annotations.create",
-	//   "parameterOrder": [
-	//     "parent"
-	//   ],
-	//   "parameters": {
-	//     "parent": {
-	//       "description": "The name of the Annotation store this annotation belongs to. For example,\n`projects/my-project/locations/us-central1/datasets/mydataset/annotationStores/myannotationstore`.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/annotations",
-	//   "request": {
-	//     "$ref": "Annotation"
-	//   },
-	//   "response": {
-	//     "$ref": "Annotation"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.annotationStores.annotations.delete":
-
-type ProjectsLocationsDatasetsAnnotationStoresAnnotationsDeleteCall struct {
-	s          *Service
-	name       string
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Delete: Deletes an Annotation or
-// returns NOT_FOUND if it does not exist.
-func (r *ProjectsLocationsDatasetsAnnotationStoresAnnotationsService) Delete(name string) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsDeleteCall {
-	c := &ProjectsLocationsDatasetsAnnotationStoresAnnotationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsDeleteCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsDeleteCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsDeleteCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsDeleteCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("DELETE", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.annotationStores.annotations.delete" call.
-// Exactly one of *Empty or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Empty.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Empty{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Deletes an Annotation or\nreturns NOT_FOUND if it does not exist.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}/annotations/{annotationsId}",
-	//   "httpMethod": "DELETE",
-	//   "id": "healthcare.projects.locations.datasets.annotationStores.annotations.delete",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The resource name of the Annotation to delete.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+/annotations/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "response": {
-	//     "$ref": "Empty"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.annotationStores.annotations.get":
-
-type ProjectsLocationsDatasetsAnnotationStoresAnnotationsGetCall struct {
-	s            *Service
-	name         string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// Get: Gets an Annotation.
-func (r *ProjectsLocationsDatasetsAnnotationStoresAnnotationsService) Get(name string) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsGetCall {
-	c := &ProjectsLocationsDatasetsAnnotationStoresAnnotationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsGetCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsGetCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsGetCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsGetCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsGetCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.annotationStores.annotations.get" call.
-// Exactly one of *Annotation or error will be non-nil. Any non-2xx
-// status code is an error. Response headers are in either
-// *Annotation.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsGetCall) Do(opts ...googleapi.CallOption) (*Annotation, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Annotation{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Gets an Annotation.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}/annotations/{annotationsId}",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.annotationStores.annotations.get",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The resource name of the Annotation to retrieve.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+/annotations/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "response": {
-	//     "$ref": "Annotation"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.annotationStores.annotations.list":
-
-type ProjectsLocationsDatasetsAnnotationStoresAnnotationsListCall struct {
-	s            *Service
-	parent       string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// List: Lists the Annotations in the
-// given Annotation store
-// for a source resource.
-func (r *ProjectsLocationsDatasetsAnnotationStoresAnnotationsService) List(parent string) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsListCall {
-	c := &ProjectsLocationsDatasetsAnnotationStoresAnnotationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	return c
-}
-
-// Filter sets the optional parameter "filter": Restricts Annotations
-// returned to those matching a filter.
-// Syntax:
-// https://cloud.google.com/appengine/docs/standard/python/search
-// /query_strings
-// Fields/functions available for filtering are:
-// - source_version
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsListCall) Filter(filter string) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsListCall {
-	c.urlParams_.Set("filter", filter)
-	return c
-}
-
-// PageSize sets the optional parameter "pageSize": Limit on the number
-// of Annotations to return in a single response.
-// If zero the default page size of 100 is used.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsListCall {
-	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
-	return c
-}
-
-// PageToken sets the optional parameter "pageToken": The
-// next_page_token value returned from the previous List request, if
-// any.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsListCall {
-	c.urlParams_.Set("pageToken", pageToken)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsListCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsListCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsListCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsListCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsListCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/annotations")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.annotationStores.annotations.list" call.
-// Exactly one of *ListAnnotationsResponse or error will be non-nil. Any
-// non-2xx status code is an error. Response headers are in either
-// *ListAnnotationsResponse.ServerResponse.Header or (if a response was
-// returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsListCall) Do(opts ...googleapi.CallOption) (*ListAnnotationsResponse, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &ListAnnotationsResponse{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Lists the Annotations in the\ngiven Annotation store\nfor a source resource.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}/annotations",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.annotationStores.annotations.list",
-	//   "parameterOrder": [
-	//     "parent"
-	//   ],
-	//   "parameters": {
-	//     "filter": {
-	//       "description": "Restricts Annotations returned to those matching a filter. Syntax:\nhttps://cloud.google.com/appengine/docs/standard/python/search/query_strings\nFields/functions available for filtering are:\n- source_version",
-	//       "location": "query",
-	//       "type": "string"
-	//     },
-	//     "pageSize": {
-	//       "description": "Limit on the number of Annotations to return in a single response.\nIf zero the default page size of 100 is used.",
-	//       "format": "int32",
-	//       "location": "query",
-	//       "type": "integer"
-	//     },
-	//     "pageToken": {
-	//       "description": "The next_page_token value returned from the previous List request, if any.",
-	//       "location": "query",
-	//       "type": "string"
-	//     },
-	//     "parent": {
-	//       "description": "Name of the Annotation store to retrieve Annotations from.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/annotations",
-	//   "response": {
-	//     "$ref": "ListAnnotationsResponse"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// Pages invokes f for each page of results.
-// A non-nil error returned from f will halt the iteration.
-// The provided context supersedes any context provided to the Context method.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsListCall) Pages(ctx context.Context, f func(*ListAnnotationsResponse) error) error {
-	c.ctx_ = ctx
-	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
-	for {
-		x, err := c.Do()
-		if err != nil {
-			return err
-		}
-		if err := f(x); err != nil {
-			return err
-		}
-		if x.NextPageToken == "" {
-			return nil
-		}
-		c.PageToken(x.NextPageToken)
-	}
-}
-
-// method id "healthcare.projects.locations.datasets.annotationStores.annotations.patch":
-
-type ProjectsLocationsDatasetsAnnotationStoresAnnotationsPatchCall struct {
-	s          *Service
-	name       string
-	annotation *Annotation
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Patch: Updates the Annotation.
-func (r *ProjectsLocationsDatasetsAnnotationStoresAnnotationsService) Patch(name string, annotation *Annotation) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsPatchCall {
-	c := &ProjectsLocationsDatasetsAnnotationStoresAnnotationsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	c.annotation = annotation
-	return c
-}
-
-// UpdateMask sets the optional parameter "updateMask": The update mask
-// applies to the resource. For the `FieldMask`
-// definition,
-// see
-// https://developers.google.com/protocol-buffers/docs/re
-// ference/google.protobuf#fieldmask
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsPatchCall {
-	c.urlParams_.Set("updateMask", updateMask)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsPatchCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsAnnotationStoresAnnotationsPatchCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsPatchCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsPatchCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.annotation)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("PATCH", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.annotationStores.annotations.patch" call.
-// Exactly one of *Annotation or error will be non-nil. Any non-2xx
-// status code is an error. Response headers are in either
-// *Annotation.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsAnnotationStoresAnnotationsPatchCall) Do(opts ...googleapi.CallOption) (*Annotation, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Annotation{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Updates the Annotation.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/annotationStores/{annotationStoresId}/annotations/{annotationsId}",
-	//   "httpMethod": "PATCH",
-	//   "id": "healthcare.projects.locations.datasets.annotationStores.annotations.patch",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "Output only. Resource name of the Annotation, of the form\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/annotationStores/{annotation_store_id}/annotations/{annotation_id}`.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/annotationStores/[^/]+/annotations/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     },
-	//     "updateMask": {
-	//       "description": "The update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask",
-	//       "format": "google-fieldmask",
-	//       "location": "query",
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "request": {
-	//     "$ref": "Annotation"
-	//   },
-	//   "response": {
-	//     "$ref": "Annotation"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.dicomStores.create":
-
-type ProjectsLocationsDatasetsDicomStoresCreateCall struct {
-	s          *Service
-	parent     string
-	dicomstore *DicomStore
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Create: Creates a new DICOM store within the parent dataset.
-func (r *ProjectsLocationsDatasetsDicomStoresService) Create(parent string, dicomstore *DicomStore) *ProjectsLocationsDatasetsDicomStoresCreateCall {
-	c := &ProjectsLocationsDatasetsDicomStoresCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	c.dicomstore = dicomstore
-	return c
-}
-
-// DicomStoreId sets the optional parameter "dicomStoreId": The ID of
-// the DICOM store that is being created.
-// The string must match the following regex:
-// `[\p{L}\p{N}_\-\.]{1,256}`.
-func (c *ProjectsLocationsDatasetsDicomStoresCreateCall) DicomStoreId(dicomStoreId string) *ProjectsLocationsDatasetsDicomStoresCreateCall {
-	c.urlParams_.Set("dicomStoreId", dicomStoreId)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsDicomStoresCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresCreateCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsDicomStoresCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresCreateCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsDicomStoresCreateCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsDicomStoresCreateCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.dicomstore)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/dicomStores")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.dicomStores.create" call.
-// Exactly one of *DicomStore or error will be non-nil. Any non-2xx
-// status code is an error. Response headers are in either
-// *DicomStore.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsDicomStoresCreateCall) Do(opts ...googleapi.CallOption) (*DicomStore, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &DicomStore{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Creates a new DICOM store within the parent dataset.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.dicomStores.create",
-	//   "parameterOrder": [
-	//     "parent"
-	//   ],
-	//   "parameters": {
-	//     "dicomStoreId": {
-	//       "description": "The ID of the DICOM store that is being created.\nThe string must match the following regex: `[\\p{L}\\p{N}_\\-\\.]{1,256}`.",
-	//       "location": "query",
-	//       "type": "string"
-	//     },
-	//     "parent": {
-	//       "description": "The name of the dataset this DICOM store belongs to.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/dicomStores",
-	//   "request": {
-	//     "$ref": "DicomStore"
-	//   },
-	//   "response": {
-	//     "$ref": "DicomStore"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.dicomStores.delete":
-
-type ProjectsLocationsDatasetsDicomStoresDeleteCall struct {
-	s          *Service
-	name       string
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Delete: Deletes the specified DICOM store and removes all images that
-// are contained
-// within it.
-func (r *ProjectsLocationsDatasetsDicomStoresService) Delete(name string) *ProjectsLocationsDatasetsDicomStoresDeleteCall {
-	c := &ProjectsLocationsDatasetsDicomStoresDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsDicomStoresDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresDeleteCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsDicomStoresDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresDeleteCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsDicomStoresDeleteCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsDicomStoresDeleteCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("DELETE", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.dicomStores.delete" call.
-// Exactly one of *Empty or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Empty.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsDicomStoresDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Empty{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Deletes the specified DICOM store and removes all images that are contained\nwithin it.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}",
-	//   "httpMethod": "DELETE",
-	//   "id": "healthcare.projects.locations.datasets.dicomStores.delete",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The resource name of the DICOM store to delete.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "response": {
-	//     "$ref": "Empty"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.dicomStores.export":
-
-type ProjectsLocationsDatasetsDicomStoresExportCall struct {
-	s                      *Service
-	name                   string
-	exportdicomdatarequest *ExportDicomDataRequest
-	urlParams_             gensupport.URLParams
-	ctx_                   context.Context
-	header_                http.Header
-}
-
-// Export: Exports data to the specified destination by copying it from
-// the DICOM
-// store.
-// The metadata field type is
-// OperationMetadata.
-func (r *ProjectsLocationsDatasetsDicomStoresService) Export(name string, exportdicomdatarequest *ExportDicomDataRequest) *ProjectsLocationsDatasetsDicomStoresExportCall {
-	c := &ProjectsLocationsDatasetsDicomStoresExportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	c.exportdicomdatarequest = exportdicomdatarequest
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsDicomStoresExportCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresExportCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsDicomStoresExportCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresExportCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsDicomStoresExportCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsDicomStoresExportCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.exportdicomdatarequest)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}:export")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.dicomStores.export" call.
-// Exactly one of *Operation or error will be non-nil. Any non-2xx
-// status code is an error. Response headers are in either
-// *Operation.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsDicomStoresExportCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Operation{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Exports data to the specified destination by copying it from the DICOM\nstore.\nThe metadata field type is\nOperationMetadata.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}:export",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.dicomStores.export",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The DICOM store resource name from which the data should be exported (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}:export",
-	//   "request": {
-	//     "$ref": "ExportDicomDataRequest"
-	//   },
-	//   "response": {
-	//     "$ref": "Operation"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.dicomStores.get":
-
-type ProjectsLocationsDatasetsDicomStoresGetCall struct {
-	s            *Service
-	name         string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// Get: Gets the specified DICOM store.
-func (r *ProjectsLocationsDatasetsDicomStoresService) Get(name string) *ProjectsLocationsDatasetsDicomStoresGetCall {
-	c := &ProjectsLocationsDatasetsDicomStoresGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsDicomStoresGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresGetCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsDicomStoresGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresGetCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsDicomStoresGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresGetCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsDicomStoresGetCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsDicomStoresGetCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.dicomStores.get" call.
-// Exactly one of *DicomStore or error will be non-nil. Any non-2xx
-// status code is an error. Response headers are in either
-// *DicomStore.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsDicomStoresGetCall) Do(opts ...googleapi.CallOption) (*DicomStore, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &DicomStore{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Gets the specified DICOM store.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.dicomStores.get",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The resource name of the DICOM store to get.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "response": {
-	//     "$ref": "DicomStore"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
 // method id "healthcare.projects.locations.datasets.dicomStores.getIamPolicy":
 
 type ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall struct {
@@ -7888,500 +1948,6 @@
 
 }
 
-// method id "healthcare.projects.locations.datasets.dicomStores.import":
-
-type ProjectsLocationsDatasetsDicomStoresImportCall struct {
-	s                      *Service
-	name                   string
-	importdicomdatarequest *ImportDicomDataRequest
-	urlParams_             gensupport.URLParams
-	ctx_                   context.Context
-	header_                http.Header
-}
-
-// Import: Imports data into the DICOM store by copying it from the
-// specified source.
-// For errors, the Operation will be populated with error details (in
-// the form
-// of ImportDicomDataErrorDetails in error.details), which will
-// hold
-// finer-grained error information.
-// The metadata field type is
-// OperationMetadata.
-func (r *ProjectsLocationsDatasetsDicomStoresService) Import(name string, importdicomdatarequest *ImportDicomDataRequest) *ProjectsLocationsDatasetsDicomStoresImportCall {
-	c := &ProjectsLocationsDatasetsDicomStoresImportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	c.importdicomdatarequest = importdicomdatarequest
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsDicomStoresImportCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresImportCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsDicomStoresImportCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresImportCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsDicomStoresImportCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsDicomStoresImportCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.importdicomdatarequest)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}:import")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.dicomStores.import" call.
-// Exactly one of *Operation or error will be non-nil. Any non-2xx
-// status code is an error. Response headers are in either
-// *Operation.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsDicomStoresImportCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Operation{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Imports data into the DICOM store by copying it from the specified source.\nFor errors, the Operation will be populated with error details (in the form\nof ImportDicomDataErrorDetails in error.details), which will hold\nfiner-grained error information.\nThe metadata field type is\nOperationMetadata.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}:import",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.dicomStores.import",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The name of the DICOM store resource into which the data is imported (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}:import",
-	//   "request": {
-	//     "$ref": "ImportDicomDataRequest"
-	//   },
-	//   "response": {
-	//     "$ref": "Operation"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.dicomStores.list":
-
-type ProjectsLocationsDatasetsDicomStoresListCall struct {
-	s            *Service
-	parent       string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// List: Lists the DICOM stores in the given dataset.
-func (r *ProjectsLocationsDatasetsDicomStoresService) List(parent string) *ProjectsLocationsDatasetsDicomStoresListCall {
-	c := &ProjectsLocationsDatasetsDicomStoresListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	return c
-}
-
-// PageSize sets the optional parameter "pageSize": Limit on the number
-// of DICOM stores to return in a single response.
-// If zero the default page size of 100 is used.
-func (c *ProjectsLocationsDatasetsDicomStoresListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsDicomStoresListCall {
-	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
-	return c
-}
-
-// PageToken sets the optional parameter "pageToken": The
-// next_page_token value returned from the previous List request, if
-// any.
-func (c *ProjectsLocationsDatasetsDicomStoresListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsDicomStoresListCall {
-	c.urlParams_.Set("pageToken", pageToken)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsDicomStoresListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresListCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsDicomStoresListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresListCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsDicomStoresListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresListCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsDicomStoresListCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsDicomStoresListCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/dicomStores")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.dicomStores.list" call.
-// Exactly one of *ListDicomStoresResponse or error will be non-nil. Any
-// non-2xx status code is an error. Response headers are in either
-// *ListDicomStoresResponse.ServerResponse.Header or (if a response was
-// returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsDicomStoresListCall) Do(opts ...googleapi.CallOption) (*ListDicomStoresResponse, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &ListDicomStoresResponse{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Lists the DICOM stores in the given dataset.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.dicomStores.list",
-	//   "parameterOrder": [
-	//     "parent"
-	//   ],
-	//   "parameters": {
-	//     "pageSize": {
-	//       "description": "Limit on the number of DICOM stores to return in a single response.\nIf zero the default page size of 100 is used.",
-	//       "format": "int32",
-	//       "location": "query",
-	//       "type": "integer"
-	//     },
-	//     "pageToken": {
-	//       "description": "The next_page_token value returned from the previous List request, if any.",
-	//       "location": "query",
-	//       "type": "string"
-	//     },
-	//     "parent": {
-	//       "description": "Name of the dataset.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/dicomStores",
-	//   "response": {
-	//     "$ref": "ListDicomStoresResponse"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// Pages invokes f for each page of results.
-// A non-nil error returned from f will halt the iteration.
-// The provided context supersedes any context provided to the Context method.
-func (c *ProjectsLocationsDatasetsDicomStoresListCall) Pages(ctx context.Context, f func(*ListDicomStoresResponse) error) error {
-	c.ctx_ = ctx
-	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
-	for {
-		x, err := c.Do()
-		if err != nil {
-			return err
-		}
-		if err := f(x); err != nil {
-			return err
-		}
-		if x.NextPageToken == "" {
-			return nil
-		}
-		c.PageToken(x.NextPageToken)
-	}
-}
-
-// method id "healthcare.projects.locations.datasets.dicomStores.patch":
-
-type ProjectsLocationsDatasetsDicomStoresPatchCall struct {
-	s          *Service
-	name       string
-	dicomstore *DicomStore
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Patch: Updates the specified DICOM store.
-func (r *ProjectsLocationsDatasetsDicomStoresService) Patch(name string, dicomstore *DicomStore) *ProjectsLocationsDatasetsDicomStoresPatchCall {
-	c := &ProjectsLocationsDatasetsDicomStoresPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	c.dicomstore = dicomstore
-	return c
-}
-
-// UpdateMask sets the optional parameter "updateMask": The update mask
-// applies to the resource. For the `FieldMask`
-// definition,
-// see
-// https://developers.google.com/protocol-buffers/docs/re
-// ference/google.protobuf#fieldmask
-func (c *ProjectsLocationsDatasetsDicomStoresPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsDicomStoresPatchCall {
-	c.urlParams_.Set("updateMask", updateMask)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsDicomStoresPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresPatchCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsDicomStoresPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresPatchCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsDicomStoresPatchCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsDicomStoresPatchCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.dicomstore)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("PATCH", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.dicomStores.patch" call.
-// Exactly one of *DicomStore or error will be non-nil. Any non-2xx
-// status code is an error. Response headers are in either
-// *DicomStore.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsDicomStoresPatchCall) Do(opts ...googleapi.CallOption) (*DicomStore, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &DicomStore{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Updates the specified DICOM store.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}",
-	//   "httpMethod": "PATCH",
-	//   "id": "healthcare.projects.locations.datasets.dicomStores.patch",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "Output only. Resource name of the DICOM store, of the form\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     },
-	//     "updateMask": {
-	//       "description": "The update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask",
-	//       "format": "google-fieldmask",
-	//       "location": "query",
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "request": {
-	//     "$ref": "DicomStore"
-	//   },
-	//   "response": {
-	//     "$ref": "DicomStore"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
 // method id "healthcare.projects.locations.datasets.dicomStores.setIamPolicy":
 
 type ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall struct {
@@ -8672,5331 +2238,6 @@
 
 }
 
-// method id "healthcare.projects.locations.datasets.dicomStores.dicomWeb.dicomWebDelete":
-
-type ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebDeleteCall struct {
-	s            *Service
-	parent       string
-	dicomWebPath string
-	urlParams_   gensupport.URLParams
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// DicomWebDelete: Handles DELETE requests equivalent to the GET
-// requests specified in the
-// WADO-RS standard. Since this implements an industry standard API,
-// the
-// dicom_web_path is interpreted directly by the serving binary. For
-// example,
-// if the request is
-// for
-// `/v1alpha/projects/{project_id}/locations/{location_id}/locations/
-// {location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}/dicom
-// Web/studies/1.2`,
-// then `/studies/1.2` is passed to the serving binary as the
-// dicom_web_path.
-func (r *ProjectsLocationsDatasetsDicomStoresDicomWebService) DicomWebDelete(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebDeleteCall {
-	c := &ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	c.dicomWebPath = dicomWebPath
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebDeleteCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebDeleteCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebDeleteCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebDeleteCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/dicomWeb/{+dicomWebPath}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("DELETE", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent":       c.parent,
-		"dicomWebPath": c.dicomWebPath,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.dicomStores.dicomWeb.dicomWebDelete" call.
-// Exactly one of *Empty or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Empty.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Empty{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Handles DELETE requests equivalent to the GET requests specified in the\nWADO-RS standard. Since this implements an industry standard API, the\ndicom_web_path is interpreted directly by the serving binary. For example,\nif the request is for\n`/v1alpha/projects/{project_id}/locations/{location_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}/dicomWeb/studies/1.2`,\nthen `/studies/1.2` is passed to the serving binary as the dicom_web_path.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/{dicomWebId}",
-	//   "httpMethod": "DELETE",
-	//   "id": "healthcare.projects.locations.datasets.dicomStores.dicomWeb.dicomWebDelete",
-	//   "parameterOrder": [
-	//     "parent",
-	//     "dicomWebPath"
-	//   ],
-	//   "parameters": {
-	//     "dicomWebPath": {
-	//       "description": "The path of the DICOMweb request, as specified in the WADO-RS standard.",
-	//       "location": "path",
-	//       "pattern": "^.+$",
-	//       "required": true,
-	//       "type": "string"
-	//     },
-	//     "parent": {
-	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/dicomWeb/{+dicomWebPath}",
-	//   "response": {
-	//     "$ref": "Empty"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.dicomStores.dicomWeb.dicomWebGet":
-
-type ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebGetCall struct {
-	s            *Service
-	parent       string
-	dicomWebPath string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// DicomWebGet: Handles the GET requests specified in the STOW-RS,
-// WADO-RS, or QIDO-RS
-// standard. Since this implements an industry standard API,
-// the
-// dicom_web_path is interpreted directly by the serving binary. For
-// example,
-// if the request is
-// for
-// `/v1alpha/projects/{project_id}/locations/{location_id}/datasets/{
-// dataset_id}/dicomStores/{dicom_store_id}/dicomWeb/studies/{study_id}/s
-// eries?PatientName={patient_name}`,
-// then `studies/{study_id}/series` is passed to the serving binary as
-// the
-// dicom_web_path.
-func (r *ProjectsLocationsDatasetsDicomStoresDicomWebService) DicomWebGet(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebGetCall {
-	c := &ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	c.dicomWebPath = dicomWebPath
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebGetCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebGetCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebGetCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebGetCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebGetCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/dicomWeb/{+dicomWebPath}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent":       c.parent,
-		"dicomWebPath": c.dicomWebPath,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.dicomStores.dicomWeb.dicomWebGet" call.
-// Exactly one of *HttpBody or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *HttpBody.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebGetCall) Do(opts ...googleapi.CallOption) (*HttpBody, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &HttpBody{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Handles the GET requests specified in the STOW-RS, WADO-RS, or QIDO-RS\nstandard. Since this implements an industry standard API, the\ndicom_web_path is interpreted directly by the serving binary. For example,\nif the request is for\n`/v1alpha/projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}/dicomWeb/studies/{study_id}/series?PatientName={patient_name}`,\nthen `studies/{study_id}/series` is passed to the serving binary as the\ndicom_web_path.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/{dicomWebId}",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.dicomStores.dicomWeb.dicomWebGet",
-	//   "parameterOrder": [
-	//     "parent",
-	//     "dicomWebPath"
-	//   ],
-	//   "parameters": {
-	//     "dicomWebPath": {
-	//       "description": "The path of the DICOMweb request, as specified in the STOW-RS, WADO-RS, or\nQIDO-RS standard (e.g., studies/{study_id}/series`).",
-	//       "location": "path",
-	//       "pattern": "^.+$",
-	//       "required": true,
-	//       "type": "string"
-	//     },
-	//     "parent": {
-	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/dicomWeb/{+dicomWebPath}",
-	//   "response": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.dicomStores.dicomWeb.dicomWebPost":
-
-type ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebPostCall struct {
-	s            *Service
-	parent       string
-	dicomWebPath string
-	httpbody     *HttpBody
-	urlParams_   gensupport.URLParams
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// DicomWebPost: Handles the POST requests specified in the STOW-RS,
-// WADO-RS, or QIDO-RS
-// standard. Since this implements an industry standard API,
-// the
-// dicom_web_path is interpreted directly by the serving binary. For
-// example,
-// if the request is
-// for
-// `/v1alpha/projects/{project_id}/locations/{location_id}/datasets/{
-// dataset_id}/dicomStores/{dicom_store_id}/dicomWeb/studies/{study_id}`,
-//
-// then `/studies/{study_id}` is passed to the serving binary as
-// the
-// dicom_web_path.
-func (r *ProjectsLocationsDatasetsDicomStoresDicomWebService) DicomWebPost(parent string, dicomWebPath string, httpbody *HttpBody) *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebPostCall {
-	c := &ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebPostCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	c.dicomWebPath = dicomWebPath
-	c.httpbody = httpbody
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebPostCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebPostCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebPostCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebPostCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebPostCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebPostCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.httpbody)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/dicomWeb/{+dicomWebPath}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent":       c.parent,
-		"dicomWebPath": c.dicomWebPath,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.dicomStores.dicomWeb.dicomWebPost" call.
-// Exactly one of *HttpBody or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *HttpBody.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsDicomStoresDicomWebDicomWebPostCall) Do(opts ...googleapi.CallOption) (*HttpBody, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &HttpBody{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Handles the POST requests specified in the STOW-RS, WADO-RS, or QIDO-RS\nstandard. Since this implements an industry standard API, the\ndicom_web_path is interpreted directly by the serving binary. For example,\nif the request is for\n`/v1alpha/projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}/dicomWeb/studies/{study_id}`,\nthen `/studies/{study_id}` is passed to the serving binary as the\ndicom_web_path.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/{dicomWebId}",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.dicomStores.dicomWeb.dicomWebPost",
-	//   "parameterOrder": [
-	//     "parent",
-	//     "dicomWebPath"
-	//   ],
-	//   "parameters": {
-	//     "dicomWebPath": {
-	//       "description": "The path of the DICOMweb request, as specified in the STOW-RS, WADO-RS, or\nQIDO-RS standard (e.g., studies/{study_id}`).",
-	//       "location": "path",
-	//       "pattern": "^.+$",
-	//       "required": true,
-	//       "type": "string"
-	//     },
-	//     "parent": {
-	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/dicomWeb/{+dicomWebPath}",
-	//   "request": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "response": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.create":
-
-type ProjectsLocationsDatasetsFhirStoresCreateCall struct {
-	s          *Service
-	parent     string
-	fhirstore  *FhirStore
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Create: Creates a new FHIR store within the parent dataset.
-func (r *ProjectsLocationsDatasetsFhirStoresService) Create(parent string, fhirstore *FhirStore) *ProjectsLocationsDatasetsFhirStoresCreateCall {
-	c := &ProjectsLocationsDatasetsFhirStoresCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	c.fhirstore = fhirstore
-	return c
-}
-
-// FhirStoreId sets the optional parameter "fhirStoreId": The ID of the
-// FHIR store that is being created.
-// The string must match the following regex:
-// `[\p{L}\p{N}_\-\.]{1,256}`.
-func (c *ProjectsLocationsDatasetsFhirStoresCreateCall) FhirStoreId(fhirStoreId string) *ProjectsLocationsDatasetsFhirStoresCreateCall {
-	c.urlParams_.Set("fhirStoreId", fhirStoreId)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresCreateCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresCreateCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresCreateCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresCreateCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.fhirstore)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/fhirStores")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.create" call.
-// Exactly one of *FhirStore or error will be non-nil. Any non-2xx
-// status code is an error. Response headers are in either
-// *FhirStore.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresCreateCall) Do(opts ...googleapi.CallOption) (*FhirStore, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &FhirStore{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Creates a new FHIR store within the parent dataset.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.create",
-	//   "parameterOrder": [
-	//     "parent"
-	//   ],
-	//   "parameters": {
-	//     "fhirStoreId": {
-	//       "description": "The ID of the FHIR store that is being created.\nThe string must match the following regex: `[\\p{L}\\p{N}_\\-\\.]{1,256}`.",
-	//       "location": "query",
-	//       "type": "string"
-	//     },
-	//     "parent": {
-	//       "description": "The name of the dataset this FHIR store belongs to.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/fhirStores",
-	//   "request": {
-	//     "$ref": "FhirStore"
-	//   },
-	//   "response": {
-	//     "$ref": "FhirStore"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.delete":
-
-type ProjectsLocationsDatasetsFhirStoresDeleteCall struct {
-	s          *Service
-	name       string
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Delete: Deletes the FHIR store and removes all resources that are
-// contained within
-// it.
-func (r *ProjectsLocationsDatasetsFhirStoresService) Delete(name string) *ProjectsLocationsDatasetsFhirStoresDeleteCall {
-	c := &ProjectsLocationsDatasetsFhirStoresDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresDeleteCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresDeleteCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresDeleteCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresDeleteCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("DELETE", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.delete" call.
-// Exactly one of *Empty or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Empty.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Empty{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Deletes the FHIR store and removes all resources that are contained within\nit.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}",
-	//   "httpMethod": "DELETE",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.delete",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The resource name of the FHIR store to delete.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "response": {
-	//     "$ref": "Empty"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.executeBundle":
-
-type ProjectsLocationsDatasetsFhirStoresExecuteBundleCall struct {
-	s          *Service
-	parent     string
-	httpbody   *HttpBody
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// ExecuteBundle: Executes all the requests in the given Bundle.
-func (r *ProjectsLocationsDatasetsFhirStoresService) ExecuteBundle(parent string, httpbody *HttpBody) *ProjectsLocationsDatasetsFhirStoresExecuteBundleCall {
-	c := &ProjectsLocationsDatasetsFhirStoresExecuteBundleCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	c.httpbody = httpbody
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresExecuteBundleCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresExecuteBundleCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresExecuteBundleCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresExecuteBundleCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresExecuteBundleCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresExecuteBundleCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.httpbody)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.executeBundle" call.
-// Exactly one of *HttpBody or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *HttpBody.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresExecuteBundleCall) Do(opts ...googleapi.CallOption) (*HttpBody, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &HttpBody{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Executes all the requests in the given Bundle.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.executeBundle",
-	//   "parameterOrder": [
-	//     "parent"
-	//   ],
-	//   "parameters": {
-	//     "parent": {
-	//       "description": "Name of the FHIR store in which this bundle will be executed.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}",
-	//   "request": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "response": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.export":
-
-type ProjectsLocationsDatasetsFhirStoresExportCall struct {
-	s                      *Service
-	name                   string
-	exportresourcesrequest *ExportResourcesRequest
-	urlParams_             gensupport.URLParams
-	ctx_                   context.Context
-	header_                http.Header
-}
-
-// Export: Export resources from the FHIR store to the specified
-// destination.
-// Fatal errors will be populated in the
-// error field.
-// Otherwise a detailed response will be returned as of
-// type
-// ExportResourcesResponse contained in the
-// response field when the operation
-// finishes.
-// The metadata field type is
-// OperationMetadata.
-func (r *ProjectsLocationsDatasetsFhirStoresService) Export(name string, exportresourcesrequest *ExportResourcesRequest) *ProjectsLocationsDatasetsFhirStoresExportCall {
-	c := &ProjectsLocationsDatasetsFhirStoresExportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	c.exportresourcesrequest = exportresourcesrequest
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresExportCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresExportCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresExportCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresExportCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresExportCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresExportCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.exportresourcesrequest)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}:export")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.export" call.
-// Exactly one of *Operation or error will be non-nil. Any non-2xx
-// status code is an error. Response headers are in either
-// *Operation.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresExportCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Operation{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Export resources from the FHIR store to the specified destination.\nFatal errors will be populated in the\nerror field.\nOtherwise a detailed response will be returned as of type\nExportResourcesResponse contained in the\nresponse field when the operation\nfinishes.\nThe metadata field type is\nOperationMetadata.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}:export",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.export",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The FHIR store name to export from. The name should be in the format\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/fhirStores/{fhir_store_id}`.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}:export",
-	//   "request": {
-	//     "$ref": "ExportResourcesRequest"
-	//   },
-	//   "response": {
-	//     "$ref": "Operation"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.get":
-
-type ProjectsLocationsDatasetsFhirStoresGetCall struct {
-	s            *Service
-	name         string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// Get: Gets the specified FHIR store.
-func (r *ProjectsLocationsDatasetsFhirStoresService) Get(name string) *ProjectsLocationsDatasetsFhirStoresGetCall {
-	c := &ProjectsLocationsDatasetsFhirStoresGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresGetCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsFhirStoresGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresGetCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresGetCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresGetCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresGetCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.get" call.
-// Exactly one of *FhirStore or error will be non-nil. Any non-2xx
-// status code is an error. Response headers are in either
-// *FhirStore.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresGetCall) Do(opts ...googleapi.CallOption) (*FhirStore, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &FhirStore{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Gets the specified FHIR store.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.get",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The resource name of the FHIR store to get.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "response": {
-	//     "$ref": "FhirStore"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.getIamPolicy":
-
-type ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall struct {
-	s                   *Service
-	resource            string
-	getiampolicyrequest *GetIamPolicyRequest
-	urlParams_          gensupport.URLParams
-	ctx_                context.Context
-	header_             http.Header
-}
-
-// GetIamPolicy: Gets the access control policy for a FHIR store or
-// security label within a
-// FHIR store. Returns NOT_FOUND error if the resource does not exist.
-// Returns
-// an empty policy if the resource exists but does not have a policy
-// set.
-//
-// Authorization requires the Google IAM
-// permission
-// 'healthcare.fhirStores.getIamPolicy' for a FHIR store
-// or
-// 'healthcare.securityLabels.getIamPolicy' for a security label
-func (r *ProjectsLocationsDatasetsFhirStoresService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall {
-	c := &ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.resource = resource
-	c.getiampolicyrequest = getiampolicyrequest
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.getiampolicyrequest)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+resource}:getIamPolicy")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"resource": c.resource,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.getIamPolicy" call.
-// Exactly one of *Policy or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Policy.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Policy{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Gets the access control policy for a FHIR store or security label within a\nFHIR store. Returns NOT_FOUND error if the resource does not exist. Returns\nan empty policy if the resource exists but does not have a policy set.\n\nAuthorization requires the Google IAM permission\n'healthcare.fhirStores.getIamPolicy' for a FHIR store or\n'healthcare.securityLabels.getIamPolicy' for a security label",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}:getIamPolicy",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.getIamPolicy",
-	//   "parameterOrder": [
-	//     "resource"
-	//   ],
-	//   "parameters": {
-	//     "resource": {
-	//       "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+resource}:getIamPolicy",
-	//   "request": {
-	//     "$ref": "GetIamPolicyRequest"
-	//   },
-	//   "response": {
-	//     "$ref": "Policy"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.getMetadata":
-
-type ProjectsLocationsDatasetsFhirStoresGetMetadataCall struct {
-	s            *Service
-	name         string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// GetMetadata: Gets the capabilities statement for the store.
-//
-func (r *ProjectsLocationsDatasetsFhirStoresService) GetMetadata(name string) *ProjectsLocationsDatasetsFhirStoresGetMetadataCall {
-	c := &ProjectsLocationsDatasetsFhirStoresGetMetadataCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresGetMetadataCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresGetMetadataCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsFhirStoresGetMetadataCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresGetMetadataCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresGetMetadataCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresGetMetadataCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresGetMetadataCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresGetMetadataCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}/metadata")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.getMetadata" call.
-// Exactly one of *HttpBody or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *HttpBody.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresGetMetadataCall) Do(opts ...googleapi.CallOption) (*HttpBody, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &HttpBody{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Gets the capabilities statement for the store.\n",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/metadata",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.getMetadata",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "Name of the FHIR store to retrieve the capabilities for.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}/metadata",
-	//   "response": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.import":
-
-type ProjectsLocationsDatasetsFhirStoresImportCall struct {
-	s                      *Service
-	name                   string
-	importresourcesrequest *ImportResourcesRequest
-	urlParams_             gensupport.URLParams
-	ctx_                   context.Context
-	header_                http.Header
-}
-
-// Import: Import resources to the FHIR store by loading data from the
-// specified
-// sources.
-// Fatal errors will be populated in the
-// error field.
-// Otherwise a detailed response will be returned as of
-// type
-// ImportResourcesResponse contained in the
-// response field when the operation
-// finishes.
-// The metadata field type is
-// OperationMetadata.
-func (r *ProjectsLocationsDatasetsFhirStoresService) Import(name string, importresourcesrequest *ImportResourcesRequest) *ProjectsLocationsDatasetsFhirStoresImportCall {
-	c := &ProjectsLocationsDatasetsFhirStoresImportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	c.importresourcesrequest = importresourcesrequest
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresImportCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresImportCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresImportCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresImportCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresImportCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresImportCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.importresourcesrequest)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}:import")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.import" call.
-// Exactly one of *Operation or error will be non-nil. Any non-2xx
-// status code is an error. Response headers are in either
-// *Operation.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresImportCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Operation{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Import resources to the FHIR store by loading data from the specified\nsources.\nFatal errors will be populated in the\nerror field.\nOtherwise a detailed response will be returned as of type\nImportResourcesResponse contained in the\nresponse field when the operation\nfinishes.\nThe metadata field type is\nOperationMetadata.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}:import",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.import",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The FHIR store name to import FHIR resources to. The name should be in the\nformat\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/fhirStores/{fhir_store_id}`.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}:import",
-	//   "request": {
-	//     "$ref": "ImportResourcesRequest"
-	//   },
-	//   "response": {
-	//     "$ref": "Operation"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.list":
-
-type ProjectsLocationsDatasetsFhirStoresListCall struct {
-	s            *Service
-	parent       string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// List: Lists the FHIR stores in the given dataset.
-func (r *ProjectsLocationsDatasetsFhirStoresService) List(parent string) *ProjectsLocationsDatasetsFhirStoresListCall {
-	c := &ProjectsLocationsDatasetsFhirStoresListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	return c
-}
-
-// PageSize sets the optional parameter "pageSize": Limit on the number
-// of FHIR stores to return in a single response.  If zero
-// the default page size of 100 is used.
-func (c *ProjectsLocationsDatasetsFhirStoresListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsFhirStoresListCall {
-	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
-	return c
-}
-
-// PageToken sets the optional parameter "pageToken": The
-// next_page_token value returned from the previous List request, if
-// any.
-func (c *ProjectsLocationsDatasetsFhirStoresListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsFhirStoresListCall {
-	c.urlParams_.Set("pageToken", pageToken)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresListCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsFhirStoresListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresListCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresListCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresListCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresListCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/fhirStores")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.list" call.
-// Exactly one of *ListFhirStoresResponse or error will be non-nil. Any
-// non-2xx status code is an error. Response headers are in either
-// *ListFhirStoresResponse.ServerResponse.Header or (if a response was
-// returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresListCall) Do(opts ...googleapi.CallOption) (*ListFhirStoresResponse, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &ListFhirStoresResponse{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Lists the FHIR stores in the given dataset.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.list",
-	//   "parameterOrder": [
-	//     "parent"
-	//   ],
-	//   "parameters": {
-	//     "pageSize": {
-	//       "description": "Limit on the number of FHIR stores to return in a single response.  If zero\nthe default page size of 100 is used.",
-	//       "format": "int32",
-	//       "location": "query",
-	//       "type": "integer"
-	//     },
-	//     "pageToken": {
-	//       "description": "The next_page_token value returned from the previous List request, if any.",
-	//       "location": "query",
-	//       "type": "string"
-	//     },
-	//     "parent": {
-	//       "description": "Name of the dataset.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/fhirStores",
-	//   "response": {
-	//     "$ref": "ListFhirStoresResponse"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// Pages invokes f for each page of results.
-// A non-nil error returned from f will halt the iteration.
-// The provided context supersedes any context provided to the Context method.
-func (c *ProjectsLocationsDatasetsFhirStoresListCall) Pages(ctx context.Context, f func(*ListFhirStoresResponse) error) error {
-	c.ctx_ = ctx
-	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
-	for {
-		x, err := c.Do()
-		if err != nil {
-			return err
-		}
-		if err := f(x); err != nil {
-			return err
-		}
-		if x.NextPageToken == "" {
-			return nil
-		}
-		c.PageToken(x.NextPageToken)
-	}
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.patch":
-
-type ProjectsLocationsDatasetsFhirStoresPatchCall struct {
-	s          *Service
-	name       string
-	fhirstore  *FhirStore
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Patch: Updates the FHIR store.
-func (r *ProjectsLocationsDatasetsFhirStoresService) Patch(name string, fhirstore *FhirStore) *ProjectsLocationsDatasetsFhirStoresPatchCall {
-	c := &ProjectsLocationsDatasetsFhirStoresPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	c.fhirstore = fhirstore
-	return c
-}
-
-// UpdateMask sets the optional parameter "updateMask": The update mask
-// applies to the resource. For the `FieldMask`
-// definition,
-// see
-// https://developers.google.com/protocol-buffers/docs/re
-// ference/google.protobuf#fieldmask
-func (c *ProjectsLocationsDatasetsFhirStoresPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsFhirStoresPatchCall {
-	c.urlParams_.Set("updateMask", updateMask)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresPatchCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresPatchCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresPatchCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresPatchCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.fhirstore)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("PATCH", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.patch" call.
-// Exactly one of *FhirStore or error will be non-nil. Any non-2xx
-// status code is an error. Response headers are in either
-// *FhirStore.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresPatchCall) Do(opts ...googleapi.CallOption) (*FhirStore, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &FhirStore{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Updates the FHIR store.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}",
-	//   "httpMethod": "PATCH",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.patch",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "Output only. Resource name of the FHIR store, of the form\n`projects/{project_id}/datasets/{dataset_id}/fhirStores/{fhir_store_id}`.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     },
-	//     "updateMask": {
-	//       "description": "The update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask",
-	//       "format": "google-fieldmask",
-	//       "location": "query",
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "request": {
-	//     "$ref": "FhirStore"
-	//   },
-	//   "response": {
-	//     "$ref": "FhirStore"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.setIamPolicy":
-
-type ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall struct {
-	s                   *Service
-	resource            string
-	setiampolicyrequest *SetIamPolicyRequest
-	urlParams_          gensupport.URLParams
-	ctx_                context.Context
-	header_             http.Header
-}
-
-// SetIamPolicy: Sets the access control policy for a FHIR store or
-// security label within a
-// FHIR store. Replaces any existing policy.
-//
-// Authorization requires the Google IAM
-// permission
-// 'healthcare.fhirStores.setIamPolicy' for a FHIR store
-// or
-// 'healthcare.securityLabels.setIamPolicy' for a security label
-func (r *ProjectsLocationsDatasetsFhirStoresService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall {
-	c := &ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.resource = resource
-	c.setiampolicyrequest = setiampolicyrequest
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+resource}:setIamPolicy")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"resource": c.resource,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.setIamPolicy" call.
-// Exactly one of *Policy or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Policy.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Policy{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Sets the access control policy for a FHIR store or security label within a\nFHIR store. Replaces any existing policy.\n\nAuthorization requires the Google IAM permission\n'healthcare.fhirStores.setIamPolicy' for a FHIR store or\n'healthcare.securityLabels.setIamPolicy' for a security label",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}:setIamPolicy",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.setIamPolicy",
-	//   "parameterOrder": [
-	//     "resource"
-	//   ],
-	//   "parameters": {
-	//     "resource": {
-	//       "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+resource}:setIamPolicy",
-	//   "request": {
-	//     "$ref": "SetIamPolicyRequest"
-	//   },
-	//   "response": {
-	//     "$ref": "Policy"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.testIamPermissions":
-
-type ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall struct {
-	s                         *Service
-	resource                  string
-	testiampermissionsrequest *TestIamPermissionsRequest
-	urlParams_                gensupport.URLParams
-	ctx_                      context.Context
-	header_                   http.Header
-}
-
-// TestIamPermissions: Returns permissions that a caller has on the
-// specified resource.  If the
-// resource does not exist, this will return an empty set of
-// permissions, not
-// a NOT_FOUND error.
-//
-// There is no permission required to make this API call.
-func (r *ProjectsLocationsDatasetsFhirStoresService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall {
-	c := &ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.resource = resource
-	c.testiampermissionsrequest = testiampermissionsrequest
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+resource}:testIamPermissions")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"resource": c.resource,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.testIamPermissions" call.
-// Exactly one of *TestIamPermissionsResponse or error will be non-nil.
-// Any non-2xx status code is an error. Response headers are in either
-// *TestIamPermissionsResponse.ServerResponse.Header or (if a response
-// was returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &TestIamPermissionsResponse{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Returns permissions that a caller has on the specified resource.  If the\nresource does not exist, this will return an empty set of permissions, not\na NOT_FOUND error.\n\nThere is no permission required to make this API call.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}:testIamPermissions",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.testIamPermissions",
-	//   "parameterOrder": [
-	//     "resource"
-	//   ],
-	//   "parameters": {
-	//     "resource": {
-	//       "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/.+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+resource}:testIamPermissions",
-	//   "request": {
-	//     "$ref": "TestIamPermissionsRequest"
-	//   },
-	//   "response": {
-	//     "$ref": "TestIamPermissionsResponse"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.resources._search":
-
-type ProjectsLocationsDatasetsFhirStoresResourcesSearchCall struct {
-	s                      *Service
-	parent                 string
-	searchresourcesrequest *SearchResourcesRequest
-	urlParams_             gensupport.URLParams
-	ctx_                   context.Context
-	header_                http.Header
-}
-
-// Search: Searches resources in the given FHIR store.
-//
-// # Search Parameters
-//
-// The server's capability statement, retrieved
-// through
-// GetCapabilityStatement, indicates which search
-// parameters are supported on each FHIR resource.
-//
-// # Search Modifiers
-//
-// Modifier   | Supported
-// ----------- | ---------
-// `:missing`  | Yes
-// `:exact`    | Yes
-// `:contains` | Yes
-// `:text`     | Yes
-// `:in`       | Yes
-// `:not-in`   | Yes
-// `:above`    | Yes
-// `:below`    | Yes
-// `:[type]`   | Yes
-// `:not`      | Yes
-// `:recurse`  | No
-func (r *ProjectsLocationsDatasetsFhirStoresResourcesService) Search(parent string, searchresourcesrequest *SearchResourcesRequest) *ProjectsLocationsDatasetsFhirStoresResourcesSearchCall {
-	c := &ProjectsLocationsDatasetsFhirStoresResourcesSearchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	c.searchresourcesrequest = searchresourcesrequest
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesSearchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresResourcesSearchCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesSearchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresResourcesSearchCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesSearchCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesSearchCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.searchresourcesrequest)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/resources/_search")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.resources._search" call.
-// Exactly one of *HttpBody or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *HttpBody.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesSearchCall) Do(opts ...googleapi.CallOption) (*HttpBody, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &HttpBody{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Searches resources in the given FHIR store.\n\n# Search Parameters\n\nThe server's capability statement, retrieved through\nGetCapabilityStatement, indicates which search\nparameters are supported on each FHIR resource.\n\n# Search Modifiers\n\nModifier   | Supported\n----------- | ---------\n`:missing`  | Yes\n`:exact`    | Yes\n`:contains` | Yes\n`:text`     | Yes\n`:in`       | Yes\n`:not-in`   | Yes\n`:above`    | Yes\n`:below`    | Yes\n`:[type]`   | Yes\n`:not`      | Yes\n`:recurse`  | No",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/_search",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.resources._search",
-	//   "parameterOrder": [
-	//     "parent"
-	//   ],
-	//   "parameters": {
-	//     "parent": {
-	//       "description": "Name of the FHIR store to retrieve resources from.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/resources/_search",
-	//   "request": {
-	//     "$ref": "SearchResourcesRequest"
-	//   },
-	//   "response": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.resources.conditionalDeleteResource":
-
-type ProjectsLocationsDatasetsFhirStoresResourcesConditionalDeleteResourceCall struct {
-	s          *Service
-	parent     string
-	type_      string
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// ConditionalDeleteResource: Deletes FHIR resources matching a search
-// query.
-// Note: unless resource versioning is disabled by setting
-// the
-// disable_resource_versioning flag
-// on the FHIR store, the deleted resources will be moved to a
-// history
-// repository that can still be retrieved through GetResourceVersion
-// and
-// related methods, unless they are removed by the
-// DeleteResourceVersions
-// method.
-func (r *ProjectsLocationsDatasetsFhirStoresResourcesService) ConditionalDeleteResource(parent string, type_ string) *ProjectsLocationsDatasetsFhirStoresResourcesConditionalDeleteResourceCall {
-	c := &ProjectsLocationsDatasetsFhirStoresResourcesConditionalDeleteResourceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	c.type_ = type_
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesConditionalDeleteResourceCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresResourcesConditionalDeleteResourceCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesConditionalDeleteResourceCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresResourcesConditionalDeleteResourceCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesConditionalDeleteResourceCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesConditionalDeleteResourceCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/resources/{+type}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("DELETE", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-		"type":   c.type_,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.resources.conditionalDeleteResource" call.
-// Exactly one of *Empty or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Empty.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesConditionalDeleteResourceCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Empty{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Deletes FHIR resources matching a search query.\nNote: unless resource versioning is disabled by setting the\ndisable_resource_versioning flag\non the FHIR store, the deleted resources will be moved to a history\nrepository that can still be retrieved through GetResourceVersion and\nrelated methods, unless they are removed by the DeleteResourceVersions\nmethod.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}",
-	//   "httpMethod": "DELETE",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.resources.conditionalDeleteResource",
-	//   "parameterOrder": [
-	//     "parent",
-	//     "type"
-	//   ],
-	//   "parameters": {
-	//     "parent": {
-	//       "description": "The name of the FHIR store this resource belongs to.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     },
-	//     "type": {
-	//       "description": "The type of the resource to update.",
-	//       "location": "path",
-	//       "pattern": "^[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/resources/{+type}",
-	//   "response": {
-	//     "$ref": "Empty"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.resources.conditionalPatchResource":
-
-type ProjectsLocationsDatasetsFhirStoresResourcesConditionalPatchResourceCall struct {
-	s          *Service
-	parent     string
-	type_      string
-	httpbody   *HttpBody
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// ConditionalPatchResource: Updates parts of a resource if the resource
-// exists based on the
-// search criteria specified via query parameters.
-func (r *ProjectsLocationsDatasetsFhirStoresResourcesService) ConditionalPatchResource(parent string, type_ string, httpbody *HttpBody) *ProjectsLocationsDatasetsFhirStoresResourcesConditionalPatchResourceCall {
-	c := &ProjectsLocationsDatasetsFhirStoresResourcesConditionalPatchResourceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	c.type_ = type_
-	c.httpbody = httpbody
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesConditionalPatchResourceCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresResourcesConditionalPatchResourceCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesConditionalPatchResourceCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresResourcesConditionalPatchResourceCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesConditionalPatchResourceCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesConditionalPatchResourceCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.httpbody)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/resources/{+type}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("PATCH", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-		"type":   c.type_,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.resources.conditionalPatchResource" call.
-// Exactly one of *HttpBody or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *HttpBody.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesConditionalPatchResourceCall) Do(opts ...googleapi.CallOption) (*HttpBody, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &HttpBody{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Updates parts of a resource if the resource exists based on the\nsearch criteria specified via query parameters.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}",
-	//   "httpMethod": "PATCH",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.resources.conditionalPatchResource",
-	//   "parameterOrder": [
-	//     "parent",
-	//     "type"
-	//   ],
-	//   "parameters": {
-	//     "parent": {
-	//       "description": "The name of the FHIR store this resource belongs to.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     },
-	//     "type": {
-	//       "description": "The type of the resource to update.",
-	//       "location": "path",
-	//       "pattern": "^[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/resources/{+type}",
-	//   "request": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "response": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.resources.conditionalUpdateResource":
-
-type ProjectsLocationsDatasetsFhirStoresResourcesConditionalUpdateResourceCall struct {
-	s          *Service
-	parent     string
-	type_      string
-	httpbody   *HttpBody
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// ConditionalUpdateResource: Updates the entire resource if the
-// resource exists based on the
-// search criteria specified via query parameters.
-//
-func (r *ProjectsLocationsDatasetsFhirStoresResourcesService) ConditionalUpdateResource(parent string, type_ string, httpbody *HttpBody) *ProjectsLocationsDatasetsFhirStoresResourcesConditionalUpdateResourceCall {
-	c := &ProjectsLocationsDatasetsFhirStoresResourcesConditionalUpdateResourceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	c.type_ = type_
-	c.httpbody = httpbody
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesConditionalUpdateResourceCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresResourcesConditionalUpdateResourceCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesConditionalUpdateResourceCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresResourcesConditionalUpdateResourceCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesConditionalUpdateResourceCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesConditionalUpdateResourceCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.httpbody)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/resources/{+type}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("PUT", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-		"type":   c.type_,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.resources.conditionalUpdateResource" call.
-// Exactly one of *HttpBody or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *HttpBody.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesConditionalUpdateResourceCall) Do(opts ...googleapi.CallOption) (*HttpBody, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &HttpBody{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Updates the entire resource if the resource exists based on the\nsearch criteria specified via query parameters.\n",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}",
-	//   "httpMethod": "PUT",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.resources.conditionalUpdateResource",
-	//   "parameterOrder": [
-	//     "parent",
-	//     "type"
-	//   ],
-	//   "parameters": {
-	//     "parent": {
-	//       "description": "The name of the FHIR store this resource belongs to.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     },
-	//     "type": {
-	//       "description": "The type of the resource to update.",
-	//       "location": "path",
-	//       "pattern": "^[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/resources/{+type}",
-	//   "request": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "response": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.resources.createResource":
-
-type ProjectsLocationsDatasetsFhirStoresResourcesCreateResourceCall struct {
-	s          *Service
-	parent     string
-	type_      string
-	httpbody   *HttpBody
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// CreateResource: Creates a FHIR resource.
-//
-func (r *ProjectsLocationsDatasetsFhirStoresResourcesService) CreateResource(parent string, type_ string, httpbody *HttpBody) *ProjectsLocationsDatasetsFhirStoresResourcesCreateResourceCall {
-	c := &ProjectsLocationsDatasetsFhirStoresResourcesCreateResourceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	c.type_ = type_
-	c.httpbody = httpbody
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesCreateResourceCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresResourcesCreateResourceCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesCreateResourceCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresResourcesCreateResourceCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesCreateResourceCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesCreateResourceCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.httpbody)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/resources/{+type}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-		"type":   c.type_,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.resources.createResource" call.
-// Exactly one of *HttpBody or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *HttpBody.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesCreateResourceCall) Do(opts ...googleapi.CallOption) (*HttpBody, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &HttpBody{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Creates a FHIR resource.\n",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.resources.createResource",
-	//   "parameterOrder": [
-	//     "parent",
-	//     "type"
-	//   ],
-	//   "parameters": {
-	//     "parent": {
-	//       "description": "The name of the FHIR store this resource belongs to.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     },
-	//     "type": {
-	//       "description": "The type of the resource to create.",
-	//       "location": "path",
-	//       "pattern": "^[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/resources/{+type}",
-	//   "request": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "response": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.resources.delete":
-
-type ProjectsLocationsDatasetsFhirStoresResourcesDeleteCall struct {
-	s          *Service
-	name       string
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Delete: Deletes a FHIR resource.
-// Note: unless resource versioning is disabled by setting
-// the
-// disable_resource_versioning flag
-// on the FHIR store, the deleted resources will be moved to a
-// history
-// repository that can still be retrieved through GetResourceVersion
-// and
-// related methods, unless they are removed by the
-// DeleteResourceVersions
-// method.
-func (r *ProjectsLocationsDatasetsFhirStoresResourcesService) Delete(name string) *ProjectsLocationsDatasetsFhirStoresResourcesDeleteCall {
-	c := &ProjectsLocationsDatasetsFhirStoresResourcesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresResourcesDeleteCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresResourcesDeleteCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesDeleteCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesDeleteCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("DELETE", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.resources.delete" call.
-// Exactly one of *HttpBody or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *HttpBody.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesDeleteCall) Do(opts ...googleapi.CallOption) (*HttpBody, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &HttpBody{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Deletes a FHIR resource.\nNote: unless resource versioning is disabled by setting the\ndisable_resource_versioning flag\non the FHIR store, the deleted resources will be moved to a history\nrepository that can still be retrieved through GetResourceVersion and\nrelated methods, unless they are removed by the DeleteResourceVersions\nmethod.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}/{resourcesId1}",
-	//   "httpMethod": "DELETE",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.resources.delete",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The name of the resource to delete.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/resources/[^/]+/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "response": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.resources.delete$purge":
-
-type ProjectsLocationsDatasetsFhirStoresResourcesDeletePurgeCall struct {
-	s          *Service
-	name       string
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// DeletePurge: Deletes all the historical versions of a resource
-// (excluding current
-// version) from the FHIR store. To remove all versions of a resource,
-// first
-// delete the current version and call this API.
-func (r *ProjectsLocationsDatasetsFhirStoresResourcesService) DeletePurge(name string) *ProjectsLocationsDatasetsFhirStoresResourcesDeletePurgeCall {
-	c := &ProjectsLocationsDatasetsFhirStoresResourcesDeletePurgeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesDeletePurgeCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresResourcesDeletePurgeCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesDeletePurgeCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresResourcesDeletePurgeCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesDeletePurgeCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesDeletePurgeCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}/$purge")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("DELETE", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.resources.delete$purge" call.
-// Exactly one of *Empty or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Empty.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesDeletePurgeCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Empty{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Deletes all the historical versions of a resource (excluding current\nversion) from the FHIR store. To remove all versions of a resource, first\ndelete the current version and call this API.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}/{resourcesId1}/$purge",
-	//   "httpMethod": "DELETE",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.resources.delete$purge",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The name of the resource to purge.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/resources/[^/]+/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}/$purge",
-	//   "response": {
-	//     "$ref": "Empty"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.resources.get":
-
-type ProjectsLocationsDatasetsFhirStoresResourcesGetCall struct {
-	s            *Service
-	name         string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// Get: Gets a FHIR resource.
-//
-func (r *ProjectsLocationsDatasetsFhirStoresResourcesService) Get(name string) *ProjectsLocationsDatasetsFhirStoresResourcesGetCall {
-	c := &ProjectsLocationsDatasetsFhirStoresResourcesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresResourcesGetCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresResourcesGetCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresResourcesGetCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesGetCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesGetCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.resources.get" call.
-// Exactly one of *HttpBody or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *HttpBody.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesGetCall) Do(opts ...googleapi.CallOption) (*HttpBody, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &HttpBody{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Gets a FHIR resource.\n",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}/{resourcesId1}",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.resources.get",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The name of the resource to retrieve.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/resources/[^/]+/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "response": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.resources.getMetadata":
-
-type ProjectsLocationsDatasetsFhirStoresResourcesGetMetadataCall struct {
-	s            *Service
-	name         string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// GetMetadata: Gets the capabilities statement for the store.
-//
-func (r *ProjectsLocationsDatasetsFhirStoresResourcesService) GetMetadata(name string) *ProjectsLocationsDatasetsFhirStoresResourcesGetMetadataCall {
-	c := &ProjectsLocationsDatasetsFhirStoresResourcesGetMetadataCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesGetMetadataCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresResourcesGetMetadataCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesGetMetadataCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresResourcesGetMetadataCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesGetMetadataCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresResourcesGetMetadataCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesGetMetadataCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesGetMetadataCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}/resources/metadata")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.resources.getMetadata" call.
-// Exactly one of *HttpBody or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *HttpBody.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesGetMetadataCall) Do(opts ...googleapi.CallOption) (*HttpBody, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &HttpBody{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Gets the capabilities statement for the store.\n",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/metadata",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.resources.getMetadata",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "Name of the FHIR store to retrieve the capabilities for.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}/resources/metadata",
-	//   "response": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.resources.patch":
-
-type ProjectsLocationsDatasetsFhirStoresResourcesPatchCall struct {
-	s          *Service
-	name       string
-	httpbody   *HttpBody
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Patch: Updates part of an existing resource.
-//
-func (r *ProjectsLocationsDatasetsFhirStoresResourcesService) Patch(name string, httpbody *HttpBody) *ProjectsLocationsDatasetsFhirStoresResourcesPatchCall {
-	c := &ProjectsLocationsDatasetsFhirStoresResourcesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	c.httpbody = httpbody
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresResourcesPatchCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresResourcesPatchCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesPatchCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesPatchCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.httpbody)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("PATCH", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.resources.patch" call.
-// Exactly one of *HttpBody or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *HttpBody.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesPatchCall) Do(opts ...googleapi.CallOption) (*HttpBody, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &HttpBody{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Updates part of an existing resource.\n",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}/{resourcesId1}",
-	//   "httpMethod": "PATCH",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.resources.patch",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The name of the resource to update.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/resources/[^/]+/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "request": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "response": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.resources.searchResources":
-
-type ProjectsLocationsDatasetsFhirStoresResourcesSearchResourcesCall struct {
-	s            *Service
-	parent       string
-	resourceType string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// SearchResources: Searches resources in the given FHIR store.
-//
-// # Search Parameters
-//
-// The server's capability statement, retrieved
-// through
-// GetCapabilityStatement, indicates which search
-// parameters are supported on each FHIR resource.
-//
-// # Search Modifiers
-//
-// Modifier   | Supported
-// ----------- | ---------
-// `:missing`  | Yes
-// `:exact`    | Yes
-// `:contains` | Yes
-// `:text`     | Yes
-// `:in`       | Yes
-// `:not-in`   | Yes
-// `:above`    | Yes
-// `:below`    | Yes
-// `:[type]`   | Yes
-// `:not`      | Yes
-// `:recurse`  | No
-func (r *ProjectsLocationsDatasetsFhirStoresResourcesService) SearchResources(parent string, resourceType string) *ProjectsLocationsDatasetsFhirStoresResourcesSearchResourcesCall {
-	c := &ProjectsLocationsDatasetsFhirStoresResourcesSearchResourcesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	c.resourceType = resourceType
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesSearchResourcesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresResourcesSearchResourcesCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesSearchResourcesCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresResourcesSearchResourcesCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesSearchResourcesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresResourcesSearchResourcesCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesSearchResourcesCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesSearchResourcesCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/resources/{+resourceType}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent":       c.parent,
-		"resourceType": c.resourceType,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.resources.searchResources" call.
-// Exactly one of *HttpBody or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *HttpBody.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesSearchResourcesCall) Do(opts ...googleapi.CallOption) (*HttpBody, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &HttpBody{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Searches resources in the given FHIR store.\n\n# Search Parameters\n\nThe server's capability statement, retrieved through\nGetCapabilityStatement, indicates which search\nparameters are supported on each FHIR resource.\n\n# Search Modifiers\n\nModifier   | Supported\n----------- | ---------\n`:missing`  | Yes\n`:exact`    | Yes\n`:contains` | Yes\n`:text`     | Yes\n`:in`       | Yes\n`:not-in`   | Yes\n`:above`    | Yes\n`:below`    | Yes\n`:[type]`   | Yes\n`:not`      | Yes\n`:recurse`  | No",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.resources.searchResources",
-	//   "parameterOrder": [
-	//     "parent",
-	//     "resourceType"
-	//   ],
-	//   "parameters": {
-	//     "parent": {
-	//       "description": "Name of the FHIR store to retrieve resources from.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     },
-	//     "resourceType": {
-	//       "description": "The type of the resource to search.",
-	//       "location": "path",
-	//       "pattern": "^.+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/resources/{+resourceType}",
-	//   "response": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.resources.update":
-
-type ProjectsLocationsDatasetsFhirStoresResourcesUpdateCall struct {
-	s          *Service
-	name       string
-	httpbody   *HttpBody
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Update: Updates the entire resource or creates a new resource with a
-// client
-// specified ID if the resource does not exist and the FHIR store
-// has
-// enable_update_create set.
-//
-func (r *ProjectsLocationsDatasetsFhirStoresResourcesService) Update(name string, httpbody *HttpBody) *ProjectsLocationsDatasetsFhirStoresResourcesUpdateCall {
-	c := &ProjectsLocationsDatasetsFhirStoresResourcesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	c.httpbody = httpbody
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesUpdateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresResourcesUpdateCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesUpdateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresResourcesUpdateCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesUpdateCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesUpdateCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.httpbody)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("PUT", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.resources.update" call.
-// Exactly one of *HttpBody or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *HttpBody.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesUpdateCall) Do(opts ...googleapi.CallOption) (*HttpBody, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &HttpBody{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Updates the entire resource or creates a new resource with a client\nspecified ID if the resource does not exist and the FHIR store has\nenable_update_create set.\n",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}/{resourcesId1}",
-	//   "httpMethod": "PUT",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.resources.update",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The name of the resource to update.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/resources/[^/]+/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "request": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "response": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.resources.Patient.get$everything":
-
-type ProjectsLocationsDatasetsFhirStoresResourcesPatientGetEverythingCall struct {
-	s            *Service
-	name         string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// GetEverything: Gets all the resources in the patient compartment.
-//
-func (r *ProjectsLocationsDatasetsFhirStoresResourcesPatientService) GetEverything(name string) *ProjectsLocationsDatasetsFhirStoresResourcesPatientGetEverythingCall {
-	c := &ProjectsLocationsDatasetsFhirStoresResourcesPatientGetEverythingCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// End sets the optional parameter "end": The response includes records
-// prior to the end date. If no end date is
-// provided, all records subsequent to the start date are in scope.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesPatientGetEverythingCall) End(end string) *ProjectsLocationsDatasetsFhirStoresResourcesPatientGetEverythingCall {
-	c.urlParams_.Set("end", end)
-	return c
-}
-
-// Start sets the optional parameter "start": The response includes
-// records subsequent to the start date. If no start
-// date is provided, all records prior to the end date are in scope.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesPatientGetEverythingCall) Start(start string) *ProjectsLocationsDatasetsFhirStoresResourcesPatientGetEverythingCall {
-	c.urlParams_.Set("start", start)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesPatientGetEverythingCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresResourcesPatientGetEverythingCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesPatientGetEverythingCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresResourcesPatientGetEverythingCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesPatientGetEverythingCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresResourcesPatientGetEverythingCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesPatientGetEverythingCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesPatientGetEverythingCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}/$everything")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.resources.Patient.get$everything" call.
-// Exactly one of *HttpBody or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *HttpBody.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesPatientGetEverythingCall) Do(opts ...googleapi.CallOption) (*HttpBody, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &HttpBody{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Gets all the resources in the patient compartment.\n",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/Patient/{PatientId}/$everything",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.resources.Patient.get$everything",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "end": {
-	//       "description": "The response includes records prior to the end date. If no end date is\nprovided, all records subsequent to the start date are in scope.",
-	//       "location": "query",
-	//       "type": "string"
-	//     },
-	//     "name": {
-	//       "description": "Name of the patient for which the information is required.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/resources/Patient/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     },
-	//     "start": {
-	//       "description": "The response includes records subsequent to the start date. If no start\ndate is provided, all records prior to the end date are in scope.",
-	//       "location": "query",
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}/$everything",
-	//   "response": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.resources._history.get":
-
-type ProjectsLocationsDatasetsFhirStoresResourcesHistoryGetCall struct {
-	s            *Service
-	name         string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// Get: Gets a version (current or historical) of FHIR resource by
-// version id.
-//
-func (r *ProjectsLocationsDatasetsFhirStoresResourcesHistoryService) Get(name string) *ProjectsLocationsDatasetsFhirStoresResourcesHistoryGetCall {
-	c := &ProjectsLocationsDatasetsFhirStoresResourcesHistoryGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesHistoryGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresResourcesHistoryGetCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesHistoryGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresResourcesHistoryGetCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesHistoryGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresResourcesHistoryGetCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesHistoryGetCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesHistoryGetCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.resources._history.get" call.
-// Exactly one of *HttpBody or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *HttpBody.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesHistoryGetCall) Do(opts ...googleapi.CallOption) (*HttpBody, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &HttpBody{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Gets a version (current or historical) of FHIR resource by version id.\n",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}/{resourcesId1}/_history/{_historyId}",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.resources._history.get",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The name of the resource version to retrieve.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/resources/[^/]+/[^/]+/_history/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "response": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.resources._history.list":
-
-type ProjectsLocationsDatasetsFhirStoresResourcesHistoryListCall struct {
-	s            *Service
-	name         string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// List: Lists all the versions of a resource (including the current
-// version and
-// deleted versions) from the FHIR store.
-//
-func (r *ProjectsLocationsDatasetsFhirStoresResourcesHistoryService) List(name string) *ProjectsLocationsDatasetsFhirStoresResourcesHistoryListCall {
-	c := &ProjectsLocationsDatasetsFhirStoresResourcesHistoryListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// At sets the optional parameter "at": Only include resource versions
-// that were current at some point during the
-// time period specified in the date time value. The date parameter
-// format is
-// yyyy-mm-ddThh:mm:ss[Z|(+|-)hh:mm]
-// Clients may specify any of the following:
-// An entire year: `_at=2019`
-// An entire month: `_at=2019-01`
-// A specific day: `_at=2019-01-20`
-// A specific second: `_at=2018-12-31T23:59:58Z`
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesHistoryListCall) At(at string) *ProjectsLocationsDatasetsFhirStoresResourcesHistoryListCall {
-	c.urlParams_.Set("at", at)
-	return c
-}
-
-// Count sets the optional parameter "count": The maximum number of
-// search results on a page.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesHistoryListCall) Count(count int64) *ProjectsLocationsDatasetsFhirStoresResourcesHistoryListCall {
-	c.urlParams_.Set("count", fmt.Sprint(count))
-	return c
-}
-
-// Page sets the optional parameter "page": Used to retrieve the first,
-// previous, next, or last page of resource
-// versions when using pagination. Value should be set to the value of
-// the
-// `link.url` field returned in the response to the previous request,
-// where
-// `link.relation` is "first", "previous", "next" or "last".
-// Omit `page` if no previous request has been made.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesHistoryListCall) Page(page string) *ProjectsLocationsDatasetsFhirStoresResourcesHistoryListCall {
-	c.urlParams_.Set("page", page)
-	return c
-}
-
-// Since sets the optional parameter "since": Only include resource
-// versions that were created at or after the given
-// instant in time. The instant in time uses the
-// format
-// YYYY-MM-DDThh:mm:ss.sss+zz:zz (for example
-// 2015-02-07T13:28:17.239+02:00 or
-// 2017-01-01T00:00:00Z). The time must be specified to the second
-// and
-// include a time zone.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesHistoryListCall) Since(since string) *ProjectsLocationsDatasetsFhirStoresResourcesHistoryListCall {
-	c.urlParams_.Set("since", since)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesHistoryListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresResourcesHistoryListCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesHistoryListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresResourcesHistoryListCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesHistoryListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresResourcesHistoryListCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesHistoryListCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesHistoryListCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}/_history")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.resources._history.list" call.
-// Exactly one of *HttpBody or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *HttpBody.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresResourcesHistoryListCall) Do(opts ...googleapi.CallOption) (*HttpBody, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &HttpBody{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Lists all the versions of a resource (including the current version and\ndeleted versions) from the FHIR store.\n",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/resources/{resourcesId}/{resourcesId1}/_history",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.resources._history.list",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "at": {
-	//       "description": "Only include resource versions that were current at some point during the\ntime period specified in the date time value. The date parameter format is\nyyyy-mm-ddThh:mm:ss[Z|(+|-)hh:mm]\nClients may specify any of the following:\nAn entire year: `_at=2019`\nAn entire month: `_at=2019-01`\nA specific day: `_at=2019-01-20`\nA specific second: `_at=2018-12-31T23:59:58Z`",
-	//       "location": "query",
-	//       "type": "string"
-	//     },
-	//     "count": {
-	//       "description": "The maximum number of search results on a page.",
-	//       "format": "int32",
-	//       "location": "query",
-	//       "type": "integer"
-	//     },
-	//     "name": {
-	//       "description": "The name of the resource to retrieve.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/resources/[^/]+/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     },
-	//     "page": {
-	//       "description": "Used to retrieve the first, previous, next, or last page of resource\nversions when using pagination. Value should be set to the value of the\n`link.url` field returned in the response to the previous request, where\n`link.relation` is \"first\", \"previous\", \"next\" or \"last\".\nOmit `page` if no previous request has been made.",
-	//       "location": "query",
-	//       "type": "string"
-	//     },
-	//     "since": {
-	//       "description": "Only include resource versions that were created at or after the given\ninstant in time. The instant in time uses the format\nYYYY-MM-DDThh:mm:ss.sss+zz:zz (for example 2015-02-07T13:28:17.239+02:00 or\n2017-01-01T00:00:00Z). The time must be specified to the second and\ninclude a time zone.",
-	//       "location": "query",
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}/_history",
-	//   "response": {
-	//     "$ref": "HttpBody"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.securityLabels.getIamPolicy":
-
-type ProjectsLocationsDatasetsFhirStoresSecurityLabelsGetIamPolicyCall struct {
-	s                   *Service
-	resource            string
-	getiampolicyrequest *GetIamPolicyRequest
-	urlParams_          gensupport.URLParams
-	ctx_                context.Context
-	header_             http.Header
-}
-
-// GetIamPolicy: Gets the access control policy for a FHIR store or
-// security label within a
-// FHIR store. Returns NOT_FOUND error if the resource does not exist.
-// Returns
-// an empty policy if the resource exists but does not have a policy
-// set.
-//
-// Authorization requires the Google IAM
-// permission
-// 'healthcare.fhirStores.getIamPolicy' for a FHIR store
-// or
-// 'healthcare.securityLabels.getIamPolicy' for a security label
-func (r *ProjectsLocationsDatasetsFhirStoresSecurityLabelsService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *ProjectsLocationsDatasetsFhirStoresSecurityLabelsGetIamPolicyCall {
-	c := &ProjectsLocationsDatasetsFhirStoresSecurityLabelsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.resource = resource
-	c.getiampolicyrequest = getiampolicyrequest
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresSecurityLabelsGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresSecurityLabelsGetIamPolicyCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresSecurityLabelsGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresSecurityLabelsGetIamPolicyCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresSecurityLabelsGetIamPolicyCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresSecurityLabelsGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.getiampolicyrequest)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+resource}:getIamPolicy")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"resource": c.resource,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.securityLabels.getIamPolicy" call.
-// Exactly one of *Policy or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Policy.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresSecurityLabelsGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Policy{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Gets the access control policy for a FHIR store or security label within a\nFHIR store. Returns NOT_FOUND error if the resource does not exist. Returns\nan empty policy if the resource exists but does not have a policy set.\n\nAuthorization requires the Google IAM permission\n'healthcare.fhirStores.getIamPolicy' for a FHIR store or\n'healthcare.securityLabels.getIamPolicy' for a security label",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/securityLabels/{securityLabelsId}:getIamPolicy",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.securityLabels.getIamPolicy",
-	//   "parameterOrder": [
-	//     "resource"
-	//   ],
-	//   "parameters": {
-	//     "resource": {
-	//       "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/securityLabels/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+resource}:getIamPolicy",
-	//   "request": {
-	//     "$ref": "GetIamPolicyRequest"
-	//   },
-	//   "response": {
-	//     "$ref": "Policy"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.fhirStores.securityLabels.setIamPolicy":
-
-type ProjectsLocationsDatasetsFhirStoresSecurityLabelsSetIamPolicyCall struct {
-	s                   *Service
-	resource            string
-	setiampolicyrequest *SetIamPolicyRequest
-	urlParams_          gensupport.URLParams
-	ctx_                context.Context
-	header_             http.Header
-}
-
-// SetIamPolicy: Sets the access control policy for a FHIR store or
-// security label within a
-// FHIR store. Replaces any existing policy.
-//
-// Authorization requires the Google IAM
-// permission
-// 'healthcare.fhirStores.setIamPolicy' for a FHIR store
-// or
-// 'healthcare.securityLabels.setIamPolicy' for a security label
-func (r *ProjectsLocationsDatasetsFhirStoresSecurityLabelsService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsDatasetsFhirStoresSecurityLabelsSetIamPolicyCall {
-	c := &ProjectsLocationsDatasetsFhirStoresSecurityLabelsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.resource = resource
-	c.setiampolicyrequest = setiampolicyrequest
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsFhirStoresSecurityLabelsSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresSecurityLabelsSetIamPolicyCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsFhirStoresSecurityLabelsSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresSecurityLabelsSetIamPolicyCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsFhirStoresSecurityLabelsSetIamPolicyCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsFhirStoresSecurityLabelsSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+resource}:setIamPolicy")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"resource": c.resource,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.fhirStores.securityLabels.setIamPolicy" call.
-// Exactly one of *Policy or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Policy.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsFhirStoresSecurityLabelsSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Policy{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Sets the access control policy for a FHIR store or security label within a\nFHIR store. Replaces any existing policy.\n\nAuthorization requires the Google IAM permission\n'healthcare.fhirStores.setIamPolicy' for a FHIR store or\n'healthcare.securityLabels.setIamPolicy' for a security label",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/securityLabels/{securityLabelsId}:setIamPolicy",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.fhirStores.securityLabels.setIamPolicy",
-	//   "parameterOrder": [
-	//     "resource"
-	//   ],
-	//   "parameters": {
-	//     "resource": {
-	//       "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/securityLabels/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+resource}:setIamPolicy",
-	//   "request": {
-	//     "$ref": "SetIamPolicyRequest"
-	//   },
-	//   "response": {
-	//     "$ref": "Policy"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.hl7V2Stores.create":
-
-type ProjectsLocationsDatasetsHl7V2StoresCreateCall struct {
-	s          *Service
-	parent     string
-	hl7v2store *Hl7V2Store
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Create: Creates a new HL7v2 store within the parent dataset.
-func (r *ProjectsLocationsDatasetsHl7V2StoresService) Create(parent string, hl7v2store *Hl7V2Store) *ProjectsLocationsDatasetsHl7V2StoresCreateCall {
-	c := &ProjectsLocationsDatasetsHl7V2StoresCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	c.hl7v2store = hl7v2store
-	return c
-}
-
-// Hl7V2StoreId sets the optional parameter "hl7V2StoreId": The ID of
-// the HL7v2 store that is being created.
-// The string must match the following regex:
-// `[\p{L}\p{N}_\-\.]{1,256}`.
-func (c *ProjectsLocationsDatasetsHl7V2StoresCreateCall) Hl7V2StoreId(hl7V2StoreId string) *ProjectsLocationsDatasetsHl7V2StoresCreateCall {
-	c.urlParams_.Set("hl7V2StoreId", hl7V2StoreId)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsHl7V2StoresCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresCreateCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsHl7V2StoresCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresCreateCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsHl7V2StoresCreateCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsHl7V2StoresCreateCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.hl7v2store)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/hl7V2Stores")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.create" call.
-// Exactly one of *Hl7V2Store or error will be non-nil. Any non-2xx
-// status code is an error. Response headers are in either
-// *Hl7V2Store.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsHl7V2StoresCreateCall) Do(opts ...googleapi.CallOption) (*Hl7V2Store, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Hl7V2Store{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Creates a new HL7v2 store within the parent dataset.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.create",
-	//   "parameterOrder": [
-	//     "parent"
-	//   ],
-	//   "parameters": {
-	//     "hl7V2StoreId": {
-	//       "description": "The ID of the HL7v2 store that is being created.\nThe string must match the following regex: `[\\p{L}\\p{N}_\\-\\.]{1,256}`.",
-	//       "location": "query",
-	//       "type": "string"
-	//     },
-	//     "parent": {
-	//       "description": "The name of the dataset this HL7v2 store belongs to.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/hl7V2Stores",
-	//   "request": {
-	//     "$ref": "Hl7V2Store"
-	//   },
-	//   "response": {
-	//     "$ref": "Hl7V2Store"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.hl7V2Stores.delete":
-
-type ProjectsLocationsDatasetsHl7V2StoresDeleteCall struct {
-	s          *Service
-	name       string
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Delete: Deletes the specified HL7v2 store and removes all messages
-// that are
-// contained within it.
-func (r *ProjectsLocationsDatasetsHl7V2StoresService) Delete(name string) *ProjectsLocationsDatasetsHl7V2StoresDeleteCall {
-	c := &ProjectsLocationsDatasetsHl7V2StoresDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsHl7V2StoresDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresDeleteCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsHl7V2StoresDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresDeleteCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsHl7V2StoresDeleteCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsHl7V2StoresDeleteCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("DELETE", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.delete" call.
-// Exactly one of *Empty or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Empty.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsHl7V2StoresDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Empty{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Deletes the specified HL7v2 store and removes all messages that are\ncontained within it.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}",
-	//   "httpMethod": "DELETE",
-	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.delete",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The resource name of the HL7v2 store to delete.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "response": {
-	//     "$ref": "Empty"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.hl7V2Stores.get":
-
-type ProjectsLocationsDatasetsHl7V2StoresGetCall struct {
-	s            *Service
-	name         string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// Get: Gets the specified HL7v2 store.
-func (r *ProjectsLocationsDatasetsHl7V2StoresService) Get(name string) *ProjectsLocationsDatasetsHl7V2StoresGetCall {
-	c := &ProjectsLocationsDatasetsHl7V2StoresGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsHl7V2StoresGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresGetCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsHl7V2StoresGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsHl7V2StoresGetCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsHl7V2StoresGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresGetCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsHl7V2StoresGetCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsHl7V2StoresGetCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.get" call.
-// Exactly one of *Hl7V2Store or error will be non-nil. Any non-2xx
-// status code is an error. Response headers are in either
-// *Hl7V2Store.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsHl7V2StoresGetCall) Do(opts ...googleapi.CallOption) (*Hl7V2Store, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Hl7V2Store{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Gets the specified HL7v2 store.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.get",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The resource name of the HL7v2 store to get.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "response": {
-	//     "$ref": "Hl7V2Store"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
 // method id "healthcare.projects.locations.datasets.hl7V2Stores.getIamPolicy":
 
 type ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall struct {
@@ -14143,353 +2384,6 @@
 
 }
 
-// method id "healthcare.projects.locations.datasets.hl7V2Stores.list":
-
-type ProjectsLocationsDatasetsHl7V2StoresListCall struct {
-	s            *Service
-	parent       string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// List: Lists the HL7v2 stores in the given dataset.
-func (r *ProjectsLocationsDatasetsHl7V2StoresService) List(parent string) *ProjectsLocationsDatasetsHl7V2StoresListCall {
-	c := &ProjectsLocationsDatasetsHl7V2StoresListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	return c
-}
-
-// PageSize sets the optional parameter "pageSize": Limit on the number
-// of HL7v2 stores to return in a single response.
-// If zero the default page size of 100 is used.
-func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsHl7V2StoresListCall {
-	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
-	return c
-}
-
-// PageToken sets the optional parameter "pageToken": The
-// next_page_token value returned from the previous List request, if
-// any.
-func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsHl7V2StoresListCall {
-	c.urlParams_.Set("pageToken", pageToken)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresListCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsHl7V2StoresListCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresListCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/hl7V2Stores")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.list" call.
-// Exactly one of *ListHl7V2StoresResponse or error will be non-nil. Any
-// non-2xx status code is an error. Response headers are in either
-// *ListHl7V2StoresResponse.ServerResponse.Header or (if a response was
-// returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) Do(opts ...googleapi.CallOption) (*ListHl7V2StoresResponse, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &ListHl7V2StoresResponse{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Lists the HL7v2 stores in the given dataset.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.list",
-	//   "parameterOrder": [
-	//     "parent"
-	//   ],
-	//   "parameters": {
-	//     "pageSize": {
-	//       "description": "Limit on the number of HL7v2 stores to return in a single response.\nIf zero the default page size of 100 is used.",
-	//       "format": "int32",
-	//       "location": "query",
-	//       "type": "integer"
-	//     },
-	//     "pageToken": {
-	//       "description": "The next_page_token value returned from the previous List request, if any.",
-	//       "location": "query",
-	//       "type": "string"
-	//     },
-	//     "parent": {
-	//       "description": "Name of the dataset.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/hl7V2Stores",
-	//   "response": {
-	//     "$ref": "ListHl7V2StoresResponse"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// Pages invokes f for each page of results.
-// A non-nil error returned from f will halt the iteration.
-// The provided context supersedes any context provided to the Context method.
-func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) Pages(ctx context.Context, f func(*ListHl7V2StoresResponse) error) error {
-	c.ctx_ = ctx
-	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
-	for {
-		x, err := c.Do()
-		if err != nil {
-			return err
-		}
-		if err := f(x); err != nil {
-			return err
-		}
-		if x.NextPageToken == "" {
-			return nil
-		}
-		c.PageToken(x.NextPageToken)
-	}
-}
-
-// method id "healthcare.projects.locations.datasets.hl7V2Stores.patch":
-
-type ProjectsLocationsDatasetsHl7V2StoresPatchCall struct {
-	s          *Service
-	name       string
-	hl7v2store *Hl7V2Store
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Patch: Updates the HL7v2 store.
-func (r *ProjectsLocationsDatasetsHl7V2StoresService) Patch(name string, hl7v2store *Hl7V2Store) *ProjectsLocationsDatasetsHl7V2StoresPatchCall {
-	c := &ProjectsLocationsDatasetsHl7V2StoresPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	c.hl7v2store = hl7v2store
-	return c
-}
-
-// UpdateMask sets the optional parameter "updateMask": The update mask
-// applies to the resource. For the `FieldMask`
-// definition,
-// see
-// https://developers.google.com/protocol-buffers/docs/re
-// ference/google.protobuf#fieldmask
-func (c *ProjectsLocationsDatasetsHl7V2StoresPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsHl7V2StoresPatchCall {
-	c.urlParams_.Set("updateMask", updateMask)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsHl7V2StoresPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresPatchCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsHl7V2StoresPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresPatchCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsHl7V2StoresPatchCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsHl7V2StoresPatchCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.hl7v2store)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("PATCH", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.patch" call.
-// Exactly one of *Hl7V2Store or error will be non-nil. Any non-2xx
-// status code is an error. Response headers are in either
-// *Hl7V2Store.ServerResponse.Header or (if a response was returned at
-// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
-// to check whether the returned error was because
-// http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsHl7V2StoresPatchCall) Do(opts ...googleapi.CallOption) (*Hl7V2Store, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Hl7V2Store{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Updates the HL7v2 store.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}",
-	//   "httpMethod": "PATCH",
-	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.patch",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "Output only. Resource name of the HL7v2 store, of the form\n`projects/{project_id}/datasets/{dataset_id}/hl7V2Stores/{hl7v2_store_id}`.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     },
-	//     "updateMask": {
-	//       "description": "The update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask",
-	//       "format": "google-fieldmask",
-	//       "location": "query",
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "request": {
-	//     "$ref": "Hl7V2Store"
-	//   },
-	//   "response": {
-	//     "$ref": "Hl7V2Store"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
 // method id "healthcare.projects.locations.datasets.hl7V2Stores.setIamPolicy":
 
 type ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall struct {
@@ -14780,1032 +2674,6 @@
 
 }
 
-// method id "healthcare.projects.locations.datasets.hl7V2Stores.messages.create":
-
-type ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall struct {
-	s                    *Service
-	parent               string
-	createmessagerequest *CreateMessageRequest
-	urlParams_           gensupport.URLParams
-	ctx_                 context.Context
-	header_              http.Header
-}
-
-// Create: Creates a message and sends a notification to the Cloud
-// Pub/Sub topic. If
-// configured, the MLLP adapter listens to messages created by this
-// method and
-// sends those back to the hospital. A successful response indicates
-// the
-// message has been persisted to storage and a Cloud Pub/Sub
-// notification has
-// been sent. Sending to the hospital by the MLLP adapter
-// happens
-// asynchronously.
-func (r *ProjectsLocationsDatasetsHl7V2StoresMessagesService) Create(parent string, createmessagerequest *CreateMessageRequest) *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall {
-	c := &ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	c.createmessagerequest = createmessagerequest
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.createmessagerequest)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/messages")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.messages.create" call.
-// Exactly one of *Message or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Message.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall) Do(opts ...googleapi.CallOption) (*Message, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Message{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Creates a message and sends a notification to the Cloud Pub/Sub topic. If\nconfigured, the MLLP adapter listens to messages created by this method and\nsends those back to the hospital. A successful response indicates the\nmessage has been persisted to storage and a Cloud Pub/Sub notification has\nbeen sent. Sending to the hospital by the MLLP adapter happens\nasynchronously.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}/messages",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.messages.create",
-	//   "parameterOrder": [
-	//     "parent"
-	//   ],
-	//   "parameters": {
-	//     "parent": {
-	//       "description": "The name of the dataset this message belongs to.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/messages",
-	//   "request": {
-	//     "$ref": "CreateMessageRequest"
-	//   },
-	//   "response": {
-	//     "$ref": "Message"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.hl7V2Stores.messages.delete":
-
-type ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall struct {
-	s          *Service
-	name       string
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Delete: Deletes an HL7v2 message.
-func (r *ProjectsLocationsDatasetsHl7V2StoresMessagesService) Delete(name string) *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall {
-	c := &ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("DELETE", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.messages.delete" call.
-// Exactly one of *Empty or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Empty.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Empty{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Deletes an HL7v2 message.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}/messages/{messagesId}",
-	//   "httpMethod": "DELETE",
-	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.messages.delete",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The resource name of the HL7v2 message to delete.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+/messages/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "response": {
-	//     "$ref": "Empty"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.hl7V2Stores.messages.get":
-
-type ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall struct {
-	s            *Service
-	name         string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// Get: Gets an HL7v2 message.
-func (r *ProjectsLocationsDatasetsHl7V2StoresMessagesService) Get(name string) *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall {
-	c := &ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	return c
-}
-
-// View sets the optional parameter "view": Specifies which parts of the
-// Message resource should be returned
-// in the response.
-//
-// Possible values:
-//   "MESSAGE_VIEW_UNSPECIFIED"
-//   "RAW_ONLY"
-//   "PARSED_ONLY"
-//   "FULL"
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) View(view string) *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall {
-	c.urlParams_.Set("view", view)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.messages.get" call.
-// Exactly one of *Message or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Message.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) Do(opts ...googleapi.CallOption) (*Message, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Message{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Gets an HL7v2 message.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}/messages/{messagesId}",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.messages.get",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "The resource name of the HL7v2 message to retrieve.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+/messages/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     },
-	//     "view": {
-	//       "description": "Specifies which parts of the Message resource should be returned\nin the response.",
-	//       "enum": [
-	//         "MESSAGE_VIEW_UNSPECIFIED",
-	//         "RAW_ONLY",
-	//         "PARSED_ONLY",
-	//         "FULL"
-	//       ],
-	//       "location": "query",
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "response": {
-	//     "$ref": "Message"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.hl7V2Stores.messages.ingest":
-
-type ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall struct {
-	s                    *Service
-	parent               string
-	ingestmessagerequest *IngestMessageRequest
-	urlParams_           gensupport.URLParams
-	ctx_                 context.Context
-	header_              http.Header
-}
-
-// Ingest: Ingests a new HL7v2 message from the hospital and sends a
-// notification to
-// the Cloud Pub/Sub topic. Return is an HL7v2 ACK message if the
-// message was
-// successfully stored. Otherwise an error is returned.  If an
-// identical
-// HL7v2 message is created twice only one resource is created on the
-// server
-// and no error is reported.
-func (r *ProjectsLocationsDatasetsHl7V2StoresMessagesService) Ingest(parent string, ingestmessagerequest *IngestMessageRequest) *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall {
-	c := &ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	c.ingestmessagerequest = ingestmessagerequest
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ingestmessagerequest)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/messages:ingest")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("POST", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.messages.ingest" call.
-// Exactly one of *IngestMessageResponse or error will be non-nil. Any
-// non-2xx status code is an error. Response headers are in either
-// *IngestMessageResponse.ServerResponse.Header or (if a response was
-// returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall) Do(opts ...googleapi.CallOption) (*IngestMessageResponse, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &IngestMessageResponse{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Ingests a new HL7v2 message from the hospital and sends a notification to\nthe Cloud Pub/Sub topic. Return is an HL7v2 ACK message if the message was\nsuccessfully stored. Otherwise an error is returned.  If an identical\nHL7v2 message is created twice only one resource is created on the server\nand no error is reported.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}/messages:ingest",
-	//   "httpMethod": "POST",
-	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.messages.ingest",
-	//   "parameterOrder": [
-	//     "parent"
-	//   ],
-	//   "parameters": {
-	//     "parent": {
-	//       "description": "The name of the HL7v2 store this message belongs to.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/messages:ingest",
-	//   "request": {
-	//     "$ref": "IngestMessageRequest"
-	//   },
-	//   "response": {
-	//     "$ref": "IngestMessageResponse"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// method id "healthcare.projects.locations.datasets.hl7V2Stores.messages.list":
-
-type ProjectsLocationsDatasetsHl7V2StoresMessagesListCall struct {
-	s            *Service
-	parent       string
-	urlParams_   gensupport.URLParams
-	ifNoneMatch_ string
-	ctx_         context.Context
-	header_      http.Header
-}
-
-// List: Lists all the messages in the given HL7v2 store with support
-// for filtering.
-func (r *ProjectsLocationsDatasetsHl7V2StoresMessagesService) List(parent string) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
-	c := &ProjectsLocationsDatasetsHl7V2StoresMessagesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.parent = parent
-	return c
-}
-
-// Filter sets the optional parameter "filter": Restricts messages
-// returned to those matching a filter.
-// Syntax:
-// https://cloud.google.com/appengine/docs/standard/python/search
-// /query_strings
-// Fields/functions available for filtering are:
-// - message_type, from the MSH-9 segment, e.g. 'NOT message_type =
-// "ADT"'
-// - send_date or sendDate, the YYYY-MM-DD date the message was sent in
-// the
-//   dataset's time_zone, from the MSH-7 segment; e.g.
-//   'send_date < "2017-01-02"'
-// - send_time, the timestamp of when the message was sent, using the
-// RFC3339
-//   time format for comparisons, from the MSH-7 segment; e.g.
-// 'send_time <
-//   "2017-01-02T00:00:00-05:00"'
-// - send_facility, the hospital/trust that the message came from, from
-// the
-//   MSH-4 segment, e.g. 'send_facility = "RAL"'
-// - HL7RegExp(expr), which does regular expression matching of expr
-// against
-//   the HL7 message payload using re2 (http://code.google.com/p/re2/)
-//   syntax; e.g. 'HL7RegExp("^.*\|.*\|CERNER")'
-// - PatientId(value, type), which matches if the message lists a
-// patient
-//   having an ID of the given value and type in the PID-2, PID-3, or
-// PID-4
-//   segments; e.g. 'PatientId("123456", "MRN")'
-// - HasLabel(x), a boolean returning true if the message has a label
-// with
-//   key x (having any value) set using the labels map in Message; e.g.
-//   'HasLabel("priority")'
-// - Label(x), a string value of the label with key x as set using the
-// labels
-//   map in Message, e.g. 'Label("priority") = "high"'
-// Negation on the patient ID function and the label function are
-// not
-// supported, e.g. invalid queries: 'NOT PatientId("123456",
-// "MRN")',
-// 'NOT HasLabel("tag1")', 'NOT Label("tag2") = "val2"'.
-// Conjunction of multiple patient ID functions is not supported, e.g.
-// an
-// invalid query: 'PatientId("123456", "MRN") AND PatientId("456789",
-// "MRN")'.
-// Conjunction of multiple label functions is also not supported, e.g.
-// an
-// invalid query: 'HasLabel("tag1") AND Label("tag2") =
-// "val2"'.
-// Conjunction of one patient ID function, one label function and other
-// fields
-// is supported, e.g. a valid query:
-// 'PatientId("123456", "MRN") AND HasLabel("tag1") AND message_type =
-// "ADT"'.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) Filter(filter string) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
-	c.urlParams_.Set("filter", filter)
-	return c
-}
-
-// OrderBy sets the optional parameter "orderBy": Orders messages
-// returned by the specified order_by clause.
-// Syntax:
-// https://cloud.google.com/apis/design/design_patterns#sorting_order
-// Fie
-// lds available for ordering are:
-// - send_time
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) OrderBy(orderBy string) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
-	c.urlParams_.Set("orderBy", orderBy)
-	return c
-}
-
-// PageSize sets the optional parameter "pageSize": Limit on the number
-// of messages to return in a single response.
-// If zero the default page size of 100 is used.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
-	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
-	return c
-}
-
-// PageToken sets the optional parameter "pageToken": The
-// next_page_token value returned from the previous List request, if
-// any.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
-	c.urlParams_.Set("pageToken", pageToken)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
-	c.ifNoneMatch_ = entityTag
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	if c.ifNoneMatch_ != "" {
-		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
-	}
-	var body io.Reader = nil
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+parent}/messages")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("GET", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"parent": c.parent,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.messages.list" call.
-// Exactly one of *ListMessagesResponse or error will be non-nil. Any
-// non-2xx status code is an error. Response headers are in either
-// *ListMessagesResponse.ServerResponse.Header or (if a response was
-// returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) Do(opts ...googleapi.CallOption) (*ListMessagesResponse, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &ListMessagesResponse{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Lists all the messages in the given HL7v2 store with support for filtering.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}/messages",
-	//   "httpMethod": "GET",
-	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.messages.list",
-	//   "parameterOrder": [
-	//     "parent"
-	//   ],
-	//   "parameters": {
-	//     "filter": {
-	//       "description": "Restricts messages returned to those matching a filter. Syntax:\nhttps://cloud.google.com/appengine/docs/standard/python/search/query_strings\nFields/functions available for filtering are:\n- message_type, from the MSH-9 segment, e.g. 'NOT message_type = \"ADT\"'\n- send_date or sendDate, the YYYY-MM-DD date the message was sent in the\n  dataset's time_zone, from the MSH-7 segment; e.g.\n  'send_date \u003c \"2017-01-02\"'\n- send_time, the timestamp of when the message was sent, using the RFC3339\n  time format for comparisons, from the MSH-7 segment; e.g. 'send_time \u003c\n  \"2017-01-02T00:00:00-05:00\"'\n- send_facility, the hospital/trust that the message came from, from the\n  MSH-4 segment, e.g. 'send_facility = \"RAL\"'\n- HL7RegExp(expr), which does regular expression matching of expr against\n  the HL7 message payload using re2 (http://code.google.com/p/re2/)\n  syntax; e.g. 'HL7RegExp(\"^.*\\|.*\\|CERNER\")'\n- PatientId(value, type), which matches if the message lists a patient\n  having an ID of the given value and type in the PID-2, PID-3, or PID-4\n  segments; e.g. 'PatientId(\"123456\", \"MRN\")'\n- HasLabel(x), a boolean returning true if the message has a label with\n  key x (having any value) set using the labels map in Message; e.g.\n  'HasLabel(\"priority\")'\n- Label(x), a string value of the label with key x as set using the labels\n  map in Message, e.g. 'Label(\"priority\") = \"high\"'\nNegation on the patient ID function and the label function are not\nsupported, e.g. invalid queries: 'NOT PatientId(\"123456\", \"MRN\")',\n'NOT HasLabel(\"tag1\")', 'NOT Label(\"tag2\") = \"val2\"'.\nConjunction of multiple patient ID functions is not supported, e.g. an\ninvalid query: 'PatientId(\"123456\", \"MRN\") AND PatientId(\"456789\", \"MRN\")'.\nConjunction of multiple label functions is also not supported, e.g. an\ninvalid query: 'HasLabel(\"tag1\") AND Label(\"tag2\") = \"val2\"'.\nConjunction of one patient ID function, one label function and other fields\nis supported, e.g. a valid query:\n'PatientId(\"123456\", \"MRN\") AND HasLabel(\"tag1\") AND message_type = \"ADT\"'.",
-	//       "location": "query",
-	//       "type": "string"
-	//     },
-	//     "orderBy": {
-	//       "description": "Orders messages returned by the specified order_by clause.\nSyntax: https://cloud.google.com/apis/design/design_patterns#sorting_order\nFields available for ordering are:\n- send_time",
-	//       "location": "query",
-	//       "type": "string"
-	//     },
-	//     "pageSize": {
-	//       "description": "Limit on the number of messages to return in a single response.\nIf zero the default page size of 100 is used.",
-	//       "format": "int32",
-	//       "location": "query",
-	//       "type": "integer"
-	//     },
-	//     "pageToken": {
-	//       "description": "The next_page_token value returned from the previous List request, if any.",
-	//       "location": "query",
-	//       "type": "string"
-	//     },
-	//     "parent": {
-	//       "description": "Name of the HL7v2 store to retrieve messages from.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+parent}/messages",
-	//   "response": {
-	//     "$ref": "ListMessagesResponse"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
-// Pages invokes f for each page of results.
-// A non-nil error returned from f will halt the iteration.
-// The provided context supersedes any context provided to the Context method.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) Pages(ctx context.Context, f func(*ListMessagesResponse) error) error {
-	c.ctx_ = ctx
-	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
-	for {
-		x, err := c.Do()
-		if err != nil {
-			return err
-		}
-		if err := f(x); err != nil {
-			return err
-		}
-		if x.NextPageToken == "" {
-			return nil
-		}
-		c.PageToken(x.NextPageToken)
-	}
-}
-
-// method id "healthcare.projects.locations.datasets.hl7V2Stores.messages.patch":
-
-type ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall struct {
-	s          *Service
-	name       string
-	message    *Message
-	urlParams_ gensupport.URLParams
-	ctx_       context.Context
-	header_    http.Header
-}
-
-// Patch: Update the message.
-func (r *ProjectsLocationsDatasetsHl7V2StoresMessagesService) Patch(name string, message *Message) *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall {
-	c := &ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
-	c.name = name
-	c.message = message
-	return c
-}
-
-// UpdateMask sets the optional parameter "updateMask": The update mask
-// applies to the resource. For the `FieldMask`
-// definition,
-// see
-// https://developers.google.com/protocol-buffers/docs/re
-// ference/google.protobuf#fieldmask
-// Only the `labels` field is allowed to be updated.
-// The labels in the request will be merged with the existing set of
-// labels.
-// Existing labels with the same keys will be updated.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall {
-	c.urlParams_.Set("updateMask", updateMask)
-	return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall {
-	c.urlParams_.Set("fields", googleapi.CombineFields(s))
-	return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall {
-	c.ctx_ = ctx
-	return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall) Header() http.Header {
-	if c.header_ == nil {
-		c.header_ = make(http.Header)
-	}
-	return c.header_
-}
-
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall) doRequest(alt string) (*http.Response, error) {
-	reqHeaders := make(http.Header)
-	for k, v := range c.header_ {
-		reqHeaders[k] = v
-	}
-	reqHeaders.Set("User-Agent", c.s.userAgent())
-	var body io.Reader = nil
-	body, err := googleapi.WithoutDataWrapper.JSONReader(c.message)
-	if err != nil {
-		return nil, err
-	}
-	reqHeaders.Set("Content-Type", "application/json")
-	c.urlParams_.Set("alt", alt)
-	c.urlParams_.Set("prettyPrint", "false")
-	urls := googleapi.ResolveRelative(c.s.BasePath, "v1alpha/{+name}")
-	urls += "?" + c.urlParams_.Encode()
-	req, err := http.NewRequest("PATCH", urls, body)
-	if err != nil {
-		return nil, err
-	}
-	req.Header = reqHeaders
-	googleapi.Expand(req.URL, map[string]string{
-		"name": c.name,
-	})
-	return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.messages.patch" call.
-// Exactly one of *Message or error will be non-nil. Any non-2xx status
-// code is an error. Response headers are in either
-// *Message.ServerResponse.Header or (if a response was returned at all)
-// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
-// check whether the returned error was because http.StatusNotModified
-// was returned.
-func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall) Do(opts ...googleapi.CallOption) (*Message, error) {
-	gensupport.SetOptions(c.urlParams_, opts...)
-	res, err := c.doRequest("json")
-	if res != nil && res.StatusCode == http.StatusNotModified {
-		if res.Body != nil {
-			res.Body.Close()
-		}
-		return nil, &googleapi.Error{
-			Code:   res.StatusCode,
-			Header: res.Header,
-		}
-	}
-	if err != nil {
-		return nil, err
-	}
-	defer googleapi.CloseBody(res)
-	if err := googleapi.CheckResponse(res); err != nil {
-		return nil, err
-	}
-	ret := &Message{
-		ServerResponse: googleapi.ServerResponse{
-			Header:         res.Header,
-			HTTPStatusCode: res.StatusCode,
-		},
-	}
-	target := &ret
-	if err := gensupport.DecodeResponse(target, res); err != nil {
-		return nil, err
-	}
-	return ret, nil
-	// {
-	//   "description": "Update the message.",
-	//   "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}/messages/{messagesId}",
-	//   "httpMethod": "PATCH",
-	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.messages.patch",
-	//   "parameterOrder": [
-	//     "name"
-	//   ],
-	//   "parameters": {
-	//     "name": {
-	//       "description": "Resource name of the Message, of the form\n`projects/{project_id}/datasets/{dataset_id}/hl7V2Stores/{hl7_v2_store_id}/messages/{message_id}`.\nAssigned by the server.",
-	//       "location": "path",
-	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+/messages/[^/]+$",
-	//       "required": true,
-	//       "type": "string"
-	//     },
-	//     "updateMask": {
-	//       "description": "The update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask\nOnly the `labels` field is allowed to be updated.\nThe labels in the request will be merged with the existing set of labels.\nExisting labels with the same keys will be updated.",
-	//       "format": "google-fieldmask",
-	//       "location": "query",
-	//       "type": "string"
-	//     }
-	//   },
-	//   "path": "v1alpha/{+name}",
-	//   "request": {
-	//     "$ref": "Message"
-	//   },
-	//   "response": {
-	//     "$ref": "Message"
-	//   },
-	//   "scopes": [
-	//     "https://www.googleapis.com/auth/cloud-platform"
-	//   ]
-	// }
-
-}
-
 // method id "healthcare.projects.locations.datasets.operations.get":
 
 type ProjectsLocationsDatasetsOperationsGetCall struct {
diff --git a/healthcare/v1alpha2/healthcare-api.json b/healthcare/v1alpha2/healthcare-api.json
index 567751d..c1f1881 100644
--- a/healthcare/v1alpha2/healthcare-api.json
+++ b/healthcare/v1alpha2/healthcare-api.json
@@ -3254,7 +3254,7 @@
       }
     }
   },
-  "revision": "20190401",
+  "revision": "20190417",
   "rootUrl": "https://healthcare.googleapis.com/",
   "schemas": {
     "Annotation": {
@@ -3367,7 +3367,7 @@
       "properties": {
         "condition": {
           "$ref": "Expr",
-          "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
+          "description": "The condition that is associated with this binding.\nNOTE: An unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
         },
         "members": {
           "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n   on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n   who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n   account. For example, `alice@gmail.com` .\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n   account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n   For example, `admins@example.com`.\n\n\n* `domain:{domain}`: The G Suite domain (primary) that represents all the\n   users of that domain. For example, `google.com` or `example.com`.\n\n",
@@ -3762,7 +3762,7 @@
           "enumDescriptions": [
             "No action specified.",
             "Transform the entire field.",
-            "Should be inspected and any PHI found should be\ntransformed.",
+            "Inspect and transform any found PHI. When `AnnotationConfig` is\nprovided, annotations of PHI will be generated, except for Date and Datetime.",
             "Do not transform."
           ],
           "type": "string"
@@ -3977,7 +3977,7 @@
       "type": "object"
     },
     "HttpBody": {
-      "description": "Message that represents an arbitrary HTTP body. It should only be used for\npayload formats that can't be represented as JSON, such as raw binary or\nan HTML page.\n\n\nThis message can be used both in streaming and non-streaming API methods in\nthe request as well as the response.\n\nIt can be used as a top-level request field, which is convenient if one\nwants to extract parameters from either the URL or HTTP template into the\nrequest fields and also want access to the raw HTTP body.\n\nExample:\n\n    message GetResourceRequest {\n      // A unique request id.\n      string request_id = 1;\n\n      // The raw HTTP body is bound to this field.\n      google.api.HttpBody http_body = 2;\n    }\n\n    service ResourceService {\n      rpc GetResource(GetResourceRequest) returns (google.api.HttpBody);\n      rpc UpdateResource(google.api.HttpBody) returns (google.protobuf.Empty);\n    }\n\nExample with streaming methods:\n\n    service CaldavService {\n      rpc GetCalendar(stream google.api.HttpBody)\n        returns (stream google.api.HttpBody);\n      rpc UpdateCalendar(stream google.api.HttpBody)\n        returns (stream google.api.HttpBody);\n    }\n\nUse of this type only changes how the request and response bodies are\nhandled, all other features will continue to work unchanged.",
+      "description": "Message that represents an arbitrary HTTP body. It should only be used for\npayload formats that can't be represented as JSON, such as raw binary or\nan HTML page.\n\n\nThis message can be used both in streaming and non-streaming API methods in\nthe request as well as the response.\n\nIt can be used as a top-level request field, which is convenient if one\nwants to extract parameters from either the URL or HTTP template into the\nrequest fields and also want access to the raw HTTP body.\n\nExample:\n\n    message GetResourceRequest {\n      // A unique request id.\n      string request_id = 1;\n\n      // The raw HTTP body is bound to this field.\n      google.api.HttpBody http_body = 2;\n    }\n\n    service ResourceService {\n      rpc GetResource(GetResourceRequest) returns (google.api.HttpBody);\n      rpc UpdateResource(google.api.HttpBody) returns\n      (google.protobuf.Empty);\n    }\n\nExample with streaming methods:\n\n    service CaldavService {\n      rpc GetCalendar(stream google.api.HttpBody)\n        returns (stream google.api.HttpBody);\n      rpc UpdateCalendar(stream google.api.HttpBody)\n        returns (stream google.api.HttpBody);\n    }\n\nUse of this type only changes how the request and response bodies are\nhandled, all other features will continue to work unchanged.",
       "id": "HttpBody",
       "properties": {
         "contentType": {
diff --git a/healthcare/v1alpha2/healthcare-gen.go b/healthcare/v1alpha2/healthcare-gen.go
index 616e109..e5f97c0 100644
--- a/healthcare/v1alpha2/healthcare-gen.go
+++ b/healthcare/v1alpha2/healthcare-gen.go
@@ -649,7 +649,7 @@
 // Binding: Associates `members` with a `role`.
 type Binding struct {
 	// Condition: The condition that is associated with this binding.
-	// NOTE: an unsatisfied condition will not allow user access via
+	// NOTE: An unsatisfied condition will not allow user access via
 	// current
 	// binding. Different bindings, including their conditions, are
 	// examined
@@ -1633,9 +1633,10 @@
 	// Possible values:
 	//   "ACTION_UNSPECIFIED" - No action specified.
 	//   "TRANSFORM" - Transform the entire field.
-	//   "INSPECT_AND_TRANSFORM" - Should be inspected and any PHI found
-	// should be
-	// transformed.
+	//   "INSPECT_AND_TRANSFORM" - Inspect and transform any found PHI. When
+	// `AnnotationConfig` is
+	// provided, annotations of PHI will be generated, except for Date and
+	// Datetime.
 	//   "DO_NOT_TRANSFORM" - Do not transform.
 	Action string `json:"action,omitempty"`
 
@@ -2262,7 +2263,7 @@
 //       rpc GetResource(GetResourceRequest) returns
 // (google.api.HttpBody);
 //       rpc UpdateResource(google.api.HttpBody) returns
-// (google.protobuf.Empty);
+//       (google.protobuf.Empty);
 //     }
 //
 // Example with streaming methods:
diff --git a/healthcare/v1beta1/healthcare-api.json b/healthcare/v1beta1/healthcare-api.json
index 4e6e5b5..6a0093f 100644
--- a/healthcare/v1beta1/healthcare-api.json
+++ b/healthcare/v1beta1/healthcare-api.json
@@ -2790,7 +2790,7 @@
       }
     }
   },
-  "revision": "20190401",
+  "revision": "20190417",
   "rootUrl": "https://healthcare.googleapis.com/",
   "schemas": {
     "AuditConfig": {
@@ -2847,7 +2847,7 @@
       "properties": {
         "condition": {
           "$ref": "Expr",
-          "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
+          "description": "The condition that is associated with this binding.\nNOTE: An unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
         },
         "members": {
           "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n   on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n   who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n   account. For example, `alice@gmail.com` .\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n   account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n   For example, `admins@example.com`.\n\n\n* `domain:{domain}`: The G Suite domain (primary) that represents all the\n   users of that domain. For example, `google.com` or `example.com`.\n\n",
@@ -3202,7 +3202,7 @@
           "enumDescriptions": [
             "No action specified.",
             "Transform the entire field.",
-            "Should be inspected and any PHI found should be\ntransformed.",
+            "Inspect and transform any found PHI. When `AnnotationConfig` is\nprovided, annotations of PHI will be generated, except for Date and Datetime.",
             "Do not transform."
           ],
           "type": "string"
@@ -3380,7 +3380,7 @@
       "type": "object"
     },
     "HttpBody": {
-      "description": "Message that represents an arbitrary HTTP body. It should only be used for\npayload formats that can't be represented as JSON, such as raw binary or\nan HTML page.\n\n\nThis message can be used both in streaming and non-streaming API methods in\nthe request as well as the response.\n\nIt can be used as a top-level request field, which is convenient if one\nwants to extract parameters from either the URL or HTTP template into the\nrequest fields and also want access to the raw HTTP body.\n\nExample:\n\n    message GetResourceRequest {\n      // A unique request id.\n      string request_id = 1;\n\n      // The raw HTTP body is bound to this field.\n      google.api.HttpBody http_body = 2;\n    }\n\n    service ResourceService {\n      rpc GetResource(GetResourceRequest) returns (google.api.HttpBody);\n      rpc UpdateResource(google.api.HttpBody) returns (google.protobuf.Empty);\n    }\n\nExample with streaming methods:\n\n    service CaldavService {\n      rpc GetCalendar(stream google.api.HttpBody)\n        returns (stream google.api.HttpBody);\n      rpc UpdateCalendar(stream google.api.HttpBody)\n        returns (stream google.api.HttpBody);\n    }\n\nUse of this type only changes how the request and response bodies are\nhandled, all other features will continue to work unchanged.",
+      "description": "Message that represents an arbitrary HTTP body. It should only be used for\npayload formats that can't be represented as JSON, such as raw binary or\nan HTML page.\n\n\nThis message can be used both in streaming and non-streaming API methods in\nthe request as well as the response.\n\nIt can be used as a top-level request field, which is convenient if one\nwants to extract parameters from either the URL or HTTP template into the\nrequest fields and also want access to the raw HTTP body.\n\nExample:\n\n    message GetResourceRequest {\n      // A unique request id.\n      string request_id = 1;\n\n      // The raw HTTP body is bound to this field.\n      google.api.HttpBody http_body = 2;\n    }\n\n    service ResourceService {\n      rpc GetResource(GetResourceRequest) returns (google.api.HttpBody);\n      rpc UpdateResource(google.api.HttpBody) returns\n      (google.protobuf.Empty);\n    }\n\nExample with streaming methods:\n\n    service CaldavService {\n      rpc GetCalendar(stream google.api.HttpBody)\n        returns (stream google.api.HttpBody);\n      rpc UpdateCalendar(stream google.api.HttpBody)\n        returns (stream google.api.HttpBody);\n    }\n\nUse of this type only changes how the request and response bodies are\nhandled, all other features will continue to work unchanged.",
       "id": "HttpBody",
       "properties": {
         "contentType": {
diff --git a/healthcare/v1beta1/healthcare-gen.go b/healthcare/v1beta1/healthcare-gen.go
index 7d37733..cf85adc 100644
--- a/healthcare/v1beta1/healthcare-gen.go
+++ b/healthcare/v1beta1/healthcare-gen.go
@@ -476,7 +476,7 @@
 // Binding: Associates `members` with a `role`.
 type Binding struct {
 	// Condition: The condition that is associated with this binding.
-	// NOTE: an unsatisfied condition will not allow user access via
+	// NOTE: An unsatisfied condition will not allow user access via
 	// current
 	// binding. Different bindings, including their conditions, are
 	// examined
@@ -1372,9 +1372,10 @@
 	// Possible values:
 	//   "ACTION_UNSPECIFIED" - No action specified.
 	//   "TRANSFORM" - Transform the entire field.
-	//   "INSPECT_AND_TRANSFORM" - Should be inspected and any PHI found
-	// should be
-	// transformed.
+	//   "INSPECT_AND_TRANSFORM" - Inspect and transform any found PHI. When
+	// `AnnotationConfig` is
+	// provided, annotations of PHI will be generated, except for Date and
+	// Datetime.
 	//   "DO_NOT_TRANSFORM" - Do not transform.
 	Action string `json:"action,omitempty"`
 
@@ -1925,7 +1926,7 @@
 //       rpc GetResource(GetResourceRequest) returns
 // (google.api.HttpBody);
 //       rpc UpdateResource(google.api.HttpBody) returns
-// (google.protobuf.Empty);
+//       (google.protobuf.Empty);
 //     }
 //
 // Example with streaming methods:
diff --git a/pubsub/v1/pubsub-api.json b/pubsub/v1/pubsub-api.json
index cee0f05..6e458e1 100644
--- a/pubsub/v1/pubsub-api.json
+++ b/pubsub/v1/pubsub-api.json
@@ -111,7 +111,7 @@
         "snapshots": {
           "methods": {
             "create": {
-              "description": "Creates a snapshot from the requested subscription. Snapshots are used in\n\u003ca href=\"https://cloud.google.com/pubsub/docs/replay-overview\"\u003eSeek\u003c/a\u003e\noperations, which allow\nyou to manage message acknowledgments in bulk. That is, you can set the\nacknowledgment state of messages in an existing subscription to the state\ncaptured by a snapshot.\n\u003cbr\u003e\u003cbr\u003eIf the snapshot already exists, returns `ALREADY_EXISTS`.\nIf the requested subscription doesn't exist, returns `NOT_FOUND`.\nIf the backlog in the subscription is too old -- and the resulting snapshot\nwould expire in less than 1 hour -- then `FAILED_PRECONDITION` is returned.\nSee also the `Snapshot.expire_time` field. If the name is not provided in\nthe request, the server will assign a random\nname for this snapshot on the same project as the subscription, conforming\nto the\n[resource name format](https://cloud.google.com/pubsub/docs/admin#resource_names).\nThe generated name is populated in the returned Snapshot object. Note that\nfor REST API requests, you must specify a name in the request.",
+              "description": "Creates a snapshot from the requested subscription. Snapshots are used in\n\u003ca href=\"https://cloud.google.com/pubsub/docs/replay-overview\"\u003eSeek\u003c/a\u003e\noperations, which allow\nyou to manage message acknowledgments in bulk. That is, you can set the\nacknowledgment state of messages in an existing subscription to the state\ncaptured by a snapshot.\n\u003cbr\u003e\u003cbr\u003eIf the snapshot already exists, returns `ALREADY_EXISTS`.\nIf the requested subscription doesn't exist, returns `NOT_FOUND`.\nIf the backlog in the subscription is too old -- and the resulting snapshot\nwould expire in less than 1 hour -- then `FAILED_PRECONDITION` is returned.\nSee also the `Snapshot.expire_time` field. If the name is not provided in\nthe request, the server will assign a random\nname for this snapshot on the same project as the subscription, conforming\nto the\n[resource name\nformat](https://cloud.google.com/pubsub/docs/admin#resource_names). The\ngenerated name is populated in the returned Snapshot object. Note that for\nREST API requests, you must specify a name in the request.",
               "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}",
               "httpMethod": "PUT",
               "id": "pubsub.projects.snapshots.create",
@@ -375,7 +375,7 @@
               ]
             },
             "create": {
-              "description": "Creates a subscription to a given topic. See the\n\u003ca href=\"https://cloud.google.com/pubsub/docs/admin#resource_names\"\u003e\nresource name rules\u003c/a\u003e.\nIf the subscription already exists, returns `ALREADY_EXISTS`.\nIf the corresponding topic doesn't exist, returns `NOT_FOUND`.\n\nIf the name is not provided in the request, the server will assign a random\nname for this subscription on the same project as the topic, conforming\nto the\n[resource name format](https://cloud.google.com/pubsub/docs/admin#resource_names).\nThe generated name is populated in the returned Subscription object.\nNote that for REST API requests, you must specify a name in the request.",
+              "description": "Creates a subscription to a given topic. See the\n\u003ca href=\"https://cloud.google.com/pubsub/docs/admin#resource_names\"\u003e\nresource name rules\u003c/a\u003e.\nIf the subscription already exists, returns `ALREADY_EXISTS`.\nIf the corresponding topic doesn't exist, returns `NOT_FOUND`.\n\nIf the name is not provided in the request, the server will assign a random\nname for this subscription on the same project as the topic, conforming\nto the\n[resource name\nformat](https://cloud.google.com/pubsub/docs/admin#resource_names). The\ngenerated name is populated in the returned Subscription object. Note that\nfor REST API requests, you must specify a name in the request.",
               "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}",
               "httpMethod": "PUT",
               "id": "pubsub.projects.subscriptions.create",
@@ -1074,7 +1074,7 @@
       }
     }
   },
-  "revision": "20190314",
+  "revision": "20190412",
   "rootUrl": "https://pubsub.googleapis.com/",
   "schemas": {
     "AcknowledgeRequest": {
@@ -1097,7 +1097,7 @@
       "properties": {
         "condition": {
           "$ref": "Expr",
-          "description": "Unimplemented. The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
+          "description": "The condition that is associated with this binding.\nNOTE: An unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
         },
         "members": {
           "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n   on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n   who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n   account. For example, `alice@gmail.com` .\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n   account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n   For example, `admins@example.com`.\n\n\n* `domain:{domain}`: The G Suite domain (primary) that represents all the\n   users of that domain. For example, `google.com` or `example.com`.\n\n",
@@ -1548,7 +1548,7 @@
           "description": "If push delivery is used with this subscription, this field is\nused to configure it. An empty `pushConfig` signifies that the subscriber\nwill pull and ack messages using API methods."
         },
         "retainAckedMessages": {
-          "description": "Indicates whether to retain acknowledged messages. If true, then\nmessages are not expunged from the subscription's backlog, even if they are\nacknowledged, until they fall out of the `message_retention_duration`\nwindow. This must be true if you would like to\n\u003ca href=\"https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time\"\u003e\nSeek to a timestamp\u003c/a\u003e.",
+          "description": "Indicates whether to retain acknowledged messages. If true, then\nmessages are not expunged from the subscription's backlog, even if they are\nacknowledged, until they fall out of the `message_retention_duration`\nwindow. This must be true if you would like to\n\u003ca\nhref=\"https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time\"\u003e\nSeek to a timestamp\u003c/a\u003e.",
           "type": "boolean"
         },
         "topic": {
diff --git a/pubsub/v1/pubsub-gen.go b/pubsub/v1/pubsub-gen.go
index 62e20fa..898268e 100644
--- a/pubsub/v1/pubsub-gen.go
+++ b/pubsub/v1/pubsub-gen.go
@@ -241,9 +241,8 @@
 
 // Binding: Associates `members` with a `role`.
 type Binding struct {
-	// Condition: Unimplemented. The condition that is associated with this
-	// binding.
-	// NOTE: an unsatisfied condition will not allow user access via
+	// Condition: The condition that is associated with this binding.
+	// NOTE: An unsatisfied condition will not allow user access via
 	// current
 	// binding. Different bindings, including their conditions, are
 	// examined
@@ -1460,10 +1459,11 @@
 	// they are
 	// acknowledged, until they fall out of the
 	// `message_retention_duration`
-	// window. This must be true if you would like to
+	// window. This must be true if you would like
+	// to
 	// <a
-	// href="https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_t
-	// ime">
+	// href="https://cloud.google.com/pubsub/docs/replay-overview#seek_
+	// to_a_time">
 	// Seek to a timestamp</a>.
 	RetainAckedMessages bool `json:"retainAckedMessages,omitempty"`
 
@@ -1760,12 +1760,13 @@
 // name for this snapshot on the same project as the subscription,
 // conforming
 // to the
-// [resource name
-// format](https://cloud.google.com/pubsub/docs/admin#resource_names).
-// Th
-// e generated name is populated in the returned Snapshot object. Note
-// that
-// for REST API requests, you must specify a name in the request.
+// [resource
+// name
+// format](https://cloud.google.com/pubsub/docs/admin#resource_names
+// ). The
+// generated name is populated in the returned Snapshot object. Note
+// that for
+// REST API requests, you must specify a name in the request.
 func (r *ProjectsSnapshotsService) Create(name string, createsnapshotrequest *CreateSnapshotRequest) *ProjectsSnapshotsCreateCall {
 	c := &ProjectsSnapshotsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.name = name
@@ -1863,7 +1864,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Creates a snapshot from the requested subscription. Snapshots are used in\n\u003ca href=\"https://cloud.google.com/pubsub/docs/replay-overview\"\u003eSeek\u003c/a\u003e\noperations, which allow\nyou to manage message acknowledgments in bulk. That is, you can set the\nacknowledgment state of messages in an existing subscription to the state\ncaptured by a snapshot.\n\u003cbr\u003e\u003cbr\u003eIf the snapshot already exists, returns `ALREADY_EXISTS`.\nIf the requested subscription doesn't exist, returns `NOT_FOUND`.\nIf the backlog in the subscription is too old -- and the resulting snapshot\nwould expire in less than 1 hour -- then `FAILED_PRECONDITION` is returned.\nSee also the `Snapshot.expire_time` field. If the name is not provided in\nthe request, the server will assign a random\nname for this snapshot on the same project as the subscription, conforming\nto the\n[resource name format](https://cloud.google.com/pubsub/docs/admin#resource_names).\nThe generated name is populated in the returned Snapshot object. Note that\nfor REST API requests, you must specify a name in the request.",
+	//   "description": "Creates a snapshot from the requested subscription. Snapshots are used in\n\u003ca href=\"https://cloud.google.com/pubsub/docs/replay-overview\"\u003eSeek\u003c/a\u003e\noperations, which allow\nyou to manage message acknowledgments in bulk. That is, you can set the\nacknowledgment state of messages in an existing subscription to the state\ncaptured by a snapshot.\n\u003cbr\u003e\u003cbr\u003eIf the snapshot already exists, returns `ALREADY_EXISTS`.\nIf the requested subscription doesn't exist, returns `NOT_FOUND`.\nIf the backlog in the subscription is too old -- and the resulting snapshot\nwould expire in less than 1 hour -- then `FAILED_PRECONDITION` is returned.\nSee also the `Snapshot.expire_time` field. If the name is not provided in\nthe request, the server will assign a random\nname for this snapshot on the same project as the subscription, conforming\nto the\n[resource name\nformat](https://cloud.google.com/pubsub/docs/admin#resource_names). The\ngenerated name is populated in the returned Snapshot object. Note that for\nREST API requests, you must specify a name in the request.",
 	//   "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}",
 	//   "httpMethod": "PUT",
 	//   "id": "pubsub.projects.snapshots.create",
@@ -3158,13 +3159,13 @@
 // name for this subscription on the same project as the topic,
 // conforming
 // to the
-// [resource name
-// format](https://cloud.google.com/pubsub/docs/admin#resource_names).
-// Th
-// e generated name is populated in the returned Subscription
-// object.
-// Note that for REST API requests, you must specify a name in the
-// request.
+// [resource
+// name
+// format](https://cloud.google.com/pubsub/docs/admin#resource_names
+// ). The
+// generated name is populated in the returned Subscription object. Note
+// that
+// for REST API requests, you must specify a name in the request.
 func (r *ProjectsSubscriptionsService) Create(name string, subscription *Subscription) *ProjectsSubscriptionsCreateCall {
 	c := &ProjectsSubscriptionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 	c.name = name
@@ -3262,7 +3263,7 @@
 	}
 	return ret, nil
 	// {
-	//   "description": "Creates a subscription to a given topic. See the\n\u003ca href=\"https://cloud.google.com/pubsub/docs/admin#resource_names\"\u003e\nresource name rules\u003c/a\u003e.\nIf the subscription already exists, returns `ALREADY_EXISTS`.\nIf the corresponding topic doesn't exist, returns `NOT_FOUND`.\n\nIf the name is not provided in the request, the server will assign a random\nname for this subscription on the same project as the topic, conforming\nto the\n[resource name format](https://cloud.google.com/pubsub/docs/admin#resource_names).\nThe generated name is populated in the returned Subscription object.\nNote that for REST API requests, you must specify a name in the request.",
+	//   "description": "Creates a subscription to a given topic. See the\n\u003ca href=\"https://cloud.google.com/pubsub/docs/admin#resource_names\"\u003e\nresource name rules\u003c/a\u003e.\nIf the subscription already exists, returns `ALREADY_EXISTS`.\nIf the corresponding topic doesn't exist, returns `NOT_FOUND`.\n\nIf the name is not provided in the request, the server will assign a random\nname for this subscription on the same project as the topic, conforming\nto the\n[resource name\nformat](https://cloud.google.com/pubsub/docs/admin#resource_names). The\ngenerated name is populated in the returned Subscription object. Note that\nfor REST API requests, you must specify a name in the request.",
 	//   "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}",
 	//   "httpMethod": "PUT",
 	//   "id": "pubsub.projects.subscriptions.create",
diff --git a/pubsub/v1beta2/pubsub-api.json b/pubsub/v1beta2/pubsub-api.json
index a088340..2521078 100644
--- a/pubsub/v1beta2/pubsub-api.json
+++ b/pubsub/v1beta2/pubsub-api.json
@@ -711,7 +711,7 @@
       }
     }
   },
-  "revision": "20190314",
+  "revision": "20190412",
   "rootUrl": "https://pubsub.googleapis.com/",
   "schemas": {
     "AcknowledgeRequest": {
@@ -734,7 +734,7 @@
       "properties": {
         "condition": {
           "$ref": "Expr",
-          "description": "Unimplemented. The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
+          "description": "The condition that is associated with this binding.\nNOTE: An unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
         },
         "members": {
           "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n   on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n   who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n   account. For example, `alice@gmail.com` .\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n   account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n   For example, `admins@example.com`.\n\n\n* `domain:{domain}`: The G Suite domain (primary) that represents all the\n   users of that domain. For example, `google.com` or `example.com`.\n\n",
diff --git a/pubsub/v1beta2/pubsub-gen.go b/pubsub/v1beta2/pubsub-gen.go
index fa68cda..d22d1bf 100644
--- a/pubsub/v1beta2/pubsub-gen.go
+++ b/pubsub/v1beta2/pubsub-gen.go
@@ -217,9 +217,8 @@
 
 // Binding: Associates `members` with a `role`.
 type Binding struct {
-	// Condition: Unimplemented. The condition that is associated with this
-	// binding.
-	// NOTE: an unsatisfied condition will not allow user access via
+	// Condition: The condition that is associated with this binding.
+	// NOTE: An unsatisfied condition will not allow user access via
 	// current
 	// binding. Different bindings, including their conditions, are
 	// examined
diff --git a/remotebuildexecution/v1alpha/remotebuildexecution-api.json b/remotebuildexecution/v1alpha/remotebuildexecution-api.json
index 3e0ce50..a25bbf7 100644
--- a/remotebuildexecution/v1alpha/remotebuildexecution-api.json
+++ b/remotebuildexecution/v1alpha/remotebuildexecution-api.json
@@ -382,7 +382,7 @@
       }
     }
   },
-  "revision": "20190312",
+  "revision": "20190415",
   "rootUrl": "https://admin-remotebuildexecution.googleapis.com/",
   "schemas": {
     "BuildBazelRemoteExecutionV2Action": {
@@ -1129,7 +1129,7 @@
       "id": "GoogleDevtoolsRemotebuildexecutionAdminV1alphaUpdateWorkerPoolRequest",
       "properties": {
         "updateMask": {
-          "description": "The update mask applies to worker_pool. For the `FieldMask` definition,\nsee https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask\nIf an empty update_mask is provided, only the non-default valued field in\nthe worker pool field will be updated. Note that in order to update a field\nto the default value (zero, false, empty string) an explicit update_mask\nmust be provided.",
+          "description": "The update mask applies to worker_pool. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask\nIf an empty update_mask is provided, only the non-default valued field in\nthe worker pool field will be updated. Note that in order to update a field\nto the default value (zero, false, empty string) an explicit update_mask\nmust be provided.",
           "format": "google-fieldmask",
           "type": "string"
         },
@@ -1150,7 +1150,7 @@
           "type": "string"
         },
         "diskType": {
-          "description": "Required. Disk Type to use for the worker.\nSee [Storage options](https://cloud.google.com/compute/docs/disks/#introduction).\nCurrently only `pd-standard` is supported.",
+          "description": "Required. Disk Type to use for the worker.\nSee [Storage\noptions](https://cloud.google.com/compute/docs/disks/#introduction).\nCurrently only `pd-standard` is supported.",
           "type": "string"
         },
         "machineType": {
diff --git a/remotebuildexecution/v1alpha/remotebuildexecution-gen.go b/remotebuildexecution/v1alpha/remotebuildexecution-gen.go
index 6f2c3b2..c25332c 100644
--- a/remotebuildexecution/v1alpha/remotebuildexecution-gen.go
+++ b/remotebuildexecution/v1alpha/remotebuildexecution-gen.go
@@ -2095,9 +2095,11 @@
 //  The request used for UpdateWorkerPool.
 type GoogleDevtoolsRemotebuildexecutionAdminV1alphaUpdateWorkerPoolRequest struct {
 	// UpdateMask: The update mask applies to worker_pool. For the
-	// `FieldMask` definition,
+	// `FieldMask`
+	// definition,
 	// see
-	// https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
+	// https://developers.google.com/protocol-buffers/docs/re
+	// ference/google.protobuf#fieldmask
 	// If an empty update_mask is provided, only the non-default valued
 	// field in
 	// the worker pool field will be updated. Note that in order to update a
@@ -2143,10 +2145,11 @@
 	DiskSizeGb int64 `json:"diskSizeGb,omitempty,string"`
 
 	// DiskType: Required. Disk Type to use for the worker.
-	// See [Storage
-	// options](https://cloud.google.com/compute/docs/disks/#introduction).
-	// C
-	// urrently only `pd-standard` is supported.
+	// See
+	// [Storage
+	// options](https://cloud.google.com/compute/docs/disks/#introdu
+	// ction).
+	// Currently only `pd-standard` is supported.
 	DiskType string `json:"diskType,omitempty"`
 
 	// MachineType: Required. Machine type of the worker, such as
diff --git a/remotebuildexecution/v2/remotebuildexecution-api.json b/remotebuildexecution/v2/remotebuildexecution-api.json
index 2f2043d..c70aa5e 100644
--- a/remotebuildexecution/v2/remotebuildexecution-api.json
+++ b/remotebuildexecution/v2/remotebuildexecution-api.json
@@ -430,7 +430,7 @@
       }
     }
   },
-  "revision": "20190312",
+  "revision": "20190415",
   "rootUrl": "https://remotebuildexecution.googleapis.com/",
   "schemas": {
     "BuildBazelRemoteExecutionV2Action": {
@@ -1558,7 +1558,7 @@
       "id": "GoogleDevtoolsRemotebuildexecutionAdminV1alphaUpdateWorkerPoolRequest",
       "properties": {
         "updateMask": {
-          "description": "The update mask applies to worker_pool. For the `FieldMask` definition,\nsee https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask\nIf an empty update_mask is provided, only the non-default valued field in\nthe worker pool field will be updated. Note that in order to update a field\nto the default value (zero, false, empty string) an explicit update_mask\nmust be provided.",
+          "description": "The update mask applies to worker_pool. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask\nIf an empty update_mask is provided, only the non-default valued field in\nthe worker pool field will be updated. Note that in order to update a field\nto the default value (zero, false, empty string) an explicit update_mask\nmust be provided.",
           "format": "google-fieldmask",
           "type": "string"
         },
@@ -1579,7 +1579,7 @@
           "type": "string"
         },
         "diskType": {
-          "description": "Required. Disk Type to use for the worker.\nSee [Storage options](https://cloud.google.com/compute/docs/disks/#introduction).\nCurrently only `pd-standard` is supported.",
+          "description": "Required. Disk Type to use for the worker.\nSee [Storage\noptions](https://cloud.google.com/compute/docs/disks/#introduction).\nCurrently only `pd-standard` is supported.",
           "type": "string"
         },
         "machineType": {
diff --git a/remotebuildexecution/v2/remotebuildexecution-gen.go b/remotebuildexecution/v2/remotebuildexecution-gen.go
index f7f8487..0a53e73 100644
--- a/remotebuildexecution/v2/remotebuildexecution-gen.go
+++ b/remotebuildexecution/v2/remotebuildexecution-gen.go
@@ -2868,9 +2868,11 @@
 //  The request used for UpdateWorkerPool.
 type GoogleDevtoolsRemotebuildexecutionAdminV1alphaUpdateWorkerPoolRequest struct {
 	// UpdateMask: The update mask applies to worker_pool. For the
-	// `FieldMask` definition,
+	// `FieldMask`
+	// definition,
 	// see
-	// https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
+	// https://developers.google.com/protocol-buffers/docs/re
+	// ference/google.protobuf#fieldmask
 	// If an empty update_mask is provided, only the non-default valued
 	// field in
 	// the worker pool field will be updated. Note that in order to update a
@@ -2916,10 +2918,11 @@
 	DiskSizeGb int64 `json:"diskSizeGb,omitempty,string"`
 
 	// DiskType: Required. Disk Type to use for the worker.
-	// See [Storage
-	// options](https://cloud.google.com/compute/docs/disks/#introduction).
-	// C
-	// urrently only `pd-standard` is supported.
+	// See
+	// [Storage
+	// options](https://cloud.google.com/compute/docs/disks/#introdu
+	// ction).
+	// Currently only `pd-standard` is supported.
 	DiskType string `json:"diskType,omitempty"`
 
 	// MachineType: Required. Machine type of the worker, such as
diff --git a/runtimeconfig/v1beta1/runtimeconfig-api.json b/runtimeconfig/v1beta1/runtimeconfig-api.json
index dbd38b6..333b487 100644
--- a/runtimeconfig/v1beta1/runtimeconfig-api.json
+++ b/runtimeconfig/v1beta1/runtimeconfig-api.json
@@ -798,7 +798,7 @@
       }
     }
   },
-  "revision": "20190325",
+  "revision": "20190415",
   "rootUrl": "https://runtimeconfig.googleapis.com/",
   "schemas": {
     "Binding": {
@@ -807,7 +807,7 @@
       "properties": {
         "condition": {
           "$ref": "Expr",
-          "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
+          "description": "The condition that is associated with this binding.\nNOTE: An unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
         },
         "members": {
           "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n   on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n   who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n   account. For example, `alice@gmail.com` .\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n   account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n   For example, `admins@example.com`.\n\n\n* `domain:{domain}`: The G Suite domain (primary) that represents all the\n   users of that domain. For example, `google.com` or `example.com`.\n\n",
diff --git a/runtimeconfig/v1beta1/runtimeconfig-gen.go b/runtimeconfig/v1beta1/runtimeconfig-gen.go
index 2cc261e..22bba3e 100644
--- a/runtimeconfig/v1beta1/runtimeconfig-gen.go
+++ b/runtimeconfig/v1beta1/runtimeconfig-gen.go
@@ -198,7 +198,7 @@
 // Binding: Associates `members` with a `role`.
 type Binding struct {
 	// Condition: The condition that is associated with this binding.
-	// NOTE: an unsatisfied condition will not allow user access via
+	// NOTE: An unsatisfied condition will not allow user access via
 	// current
 	// binding. Different bindings, including their conditions, are
 	// examined
diff --git a/securitycenter/v1/securitycenter-api.json b/securitycenter/v1/securitycenter-api.json
index e94459c..b6166ef 100644
--- a/securitycenter/v1/securitycenter-api.json
+++ b/securitycenter/v1/securitycenter-api.json
@@ -898,7 +898,7 @@
       }
     }
   },
-  "revision": "20190403",
+  "revision": "20190419",
   "rootUrl": "https://securitycenter.googleapis.com/",
   "schemas": {
     "Asset": {
@@ -1136,6 +1136,62 @@
       "properties": {},
       "type": "object"
     },
+    "GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse": {
+      "description": "Response of asset discovery run",
+      "id": "GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse",
+      "properties": {
+        "duration": {
+          "description": "The duration between asset discovery run start and end",
+          "format": "google-duration",
+          "type": "string"
+        },
+        "state": {
+          "description": "The state of an asset discovery run.",
+          "enum": [
+            "STATE_UNSPECIFIED",
+            "COMPLETED",
+            "SUPERSEDED",
+            "TERMINATED"
+          ],
+          "enumDescriptions": [
+            "Asset discovery run state was unspecified.",
+            "Asset discovery run completed successfully.",
+            "Asset discovery run was cancelled with tasks still pending, as another\nrun for the same organization was started with a higher priority.",
+            "Asset discovery run was killed and terminated."
+          ],
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
+    "GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse": {
+      "description": "Response of asset discovery run",
+      "id": "GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse",
+      "properties": {
+        "duration": {
+          "description": "The duration between asset discovery run start and end",
+          "format": "google-duration",
+          "type": "string"
+        },
+        "state": {
+          "description": "The state of an asset discovery run.",
+          "enum": [
+            "STATE_UNSPECIFIED",
+            "COMPLETED",
+            "SUPERSEDED",
+            "TERMINATED"
+          ],
+          "enumDescriptions": [
+            "Asset discovery run state was unspecified.",
+            "Asset discovery run completed successfully.",
+            "Asset discovery run was cancelled with tasks still pending, as another\nrun for the same organization was started with a higher priority.",
+            "Asset discovery run was killed and terminated."
+          ],
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
     "GroupAssetsRequest": {
       "description": "Request message for grouping by assets.",
       "id": "GroupAssetsRequest",
diff --git a/securitycenter/v1/securitycenter-gen.go b/securitycenter/v1/securitycenter-gen.go
index ef54d9a..5ab094d 100644
--- a/securitycenter/v1/securitycenter-gen.go
+++ b/securitycenter/v1/securitycenter-gen.go
@@ -717,6 +717,86 @@
 type GetIamPolicyRequest struct {
 }
 
+// GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse: Response of
+// asset discovery run
+type GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse struct {
+	// Duration: The duration between asset discovery run start and end
+	Duration string `json:"duration,omitempty"`
+
+	// State: The state of an asset discovery run.
+	//
+	// Possible values:
+	//   "STATE_UNSPECIFIED" - Asset discovery run state was unspecified.
+	//   "COMPLETED" - Asset discovery run completed successfully.
+	//   "SUPERSEDED" - Asset discovery run was cancelled with tasks still
+	// pending, as another
+	// run for the same organization was started with a higher priority.
+	//   "TERMINATED" - Asset discovery run was killed and terminated.
+	State string `json:"state,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "Duration") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "Duration") to include in
+	// API requests with the JSON null value. By default, fields with empty
+	// values are omitted from API requests. However, any field with an
+	// empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse) MarshalJSON() ([]byte, error) {
+	type NoMethod GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse: Response
+// of asset discovery run
+type GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse struct {
+	// Duration: The duration between asset discovery run start and end
+	Duration string `json:"duration,omitempty"`
+
+	// State: The state of an asset discovery run.
+	//
+	// Possible values:
+	//   "STATE_UNSPECIFIED" - Asset discovery run state was unspecified.
+	//   "COMPLETED" - Asset discovery run completed successfully.
+	//   "SUPERSEDED" - Asset discovery run was cancelled with tasks still
+	// pending, as another
+	// run for the same organization was started with a higher priority.
+	//   "TERMINATED" - Asset discovery run was killed and terminated.
+	State string `json:"state,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "Duration") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "Duration") to include in
+	// API requests with the JSON null value. By default, fields with empty
+	// values are omitted from API requests. However, any field with an
+	// empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse) MarshalJSON() ([]byte, error) {
+	type NoMethod GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
 // GroupAssetsRequest: Request message for grouping by assets.
 type GroupAssetsRequest struct {
 	// CompareDuration: When compare_duration is set, the GroupResult's
diff --git a/securitycenter/v1beta1/securitycenter-api.json b/securitycenter/v1beta1/securitycenter-api.json
index 33c302e..f7dafce 100644
--- a/securitycenter/v1beta1/securitycenter-api.json
+++ b/securitycenter/v1beta1/securitycenter-api.json
@@ -895,7 +895,7 @@
       }
     }
   },
-  "revision": "20190403",
+  "revision": "20190419",
   "rootUrl": "https://securitycenter.googleapis.com/",
   "schemas": {
     "Asset": {
@@ -1135,6 +1135,62 @@
       "properties": {},
       "type": "object"
     },
+    "GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse": {
+      "description": "Response of asset discovery run",
+      "id": "GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse",
+      "properties": {
+        "duration": {
+          "description": "The duration between asset discovery run start and end",
+          "format": "google-duration",
+          "type": "string"
+        },
+        "state": {
+          "description": "The state of an asset discovery run.",
+          "enum": [
+            "STATE_UNSPECIFIED",
+            "COMPLETED",
+            "SUPERSEDED",
+            "TERMINATED"
+          ],
+          "enumDescriptions": [
+            "Asset discovery run state was unspecified.",
+            "Asset discovery run completed successfully.",
+            "Asset discovery run was cancelled with tasks still pending, as another\nrun for the same organization was started with a higher priority.",
+            "Asset discovery run was killed and terminated."
+          ],
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
+    "GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse": {
+      "description": "Response of asset discovery run",
+      "id": "GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse",
+      "properties": {
+        "duration": {
+          "description": "The duration between asset discovery run start and end",
+          "format": "google-duration",
+          "type": "string"
+        },
+        "state": {
+          "description": "The state of an asset discovery run.",
+          "enum": [
+            "STATE_UNSPECIFIED",
+            "COMPLETED",
+            "SUPERSEDED",
+            "TERMINATED"
+          ],
+          "enumDescriptions": [
+            "Asset discovery run state was unspecified.",
+            "Asset discovery run completed successfully.",
+            "Asset discovery run was cancelled with tasks still pending, as another\nrun for the same organization was started with a higher priority.",
+            "Asset discovery run was killed and terminated."
+          ],
+          "type": "string"
+        }
+      },
+      "type": "object"
+    },
     "GroupAssetsRequest": {
       "description": "Request message for grouping by assets.",
       "id": "GroupAssetsRequest",
diff --git a/securitycenter/v1beta1/securitycenter-gen.go b/securitycenter/v1beta1/securitycenter-gen.go
index 28c856e..26019b5 100644
--- a/securitycenter/v1beta1/securitycenter-gen.go
+++ b/securitycenter/v1beta1/securitycenter-gen.go
@@ -715,6 +715,86 @@
 type GetIamPolicyRequest struct {
 }
 
+// GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse: Response of
+// asset discovery run
+type GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse struct {
+	// Duration: The duration between asset discovery run start and end
+	Duration string `json:"duration,omitempty"`
+
+	// State: The state of an asset discovery run.
+	//
+	// Possible values:
+	//   "STATE_UNSPECIFIED" - Asset discovery run state was unspecified.
+	//   "COMPLETED" - Asset discovery run completed successfully.
+	//   "SUPERSEDED" - Asset discovery run was cancelled with tasks still
+	// pending, as another
+	// run for the same organization was started with a higher priority.
+	//   "TERMINATED" - Asset discovery run was killed and terminated.
+	State string `json:"state,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "Duration") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "Duration") to include in
+	// API requests with the JSON null value. By default, fields with empty
+	// values are omitted from API requests. However, any field with an
+	// empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse) MarshalJSON() ([]byte, error) {
+	type NoMethod GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse: Response
+// of asset discovery run
+type GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse struct {
+	// Duration: The duration between asset discovery run start and end
+	Duration string `json:"duration,omitempty"`
+
+	// State: The state of an asset discovery run.
+	//
+	// Possible values:
+	//   "STATE_UNSPECIFIED" - Asset discovery run state was unspecified.
+	//   "COMPLETED" - Asset discovery run completed successfully.
+	//   "SUPERSEDED" - Asset discovery run was cancelled with tasks still
+	// pending, as another
+	// run for the same organization was started with a higher priority.
+	//   "TERMINATED" - Asset discovery run was killed and terminated.
+	State string `json:"state,omitempty"`
+
+	// ForceSendFields is a list of field names (e.g. "Duration") to
+	// unconditionally include in API requests. By default, fields with
+	// empty values are omitted from API requests. However, any non-pointer,
+	// non-interface field appearing in ForceSendFields will be sent to the
+	// server regardless of whether the field is empty or not. This may be
+	// used to include empty fields in Patch requests.
+	ForceSendFields []string `json:"-"`
+
+	// NullFields is a list of field names (e.g. "Duration") to include in
+	// API requests with the JSON null value. By default, fields with empty
+	// values are omitted from API requests. However, any field with an
+	// empty value appearing in NullFields will be sent to the server as
+	// null. It is an error if a field in this list has a non-empty value.
+	// This may be used to include null fields in Patch requests.
+	NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse) MarshalJSON() ([]byte, error) {
+	type NoMethod GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse
+	raw := NoMethod(*s)
+	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
 // GroupAssetsRequest: Request message for grouping by assets.
 type GroupAssetsRequest struct {
 	// CompareDuration: When compare_duration is set, the Asset's "state"
diff --git a/spanner/v1/spanner-api.json b/spanner/v1/spanner-api.json
index 7bb5c89..094dd4a 100644
--- a/spanner/v1/spanner-api.json
+++ b/spanner/v1/spanner-api.json
@@ -343,7 +343,7 @@
               ],
               "parameters": {
                 "name": {
-                  "description": "Required. A unique identifier for the instance, which cannot be changed\nafter the instance is created. Values are of the form\n`projects/\u003cproject\u003e/instances/a-z*[a-z0-9]`. The final\nsegment of the name must be between 6 and 30 characters in length.",
+                  "description": "Required. A unique identifier for the instance, which cannot be changed\nafter the instance is created. Values are of the form\n`projects/\u003cproject\u003e/instances/a-z*[a-z0-9]`. The final\nsegment of the name must be between 2 and 64 characters in length.",
                   "location": "path",
                   "pattern": "^projects/[^/]+/instances/[^/]+$",
                   "required": true,
@@ -1358,7 +1358,7 @@
       }
     }
   },
-  "revision": "20190214",
+  "revision": "20190403",
   "rootUrl": "https://spanner.googleapis.com/",
   "schemas": {
     "BeginTransactionRequest": {
@@ -1381,7 +1381,7 @@
           "description": "Unimplemented. The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently."
         },
         "members": {
-          "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n   on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n   who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n   account. For example, `alice@gmail.com` .\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n   account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n   For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n   users of that domain. For example, `google.com` or `example.com`.\n\n",
+          "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n   on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n   who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n   account. For example, `alice@gmail.com` .\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n   account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n   For example, `admins@example.com`.\n\n\n* `domain:{domain}`: The G Suite domain (primary) that represents all the\n   users of that domain. For example, `google.com` or `example.com`.\n\n",
           "items": {
             "type": "string"
           },
@@ -1513,7 +1513,7 @@
           "description": "Required. The instance to create.  The name may be omitted, but if\nspecified must be `\u003cparent\u003e/instances/\u003cinstance_id\u003e`."
         },
         "instanceId": {
-          "description": "Required. The ID of the instance to create.  Valid identifiers are of the\nform `a-z*[a-z0-9]` and must be between 6 and 30 characters in\nlength.",
+          "description": "Required. The ID of the instance to create.  Valid identifiers are of the\nform `a-z*[a-z0-9]` and must be between 2 and 64 characters in\nlength.",
           "type": "string"
         }
       },
@@ -1754,7 +1754,7 @@
           "type": "object"
         },
         "name": {
-          "description": "Required. A unique identifier for the instance, which cannot be changed\nafter the instance is created. Values are of the form\n`projects/\u003cproject\u003e/instances/a-z*[a-z0-9]`. The final\nsegment of the name must be between 6 and 30 characters in length.",
+          "description": "Required. A unique identifier for the instance, which cannot be changed\nafter the instance is created. Values are of the form\n`projects/\u003cproject\u003e/instances/a-z*[a-z0-9]`. The final\nsegment of the name must be between 2 and 64 characters in length.",
           "type": "string"
         },
         "nodeCount": {
@@ -1795,7 +1795,7 @@
       "type": "object"
     },
     "KeyRange": {
-      "description": "KeyRange represents a range of rows in a table or index.\n\nA range has a start key and an end key. These keys can be open or\nclosed, indicating if the range includes rows with that key.\n\nKeys are represented by lists, where the ith value in the list\ncorresponds to the ith component of the table or index primary key.\nIndividual values are encoded as described here.\n\nFor example, consider the following table definition:\n\n    CREATE TABLE UserEvents (\n      UserName STRING(MAX),\n      EventDate STRING(10)\n    ) PRIMARY KEY(UserName, EventDate);\n\nThe following keys name rows in this table:\n\n    \"Bob\", \"2014-09-23\"\n\nSince the `UserEvents` table's `PRIMARY KEY` clause names two\ncolumns, each `UserEvents` key has two elements; the first is the\n`UserName`, and the second is the `EventDate`.\n\nKey ranges with multiple components are interpreted\nlexicographically by component using the table or index key's declared\nsort order. For example, the following range returns all events for\nuser `\"Bob\"` that occurred in the year 2015:\n\n    \"start_closed\": [\"Bob\", \"2015-01-01\"]\n    \"end_closed\": [\"Bob\", \"2015-12-31\"]\n\nStart and end keys can omit trailing key components. This affects the\ninclusion and exclusion of rows that exactly match the provided key\ncomponents: if the key is closed, then rows that exactly match the\nprovided components are included; if the key is open, then rows\nthat exactly match are not included.\n\nFor example, the following range includes all events for `\"Bob\"` that\noccurred during and after the year 2000:\n\n    \"start_closed\": [\"Bob\", \"2000-01-01\"]\n    \"end_closed\": [\"Bob\"]\n\nThe next example retrieves all events for `\"Bob\"`:\n\n    \"start_closed\": [\"Bob\"]\n    \"end_closed\": [\"Bob\"]\n\nTo retrieve events before the year 2000:\n\n    \"start_closed\": [\"Bob\"]\n    \"end_open\": [\"Bob\", \"2000-01-01\"]\n\nThe following range includes all rows in the table:\n\n    \"start_closed\": []\n    \"end_closed\": []\n\nThis range returns all users whose `UserName` begins with any\ncharacter from A to C:\n\n    \"start_closed\": [\"A\"]\n    \"end_open\": [\"D\"]\n\nThis range returns all users whose `UserName` begins with B:\n\n    \"start_closed\": [\"B\"]\n    \"end_open\": [\"C\"]\n\nKey ranges honor column sort order. For example, suppose a table is\ndefined as follows:\n\n    CREATE TABLE DescendingSortedTable {\n      Key INT64,\n      ...\n    ) PRIMARY KEY(Key DESC);\n\nThe following range retrieves all rows with key values between 1\nand 100 inclusive:\n\n    \"start_closed\": [\"100\"]\n    \"end_closed\": [\"1\"]\n\nNote that 100 is passed as the start, and 1 is passed as the end,\nbecause `Key` is a descending column in the schema.",
+      "description": "KeyRange represents a range of rows in a table or index.\n\nA range has a start key and an end key. These keys can be open or\nclosed, indicating if the range includes rows with that key.\n\nKeys are represented by lists, where the ith value in the list\ncorresponds to the ith component of the table or index primary key.\nIndividual values are encoded as described\nhere.\n\nFor example, consider the following table definition:\n\n    CREATE TABLE UserEvents (\n      UserName STRING(MAX),\n      EventDate STRING(10)\n    ) PRIMARY KEY(UserName, EventDate);\n\nThe following keys name rows in this table:\n\n    \"Bob\", \"2014-09-23\"\n\nSince the `UserEvents` table's `PRIMARY KEY` clause names two\ncolumns, each `UserEvents` key has two elements; the first is the\n`UserName`, and the second is the `EventDate`.\n\nKey ranges with multiple components are interpreted\nlexicographically by component using the table or index key's declared\nsort order. For example, the following range returns all events for\nuser `\"Bob\"` that occurred in the year 2015:\n\n    \"start_closed\": [\"Bob\", \"2015-01-01\"]\n    \"end_closed\": [\"Bob\", \"2015-12-31\"]\n\nStart and end keys can omit trailing key components. This affects the\ninclusion and exclusion of rows that exactly match the provided key\ncomponents: if the key is closed, then rows that exactly match the\nprovided components are included; if the key is open, then rows\nthat exactly match are not included.\n\nFor example, the following range includes all events for `\"Bob\"` that\noccurred during and after the year 2000:\n\n    \"start_closed\": [\"Bob\", \"2000-01-01\"]\n    \"end_closed\": [\"Bob\"]\n\nThe next example retrieves all events for `\"Bob\"`:\n\n    \"start_closed\": [\"Bob\"]\n    \"end_closed\": [\"Bob\"]\n\nTo retrieve events before the year 2000:\n\n    \"start_closed\": [\"Bob\"]\n    \"end_open\": [\"Bob\", \"2000-01-01\"]\n\nThe following range includes all rows in the table:\n\n    \"start_closed\": []\n    \"end_closed\": []\n\nThis range returns all users whose `UserName` begins with any\ncharacter from A to C:\n\n    \"start_closed\": [\"A\"]\n    \"end_open\": [\"D\"]\n\nThis range returns all users whose `UserName` begins with B:\n\n    \"start_closed\": [\"B\"]\n    \"end_open\": [\"C\"]\n\nKey ranges honor column sort order. For example, suppose a table is\ndefined as follows:\n\n    CREATE TABLE DescendingSortedTable {\n      Key INT64,\n      ...\n    ) PRIMARY KEY(Key DESC);\n\nThe following range retrieves all rows with key values between 1\nand 100 inclusive:\n\n    \"start_closed\": [\"100\"]\n    \"end_closed\": [\"1\"]\n\nNote that 100 is passed as the start, and 1 is passed as the end,\nbecause `Key` is a descending column in the schema.",
       "id": "KeyRange",
       "properties": {
         "endClosed": {
@@ -2508,7 +2508,7 @@
       "type": "object"
     },
     "Status": {
-      "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed.  The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n    it may embed the `Status` in the normal response to indicate the partial\n    errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n    have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n    `Status` message should be used directly inside batch response, one for\n    each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n    results in its response, the status of those operations should be\n    represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n    be used directly after any stripping needed for security/privacy reasons.",
+      "description": "The `Status` type defines a logical error model that is suitable for\ndifferent programming environments, including REST APIs and RPC APIs. It is\nused by [gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error\nmessage, and error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed.  The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n    it may embed the `Status` in the normal response to indicate the partial\n    errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n    have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n    `Status` message should be used directly inside batch response, one for\n    each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n    results in its response, the status of those operations should be\n    represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n    be used directly after any stripping needed for security/privacy reasons.",
       "id": "Status",
       "properties": {
         "code": {
@@ -2663,7 +2663,7 @@
             "Encoded as `string` in RFC 3339 date format.",
             "Encoded as `string`.",
             "Encoded as a base64-encoded `string`, as described in RFC 4648,\nsection 4.",
-            "Encoded as `list`, where the list elements are represented\naccording to array_element_type.",
+            "Encoded as `list`, where the list elements are represented\naccording to\narray_element_type.",
             "Encoded as `list`, where list element `i` is represented according\nto [struct_type.fields[i]][google.spanner.v1.StructType.fields]."
           ],
           "type": "string"
diff --git a/spanner/v1/spanner-gen.go b/spanner/v1/spanner-gen.go
index f799397..6622d4e 100644
--- a/spanner/v1/spanner-gen.go
+++ b/spanner/v1/spanner-gen.go
@@ -291,7 +291,7 @@
 	//    For example, `admins@example.com`.
 	//
 	//
-	// * `domain:{domain}`: A Google Apps domain name that represents all
+	// * `domain:{domain}`: The G Suite domain (primary) that represents all
 	// the
 	//    users of that domain. For example, `google.com` or
 	// `example.com`.
@@ -591,7 +591,7 @@
 
 	// InstanceId: Required. The ID of the instance to create.  Valid
 	// identifiers are of the
-	// form `a-z*[a-z0-9]` and must be between 6 and 30 characters
+	// form `a-z*[a-z0-9]` and must be between 2 and 64 characters
 	// in
 	// length.
 	InstanceId string `json:"instanceId,omitempty"`
@@ -1199,7 +1199,7 @@
 	// after the instance is created. Values are of the
 	// form
 	// `projects/<project>/instances/a-z*[a-z0-9]`. The final
-	// segment of the name must be between 6 and 30 characters in length.
+	// segment of the name must be between 2 and 64 characters in length.
 	Name string `json:"name,omitempty"`
 
 	// NodeCount: Required. The number of nodes allocated to this instance.
@@ -1307,7 +1307,8 @@
 // list
 // corresponds to the ith component of the table or index primary
 // key.
-// Individual values are encoded as described here.
+// Individual values are encoded as described
+// here.
 //
 // For example, consider the following table definition:
 //
@@ -3032,20 +3033,20 @@
 }
 
 // Status: 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:
+// 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:
 //
 // - Simple to use and understand for most users
 // - Flexible enough to meet unexpected needs
 //
 // # Overview
 //
-// The `Status` message contains three pieces of data: error code, error
-// message,
-// and error details. The error code should be an enum value
+// The `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
@@ -3819,7 +3820,8 @@
 	// section 4.
 	//   "ARRAY" - Encoded as `list`, where the list elements are
 	// represented
-	// according to array_element_type.
+	// according to
+	// array_element_type.
 	//   "STRUCT" - Encoded as `list`, where list element `i` is represented
 	// according
 	// to [struct_type.fields[i]][google.spanner.v1.StructType.fields].
@@ -5449,7 +5451,7 @@
 	//   ],
 	//   "parameters": {
 	//     "name": {
-	//       "description": "Required. A unique identifier for the instance, which cannot be changed\nafter the instance is created. Values are of the form\n`projects/\u003cproject\u003e/instances/a-z*[a-z0-9]`. The final\nsegment of the name must be between 6 and 30 characters in length.",
+	//       "description": "Required. A unique identifier for the instance, which cannot be changed\nafter the instance is created. Values are of the form\n`projects/\u003cproject\u003e/instances/a-z*[a-z0-9]`. The final\nsegment of the name must be between 2 and 64 characters in length.",
 	//       "location": "path",
 	//       "pattern": "^projects/[^/]+/instances/[^/]+$",
 	//       "required": true,
diff --git a/storagetransfer/v1/storagetransfer-api.json b/storagetransfer/v1/storagetransfer-api.json
index 1bd0a03..8e6165e 100644
--- a/storagetransfer/v1/storagetransfer-api.json
+++ b/storagetransfer/v1/storagetransfer-api.json
@@ -420,7 +420,7 @@
       }
     }
   },
-  "revision": "20190306",
+  "revision": "20190419",
   "rootUrl": "https://storagetransfer.googleapis.com/",
   "schemas": {
     "AwsAccessKey": {
@@ -540,7 +540,7 @@
             "The operation was attempted past the valid range.  E.g., seeking or\nreading past end-of-file.\n\nUnlike `INVALID_ARGUMENT`, this error indicates a problem that may\nbe fixed if the system state changes. For example, a 32-bit file\nsystem will generate `INVALID_ARGUMENT` if asked to read at an\noffset that is not in the range [0,2^32-1], but it will generate\n`OUT_OF_RANGE` if asked to read from an offset past the current\nfile size.\n\nThere is a fair bit of overlap between `FAILED_PRECONDITION` and\n`OUT_OF_RANGE`.  We recommend using `OUT_OF_RANGE` (the more specific\nerror) when it applies so that callers who are iterating through\na space can easily look for an `OUT_OF_RANGE` error to detect when\nthey are done.\n\nHTTP Mapping: 400 Bad Request",
             "The operation is not implemented or is not supported/enabled in this\nservice.\n\nHTTP Mapping: 501 Not Implemented",
             "Internal errors.  This means that some invariants expected by the\nunderlying system have been broken.  This error code is reserved\nfor serious errors.\n\nHTTP Mapping: 500 Internal Server Error",
-            "The service is currently unavailable.  This is most likely a\ntransient condition, which can be corrected by retrying with\na backoff.\n\nSee the guidelines above for deciding between `FAILED_PRECONDITION`,\n`ABORTED`, and `UNAVAILABLE`.\n\nHTTP Mapping: 503 Service Unavailable",
+            "The service is currently unavailable.  This is most likely a\ntransient condition, which can be corrected by retrying with\na backoff. Note that it is not always safe to retry\nnon-idempotent operations.\n\nSee the guidelines above for deciding between `FAILED_PRECONDITION`,\n`ABORTED`, and `UNAVAILABLE`.\n\nHTTP Mapping: 503 Service Unavailable",
             "Unrecoverable data loss or corruption.\n\nHTTP Mapping: 500 Internal Server Error"
           ],
           "type": "string"
diff --git a/storagetransfer/v1/storagetransfer-gen.go b/storagetransfer/v1/storagetransfer-gen.go
index 9707fce..b548d6d 100644
--- a/storagetransfer/v1/storagetransfer-gen.go
+++ b/storagetransfer/v1/storagetransfer-gen.go
@@ -501,7 +501,8 @@
 	//   "UNAVAILABLE" - The service is currently unavailable.  This is most
 	// likely a
 	// transient condition, which can be corrected by retrying with
-	// a backoff.
+	// a backoff. Note that it is not always safe to retry
+	// non-idempotent operations.
 	//
 	// See the guidelines above for deciding between
 	// `FAILED_PRECONDITION`,
diff --git a/youtube/v3/youtube-api.json b/youtube/v3/youtube-api.json
index 1497d0b..d7446bd 100644
--- a/youtube/v3/youtube-api.json
+++ b/youtube/v3/youtube-api.json
@@ -30,7 +30,7 @@
   "description": "Supports core YouTube features, such as uploading videos, creating and managing playlists, searching for content, and much more.",
   "discoveryVersion": "v1",
   "documentationLink": "https://developers.google.com/youtube/v3",
-  "etag": "\"J3WqvAcMk4eQjJXvfSI4Yr8VouA/1jg0CI2utjqWmZlLNTmtG27447k\"",
+  "etag": "\"VPK3KBfpaEgZ16pozGOoMYfKc0U/vE_46pOxDHWLqzSanMM8GY5Yd3c\"",
   "icons": {
     "x16": "https://www.google.com/images/icons/product/youtube-16.png",
     "x32": "https://www.google.com/images/icons/product/youtube-32.png"
@@ -3493,7 +3493,7 @@
       }
     }
   },
-  "revision": "20190128",
+  "revision": "20190415",
   "rootUrl": "https://www.googleapis.com/",
   "schemas": {
     "AccessPolicy": {
@@ -4153,7 +4153,7 @@
           "description": "The method or protocol used to transmit the video stream.",
           "enum": [
             "dash",
-            "http",
+            "hls",
             "rtmp",
             "webrtc"
           ],
diff --git a/youtube/v3/youtube-gen.go b/youtube/v3/youtube-gen.go
index 8ab78d7..3ca998a 100644
--- a/youtube/v3/youtube-gen.go
+++ b/youtube/v3/youtube-gen.go
@@ -1394,7 +1394,7 @@
 	//
 	// Possible values:
 	//   "dash"
-	//   "http"
+	//   "hls"
 	//   "rtmp"
 	//   "webrtc"
 	IngestionType string `json:"ingestionType,omitempty"`