diff --git a/docs/dyn/analyticsadmin_v1alpha.accounts.userLinks.html b/docs/dyn/analyticsadmin_v1alpha.accounts.userLinks.html
index fb85eb2..16c79ce 100644
--- a/docs/dyn/analyticsadmin_v1alpha.accounts.userLinks.html
+++ b/docs/dyn/analyticsadmin_v1alpha.accounts.userLinks.html
@@ -186,8 +186,8 @@
         &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
           &quot;A String&quot;,
         ],
-        &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-        &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+        &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+        &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
       },
     },
   ],
@@ -207,8 +207,8 @@
       &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
         &quot;A String&quot;,
       ],
-      &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-      &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+      &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+      &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
     },
   ],
 }</pre>
@@ -264,8 +264,8 @@
       &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
         &quot;A String&quot;,
       ],
-      &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-      &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+      &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+      &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
     },
   ],
 }</pre>
@@ -287,8 +287,8 @@
         &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
           &quot;A String&quot;,
         ],
-        &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-        &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+        &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+        &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
       },
     },
   ],
@@ -308,8 +308,8 @@
       &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
         &quot;A String&quot;,
       ],
-      &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-      &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+      &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+      &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
     },
   ],
 }</pre>
@@ -333,8 +333,8 @@
   &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
     &quot;A String&quot;,
   ],
-  &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-  &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+  &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+  &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
 }
 
   notifyNewUser: boolean, Optional. If set, then email the new user notifying them that they&#x27;ve been granted permissions to the resource.
@@ -350,8 +350,8 @@
   &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
     &quot;A String&quot;,
   ],
-  &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-  &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+  &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+  &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
 }</pre>
 </div>
 
@@ -391,8 +391,8 @@
   &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
     &quot;A String&quot;,
   ],
-  &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-  &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+  &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+  &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
 }</pre>
 </div>
 
@@ -419,8 +419,8 @@
       &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
         &quot;A String&quot;,
       ],
-      &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-      &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+      &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+      &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
     },
   ],
 }</pre>
@@ -445,7 +445,7 @@
   <pre>Updates a user link on an account or property.
 
 Args:
-  name: string, Example format: properties/1234/userLinks/5678 (required)
+  name: string, Output only. Example format: properties/1234/userLinks/5678 (required)
   body: object, The request body.
     The object takes the form of:
 
@@ -453,8 +453,8 @@
   &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
     &quot;A String&quot;,
   ],
-  &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-  &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+  &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+  &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
 }
 
   x__xgafv: string, V1 error format.
@@ -469,8 +469,8 @@
   &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
     &quot;A String&quot;,
   ],
-  &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-  &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+  &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+  &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
 }</pre>
 </div>
 
diff --git a/docs/dyn/analyticsadmin_v1alpha.properties.userLinks.html b/docs/dyn/analyticsadmin_v1alpha.properties.userLinks.html
index 93c6976..2ed1836 100644
--- a/docs/dyn/analyticsadmin_v1alpha.properties.userLinks.html
+++ b/docs/dyn/analyticsadmin_v1alpha.properties.userLinks.html
@@ -186,8 +186,8 @@
         &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
           &quot;A String&quot;,
         ],
-        &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-        &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+        &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+        &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
       },
     },
   ],
@@ -207,8 +207,8 @@
       &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
         &quot;A String&quot;,
       ],
-      &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-      &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+      &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+      &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
     },
   ],
 }</pre>
@@ -264,8 +264,8 @@
       &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
         &quot;A String&quot;,
       ],
-      &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-      &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+      &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+      &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
     },
   ],
 }</pre>
@@ -287,8 +287,8 @@
         &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
           &quot;A String&quot;,
         ],
-        &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-        &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+        &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+        &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
       },
     },
   ],
@@ -308,8 +308,8 @@
       &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
         &quot;A String&quot;,
       ],
-      &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-      &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+      &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+      &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
     },
   ],
 }</pre>
@@ -333,8 +333,8 @@
   &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
     &quot;A String&quot;,
   ],
-  &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-  &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+  &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+  &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
 }
 
   notifyNewUser: boolean, Optional. If set, then email the new user notifying them that they&#x27;ve been granted permissions to the resource.
@@ -350,8 +350,8 @@
   &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
     &quot;A String&quot;,
   ],
-  &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-  &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+  &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+  &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
 }</pre>
 </div>
 
@@ -391,8 +391,8 @@
   &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
     &quot;A String&quot;,
   ],
-  &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-  &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+  &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+  &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
 }</pre>
 </div>
 
@@ -419,8 +419,8 @@
       &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
         &quot;A String&quot;,
       ],
-      &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-      &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+      &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+      &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
     },
   ],
 }</pre>
@@ -445,7 +445,7 @@
   <pre>Updates a user link on an account or property.
 
 Args:
-  name: string, Example format: properties/1234/userLinks/5678 (required)
+  name: string, Output only. Example format: properties/1234/userLinks/5678 (required)
   body: object, The request body.
     The object takes the form of:
 
@@ -453,8 +453,8 @@
   &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
     &quot;A String&quot;,
   ],
-  &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-  &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+  &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+  &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
 }
 
   x__xgafv: string, V1 error format.
@@ -469,8 +469,8 @@
   &quot;directRoles&quot;: [ # Roles directly assigned to this user for this account or property. Valid values: predefinedRoles/read predefinedRoles/collaborate predefinedRoles/edit predefinedRoles/manage-users Excludes roles that are inherited from a higher-level entity, group, or organization admin role. A UserLink that is updated to have an empty list of direct_roles will be deleted.
     &quot;A String&quot;,
   ],
-  &quot;emailAddress&quot;: &quot;A String&quot;, # Email address of the user to link
-  &quot;name&quot;: &quot;A String&quot;, # Example format: properties/1234/userLinks/5678
+  &quot;emailAddress&quot;: &quot;A String&quot;, # Immutable. Email address of the user to link
+  &quot;name&quot;: &quot;A String&quot;, # Output only. Example format: properties/1234/userLinks/5678
 }</pre>
 </div>
 
diff --git a/docs/dyn/appengine_v1.apps.html b/docs/dyn/appengine_v1.apps.html
index 541796f..1e441b9 100644
--- a/docs/dyn/appengine_v1.apps.html
+++ b/docs/dyn/appengine_v1.apps.html
@@ -120,7 +120,7 @@
 <p class="firstline">Gets information about an application.</p>
 <p class="toc_element">
   <code><a href="#patch">patch(appsId, body=None, updateMask=None, x__xgafv=None)</a></code></p>
-<p class="firstline">Updates the specified Application resource. You can update the following fields: auth_domain - Google authentication domain for controlling user access to the application. default_cookie_expiration - Cookie expiration policy for the application.</p>
+<p class="firstline">Updates the specified Application resource. You can update the following fields: auth_domain - Google authentication domain for controlling user access to the application. default_cookie_expiration - Cookie expiration policy for the application. iap - Identity-Aware Proxy properties for the application.</p>
 <p class="toc_element">
   <code><a href="#repair">repair(appsId, body=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Recreates the required App Engine features for the specified App Engine application, for example a Cloud Storage bucket or App Engine service account. Use this method if you receive an error message about a missing feature, for example, Error retrieving the App Engine service account. If you have deleted your App Engine service account, this will not be able to recreate it. Instead, you should attempt to use the IAM undelete API if possible at https://cloud.google.com/iam/reference/rest/v1/projects.serviceAccounts/undelete?apix_params=%7B"name"%3A"projects%2F-%2FserviceAccounts%2Funique_id"%2C"resource"%3A%7B%7D%7D . If the deletion was recent, the numeric ID can be found in the Cloud Console Activity Log.</p>
@@ -246,7 +246,7 @@
 
 <div class="method">
     <code class="details" id="patch">patch(appsId, body=None, updateMask=None, x__xgafv=None)</code>
-  <pre>Updates the specified Application resource. You can update the following fields: auth_domain - Google authentication domain for controlling user access to the application. default_cookie_expiration - Cookie expiration policy for the application.
+  <pre>Updates the specified Application resource. You can update the following fields: auth_domain - Google authentication domain for controlling user access to the application. default_cookie_expiration - Cookie expiration policy for the application. iap - Identity-Aware Proxy properties for the application.
 
 Args:
   appsId: string, Part of `name`. Name of the Application resource to update. Example: apps/myapp. (required)
diff --git a/docs/dyn/appengine_v1beta.apps.html b/docs/dyn/appengine_v1beta.apps.html
index 80ad571..0f05771 100644
--- a/docs/dyn/appengine_v1beta.apps.html
+++ b/docs/dyn/appengine_v1beta.apps.html
@@ -120,7 +120,7 @@
 <p class="firstline">Gets information about an application.</p>
 <p class="toc_element">
   <code><a href="#patch">patch(appsId, body=None, updateMask=None, x__xgafv=None)</a></code></p>
-<p class="firstline">Updates the specified Application resource. You can update the following fields: auth_domain - Google authentication domain for controlling user access to the application. default_cookie_expiration - Cookie expiration policy for the application.</p>
+<p class="firstline">Updates the specified Application resource. You can update the following fields: auth_domain - Google authentication domain for controlling user access to the application. default_cookie_expiration - Cookie expiration policy for the application. iap - Identity-Aware Proxy properties for the application.</p>
 <p class="toc_element">
   <code><a href="#repair">repair(appsId, body=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Recreates the required App Engine features for the specified App Engine application, for example a Cloud Storage bucket or App Engine service account. Use this method if you receive an error message about a missing feature, for example, Error retrieving the App Engine service account. If you have deleted your App Engine service account, this will not be able to recreate it. Instead, you should attempt to use the IAM undelete API if possible at https://cloud.google.com/iam/reference/rest/v1/projects.serviceAccounts/undelete?apix_params=%7B"name"%3A"projects%2F-%2FserviceAccounts%2Funique_id"%2C"resource"%3A%7B%7D%7D . If the deletion was recent, the numeric ID can be found in the Cloud Console Activity Log.</p>
@@ -246,7 +246,7 @@
 
 <div class="method">
     <code class="details" id="patch">patch(appsId, body=None, updateMask=None, x__xgafv=None)</code>
-  <pre>Updates the specified Application resource. You can update the following fields: auth_domain - Google authentication domain for controlling user access to the application. default_cookie_expiration - Cookie expiration policy for the application.
+  <pre>Updates the specified Application resource. You can update the following fields: auth_domain - Google authentication domain for controlling user access to the application. default_cookie_expiration - Cookie expiration policy for the application. iap - Identity-Aware Proxy properties for the application.
 
 Args:
   appsId: string, Part of `name`. Name of the Application resource to update. Example: apps/myapp. (required)
diff --git a/docs/dyn/baremetalsolution_v1.html b/docs/dyn/baremetalsolution_v1.html
new file mode 100644
index 0000000..b8717fc
--- /dev/null
+++ b/docs/dyn/baremetalsolution_v1.html
@@ -0,0 +1,111 @@
+<html><body>
+<style>
+
+body, h1, h2, h3, div, span, p, pre, a {
+  margin: 0;
+  padding: 0;
+  border: 0;
+  font-weight: inherit;
+  font-style: inherit;
+  font-size: 100%;
+  font-family: inherit;
+  vertical-align: baseline;
+}
+
+body {
+  font-size: 13px;
+  padding: 1em;
+}
+
+h1 {
+  font-size: 26px;
+  margin-bottom: 1em;
+}
+
+h2 {
+  font-size: 24px;
+  margin-bottom: 1em;
+}
+
+h3 {
+  font-size: 20px;
+  margin-bottom: 1em;
+  margin-top: 1em;
+}
+
+pre, code {
+  line-height: 1.5;
+  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
+}
+
+pre {
+  margin-top: 0.5em;
+}
+
+h1, h2, h3, p {
+  font-family: Arial, sans serif;
+}
+
+h1, h2, h3 {
+  border-bottom: solid #CCC 1px;
+}
+
+.toc_element {
+  margin-top: 0.5em;
+}
+
+.firstline {
+  margin-left: 2 em;
+}
+
+.method  {
+  margin-top: 1em;
+  border: solid 1px #CCC;
+  padding: 1em;
+  background: #EEE;
+}
+
+.details {
+  font-weight: bold;
+  font-size: 14px;
+}
+
+</style>
+
+<h1><a href="baremetalsolution_v1.html">Bare Metal Solution API</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="baremetalsolution_v1.projects.html">projects()</a></code>
+</p>
+<p class="firstline">Returns the projects Resource.</p>
+
+<p class="toc_element">
+  <code><a href="#close">close()</a></code></p>
+<p class="firstline">Close httplib2 connections.</p>
+<p class="toc_element">
+  <code><a href="#new_batch_http_request">new_batch_http_request()</a></code></p>
+<p class="firstline">Create a BatchHttpRequest object based on the discovery document.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="close">close()</code>
+  <pre>Close httplib2 connections.</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="new_batch_http_request">new_batch_http_request()</code>
+  <pre>Create a BatchHttpRequest object based on the discovery document.
+
+        Args:
+          callback: callable, A callback to be called for each response, of the
+            form callback(id, response, exception). The first parameter is the
+            request id, and the second is the deserialized response object. The
+            third is an apiclient.errors.HttpError exception object if an HTTP
+            error occurred while processing the request, or None if no error
+            occurred.
+
+        Returns:
+          A BatchHttpRequest object based on the discovery document.
+        </pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/baremetalsolution_v1.projects.html b/docs/dyn/baremetalsolution_v1.projects.html
new file mode 100644
index 0000000..6597391
--- /dev/null
+++ b/docs/dyn/baremetalsolution_v1.projects.html
@@ -0,0 +1,91 @@
+<html><body>
+<style>
+
+body, h1, h2, h3, div, span, p, pre, a {
+  margin: 0;
+  padding: 0;
+  border: 0;
+  font-weight: inherit;
+  font-style: inherit;
+  font-size: 100%;
+  font-family: inherit;
+  vertical-align: baseline;
+}
+
+body {
+  font-size: 13px;
+  padding: 1em;
+}
+
+h1 {
+  font-size: 26px;
+  margin-bottom: 1em;
+}
+
+h2 {
+  font-size: 24px;
+  margin-bottom: 1em;
+}
+
+h3 {
+  font-size: 20px;
+  margin-bottom: 1em;
+  margin-top: 1em;
+}
+
+pre, code {
+  line-height: 1.5;
+  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
+}
+
+pre {
+  margin-top: 0.5em;
+}
+
+h1, h2, h3, p {
+  font-family: Arial, sans serif;
+}
+
+h1, h2, h3 {
+  border-bottom: solid #CCC 1px;
+}
+
+.toc_element {
+  margin-top: 0.5em;
+}
+
+.firstline {
+  margin-left: 2 em;
+}
+
+.method  {
+  margin-top: 1em;
+  border: solid 1px #CCC;
+  padding: 1em;
+  background: #EEE;
+}
+
+.details {
+  font-weight: bold;
+  font-size: 14px;
+}
+
+</style>
+
+<h1><a href="baremetalsolution_v1.html">Bare Metal Solution API</a> . <a href="baremetalsolution_v1.projects.html">projects</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="baremetalsolution_v1.projects.locations.html">locations()</a></code>
+</p>
+<p class="firstline">Returns the locations Resource.</p>
+
+<p class="toc_element">
+  <code><a href="#close">close()</a></code></p>
+<p class="firstline">Close httplib2 connections.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="close">close()</code>
+  <pre>Close httplib2 connections.</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/baremetalsolution_v1.projects.locations.html b/docs/dyn/baremetalsolution_v1.projects.locations.html
new file mode 100644
index 0000000..0433254
--- /dev/null
+++ b/docs/dyn/baremetalsolution_v1.projects.locations.html
@@ -0,0 +1,91 @@
+<html><body>
+<style>
+
+body, h1, h2, h3, div, span, p, pre, a {
+  margin: 0;
+  padding: 0;
+  border: 0;
+  font-weight: inherit;
+  font-style: inherit;
+  font-size: 100%;
+  font-family: inherit;
+  vertical-align: baseline;
+}
+
+body {
+  font-size: 13px;
+  padding: 1em;
+}
+
+h1 {
+  font-size: 26px;
+  margin-bottom: 1em;
+}
+
+h2 {
+  font-size: 24px;
+  margin-bottom: 1em;
+}
+
+h3 {
+  font-size: 20px;
+  margin-bottom: 1em;
+  margin-top: 1em;
+}
+
+pre, code {
+  line-height: 1.5;
+  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
+}
+
+pre {
+  margin-top: 0.5em;
+}
+
+h1, h2, h3, p {
+  font-family: Arial, sans serif;
+}
+
+h1, h2, h3 {
+  border-bottom: solid #CCC 1px;
+}
+
+.toc_element {
+  margin-top: 0.5em;
+}
+
+.firstline {
+  margin-left: 2 em;
+}
+
+.method  {
+  margin-top: 1em;
+  border: solid 1px #CCC;
+  padding: 1em;
+  background: #EEE;
+}
+
+.details {
+  font-weight: bold;
+  font-size: 14px;
+}
+
+</style>
+
+<h1><a href="baremetalsolution_v1.html">Bare Metal Solution API</a> . <a href="baremetalsolution_v1.projects.html">projects</a> . <a href="baremetalsolution_v1.projects.locations.html">locations</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="baremetalsolution_v1.projects.locations.instances.html">instances()</a></code>
+</p>
+<p class="firstline">Returns the instances Resource.</p>
+
+<p class="toc_element">
+  <code><a href="#close">close()</a></code></p>
+<p class="firstline">Close httplib2 connections.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="close">close()</code>
+  <pre>Close httplib2 connections.</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/baremetalsolution_v1.projects.locations.instances.html b/docs/dyn/baremetalsolution_v1.projects.locations.instances.html
new file mode 100644
index 0000000..a24e1e4
--- /dev/null
+++ b/docs/dyn/baremetalsolution_v1.projects.locations.instances.html
@@ -0,0 +1,113 @@
+<html><body>
+<style>
+
+body, h1, h2, h3, div, span, p, pre, a {
+  margin: 0;
+  padding: 0;
+  border: 0;
+  font-weight: inherit;
+  font-style: inherit;
+  font-size: 100%;
+  font-family: inherit;
+  vertical-align: baseline;
+}
+
+body {
+  font-size: 13px;
+  padding: 1em;
+}
+
+h1 {
+  font-size: 26px;
+  margin-bottom: 1em;
+}
+
+h2 {
+  font-size: 24px;
+  margin-bottom: 1em;
+}
+
+h3 {
+  font-size: 20px;
+  margin-bottom: 1em;
+  margin-top: 1em;
+}
+
+pre, code {
+  line-height: 1.5;
+  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
+}
+
+pre {
+  margin-top: 0.5em;
+}
+
+h1, h2, h3, p {
+  font-family: Arial, sans serif;
+}
+
+h1, h2, h3 {
+  border-bottom: solid #CCC 1px;
+}
+
+.toc_element {
+  margin-top: 0.5em;
+}
+
+.firstline {
+  margin-left: 2 em;
+}
+
+.method  {
+  margin-top: 1em;
+  border: solid 1px #CCC;
+  padding: 1em;
+  background: #EEE;
+}
+
+.details {
+  font-weight: bold;
+  font-size: 14px;
+}
+
+</style>
+
+<h1><a href="baremetalsolution_v1.html">Bare Metal Solution API</a> . <a href="baremetalsolution_v1.projects.html">projects</a> . <a href="baremetalsolution_v1.projects.locations.html">locations</a> . <a href="baremetalsolution_v1.projects.locations.instances.html">instances</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#close">close()</a></code></p>
+<p class="firstline">Close httplib2 connections.</p>
+<p class="toc_element">
+  <code><a href="#resetInstance">resetInstance(instance, body=None, x__xgafv=None)</a></code></p>
+<p class="firstline">Perform an ungraceful, hard reset on a machine (equivalent to shutting the power off, and then turning it back on).</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="close">close()</code>
+  <pre>Close httplib2 connections.</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="resetInstance">resetInstance(instance, body=None, x__xgafv=None)</code>
+  <pre>Perform an ungraceful, hard reset on a machine (equivalent to shutting the power off, and then turning it back on).
+
+Args:
+  instance: string, Required. Name of the instance to reset. (required)
+  body: object, The request body.
+    The object takes the form of:
+
+{ # Request for ResetInstance.
+}
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # Response for ResetInstance.
+}</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/bigquery_v2.jobs.html b/docs/dyn/bigquery_v2.jobs.html
index 859d1f6..f0a0ffa 100644
--- a/docs/dyn/bigquery_v2.jobs.html
+++ b/docs/dyn/bigquery_v2.jobs.html
@@ -474,6 +474,11 @@
         &quot;billingTier&quot;: 42, # [Output-only] Billing tier for the job.
         &quot;cacheHit&quot;: True or False, # [Output-only] Whether the query result was fetched from the query cache.
         &quot;ddlAffectedRowAccessPolicyCount&quot;: &quot;A String&quot;, # [Output-only] [Preview] The number of row access policies affected by a DDL statement. Present only for DROP ALL ROW ACCESS POLICIES queries.
+        &quot;ddlDestinationTable&quot;: { # [Output-only] The DDL destination table. Present only for ALTER TABLE RENAME TO queries. Note that ddl_target_table is used just for its type information.
+          &quot;datasetId&quot;: &quot;A String&quot;, # [Required] The ID of the dataset containing this table.
+          &quot;projectId&quot;: &quot;A String&quot;, # [Required] The ID of the project containing this table.
+          &quot;tableId&quot;: &quot;A String&quot;, # [Required] The ID of the table. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.
+        },
         &quot;ddlOperationPerformed&quot;: &quot;A String&quot;, # The DDL operation performed, possibly dependent on the pre-existence of the DDL target. Possible values (new values might be added in the future): &quot;CREATE&quot;: The query created the DDL target. &quot;SKIP&quot;: No-op. Example cases: the query is CREATE TABLE IF NOT EXISTS while the table already exists, or the query is DROP TABLE IF EXISTS while the table does not exist. &quot;REPLACE&quot;: The query replaced the DDL target. Example case: the query is CREATE OR REPLACE TABLE, and the table already exists. &quot;DROP&quot;: The query deleted the DDL target.
         &quot;ddlTargetDataset&quot;: { # [Output-only] The DDL target dataset. Present only for CREATE/ALTER/DROP SCHEMA queries.
           &quot;datasetId&quot;: &quot;A String&quot;, # [Required] A unique ID for this dataset, without the project name. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.
@@ -1076,6 +1081,11 @@
       &quot;billingTier&quot;: 42, # [Output-only] Billing tier for the job.
       &quot;cacheHit&quot;: True or False, # [Output-only] Whether the query result was fetched from the query cache.
       &quot;ddlAffectedRowAccessPolicyCount&quot;: &quot;A String&quot;, # [Output-only] [Preview] The number of row access policies affected by a DDL statement. Present only for DROP ALL ROW ACCESS POLICIES queries.
+      &quot;ddlDestinationTable&quot;: { # [Output-only] The DDL destination table. Present only for ALTER TABLE RENAME TO queries. Note that ddl_target_table is used just for its type information.
+        &quot;datasetId&quot;: &quot;A String&quot;, # [Required] The ID of the dataset containing this table.
+        &quot;projectId&quot;: &quot;A String&quot;, # [Required] The ID of the project containing this table.
+        &quot;tableId&quot;: &quot;A String&quot;, # [Required] The ID of the table. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.
+      },
       &quot;ddlOperationPerformed&quot;: &quot;A String&quot;, # The DDL operation performed, possibly dependent on the pre-existence of the DDL target. Possible values (new values might be added in the future): &quot;CREATE&quot;: The query created the DDL target. &quot;SKIP&quot;: No-op. Example cases: the query is CREATE TABLE IF NOT EXISTS while the table already exists, or the query is DROP TABLE IF EXISTS while the table does not exist. &quot;REPLACE&quot;: The query replaced the DDL target. Example case: the query is CREATE OR REPLACE TABLE, and the table already exists. &quot;DROP&quot;: The query deleted the DDL target.
       &quot;ddlTargetDataset&quot;: { # [Output-only] The DDL target dataset. Present only for CREATE/ALTER/DROP SCHEMA queries.
         &quot;datasetId&quot;: &quot;A String&quot;, # [Required] A unique ID for this dataset, without the project name. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.
@@ -1747,6 +1757,11 @@
       &quot;billingTier&quot;: 42, # [Output-only] Billing tier for the job.
       &quot;cacheHit&quot;: True or False, # [Output-only] Whether the query result was fetched from the query cache.
       &quot;ddlAffectedRowAccessPolicyCount&quot;: &quot;A String&quot;, # [Output-only] [Preview] The number of row access policies affected by a DDL statement. Present only for DROP ALL ROW ACCESS POLICIES queries.
+      &quot;ddlDestinationTable&quot;: { # [Output-only] The DDL destination table. Present only for ALTER TABLE RENAME TO queries. Note that ddl_target_table is used just for its type information.
+        &quot;datasetId&quot;: &quot;A String&quot;, # [Required] The ID of the dataset containing this table.
+        &quot;projectId&quot;: &quot;A String&quot;, # [Required] The ID of the project containing this table.
+        &quot;tableId&quot;: &quot;A String&quot;, # [Required] The ID of the table. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.
+      },
       &quot;ddlOperationPerformed&quot;: &quot;A String&quot;, # The DDL operation performed, possibly dependent on the pre-existence of the DDL target. Possible values (new values might be added in the future): &quot;CREATE&quot;: The query created the DDL target. &quot;SKIP&quot;: No-op. Example cases: the query is CREATE TABLE IF NOT EXISTS while the table already exists, or the query is DROP TABLE IF EXISTS while the table does not exist. &quot;REPLACE&quot;: The query replaced the DDL target. Example case: the query is CREATE OR REPLACE TABLE, and the table already exists. &quot;DROP&quot;: The query deleted the DDL target.
       &quot;ddlTargetDataset&quot;: { # [Output-only] The DDL target dataset. Present only for CREATE/ALTER/DROP SCHEMA queries.
         &quot;datasetId&quot;: &quot;A String&quot;, # [Required] A unique ID for this dataset, without the project name. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.
@@ -2324,6 +2339,11 @@
       &quot;billingTier&quot;: 42, # [Output-only] Billing tier for the job.
       &quot;cacheHit&quot;: True or False, # [Output-only] Whether the query result was fetched from the query cache.
       &quot;ddlAffectedRowAccessPolicyCount&quot;: &quot;A String&quot;, # [Output-only] [Preview] The number of row access policies affected by a DDL statement. Present only for DROP ALL ROW ACCESS POLICIES queries.
+      &quot;ddlDestinationTable&quot;: { # [Output-only] The DDL destination table. Present only for ALTER TABLE RENAME TO queries. Note that ddl_target_table is used just for its type information.
+        &quot;datasetId&quot;: &quot;A String&quot;, # [Required] The ID of the dataset containing this table.
+        &quot;projectId&quot;: &quot;A String&quot;, # [Required] The ID of the project containing this table.
+        &quot;tableId&quot;: &quot;A String&quot;, # [Required] The ID of the table. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.
+      },
       &quot;ddlOperationPerformed&quot;: &quot;A String&quot;, # The DDL operation performed, possibly dependent on the pre-existence of the DDL target. Possible values (new values might be added in the future): &quot;CREATE&quot;: The query created the DDL target. &quot;SKIP&quot;: No-op. Example cases: the query is CREATE TABLE IF NOT EXISTS while the table already exists, or the query is DROP TABLE IF EXISTS while the table does not exist. &quot;REPLACE&quot;: The query replaced the DDL target. Example case: the query is CREATE OR REPLACE TABLE, and the table already exists. &quot;DROP&quot;: The query deleted the DDL target.
       &quot;ddlTargetDataset&quot;: { # [Output-only] The DDL target dataset. Present only for CREATE/ALTER/DROP SCHEMA queries.
         &quot;datasetId&quot;: &quot;A String&quot;, # [Required] A unique ID for this dataset, without the project name. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.
@@ -2929,6 +2949,11 @@
           &quot;billingTier&quot;: 42, # [Output-only] Billing tier for the job.
           &quot;cacheHit&quot;: True or False, # [Output-only] Whether the query result was fetched from the query cache.
           &quot;ddlAffectedRowAccessPolicyCount&quot;: &quot;A String&quot;, # [Output-only] [Preview] The number of row access policies affected by a DDL statement. Present only for DROP ALL ROW ACCESS POLICIES queries.
+          &quot;ddlDestinationTable&quot;: { # [Output-only] The DDL destination table. Present only for ALTER TABLE RENAME TO queries. Note that ddl_target_table is used just for its type information.
+            &quot;datasetId&quot;: &quot;A String&quot;, # [Required] The ID of the dataset containing this table.
+            &quot;projectId&quot;: &quot;A String&quot;, # [Required] The ID of the project containing this table.
+            &quot;tableId&quot;: &quot;A String&quot;, # [Required] The ID of the table. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.
+          },
           &quot;ddlOperationPerformed&quot;: &quot;A String&quot;, # The DDL operation performed, possibly dependent on the pre-existence of the DDL target. Possible values (new values might be added in the future): &quot;CREATE&quot;: The query created the DDL target. &quot;SKIP&quot;: No-op. Example cases: the query is CREATE TABLE IF NOT EXISTS while the table already exists, or the query is DROP TABLE IF EXISTS while the table does not exist. &quot;REPLACE&quot;: The query replaced the DDL target. Example case: the query is CREATE OR REPLACE TABLE, and the table already exists. &quot;DROP&quot;: The query deleted the DDL target.
           &quot;ddlTargetDataset&quot;: { # [Output-only] The DDL target dataset. Present only for CREATE/ALTER/DROP SCHEMA queries.
             &quot;datasetId&quot;: &quot;A String&quot;, # [Required] A unique ID for this dataset, without the project name. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.
diff --git a/docs/dyn/bigtableadmin_v2.projects.locations.html b/docs/dyn/bigtableadmin_v2.projects.locations.html
index b5b5d1e..c135c58 100644
--- a/docs/dyn/bigtableadmin_v2.projects.locations.html
+++ b/docs/dyn/bigtableadmin_v2.projects.locations.html
@@ -126,7 +126,7 @@
 Args:
   name: string, The resource that owns the locations collection, if applicable. (required)
   filter: string, A filter to narrow down results to a preferred subset. The filtering language accepts strings like &quot;displayName=tokyo&quot;, and is documented in more detail in [AIP-160](https://google.aip.dev/160).
-  pageSize: integer, The maximum number of results to return. If not set, the service will select a default.
+  pageSize: integer, The maximum number of results to return. If not set, the service selects a default.
   pageToken: string, A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page.
   x__xgafv: string, V1 error format.
     Allowed values
diff --git a/docs/dyn/cloudchannel_v1.accounts.channelPartnerLinks.customers.html b/docs/dyn/cloudchannel_v1.accounts.channelPartnerLinks.customers.html
index 4fea37e..86f97d2 100644
--- a/docs/dyn/cloudchannel_v1.accounts.channelPartnerLinks.customers.html
+++ b/docs/dyn/cloudchannel_v1.accounts.channelPartnerLinks.customers.html
@@ -82,10 +82,10 @@
 <p class="firstline">Creates a new Customer resource under the reseller or distributor account. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: * Required request parameters are missing or invalid. * Domain field value doesn't match the primary email domain. Return value: The newly created Customer resource.</p>
 <p class="toc_element">
   <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
-<p class="firstline">Deletes the given Customer permanently and irreversibly. Possible error codes: * PERMISSION_DENIED: The account making the request does not own this customer. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * FAILED_PRECONDITION: The customer has existing entitlements. * NOT_FOUND: No Customer resource found for the name in the request.</p>
+<p class="firstline">Deletes the given Customer permanently. Possible error codes: * PERMISSION_DENIED: The account making the request does not own this customer. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * FAILED_PRECONDITION: The customer has existing entitlements. * NOT_FOUND: No Customer resource found for the name in the request.</p>
 <p class="toc_element">
   <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
-<p class="firstline">Returns a requested Customer resource. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * NOT_FOUND: The customer resource doesn't exist. Usually the result of an invalid name parameter. Return value: The Customer resource.</p>
+<p class="firstline">Returns the requested Customer resource. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * NOT_FOUND: The customer resource doesn't exist. Usually the result of an invalid name parameter. Return value: The Customer resource.</p>
 <p class="toc_element">
   <code><a href="#list">list(parent, pageSize=None, pageToken=None, x__xgafv=None)</a></code></p>
 <p class="firstline">List Customers. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: Required request parameters are missing or invalid. Return value: List of Customers, or an empty list if there are no customers.</p>
@@ -111,9 +111,9 @@
     The object takes the form of:
 
 { # Entity representing a customer of a reseller or distributor.
-  &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. Alternate email and primary contact email are required to have different domains if primary contact email is present. When creating admin.google.com accounts, users get notified credentials at this email. This email address is also used as a recovery email.
+  &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. You need to provide an alternate email to create different domains if a primary contact email already exists. Users will receive a notification with credentials when you create an admin.google.com account. Secondary emails are also recovery email addresses.
   &quot;channelPartnerId&quot;: &quot;A String&quot;, # Cloud Identity ID of the customer&#x27;s channel partner. Populated only if a channel partner exists for this customer.
-  &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. Customer&#x27;s cloud_identity_id. Populated only if a Cloud Identity resource exists for this customer.
+  &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. The customer&#x27;s Cloud Identity ID if the customer has a Cloud Identity resource.
   &quot;cloudIdentityInfo&quot;: { # Cloud Identity information for the Cloud Channel Customer. # Output only. Cloud Identity information for the customer. Populated only if a Cloud Identity account exists for this customer.
     &quot;adminConsoleUri&quot;: &quot;A String&quot;, # Output only. URI of Customer&#x27;s Admin console dashboard.
     &quot;alternateEmail&quot;: &quot;A String&quot;, # The alternate email.
@@ -128,12 +128,12 @@
     &quot;phoneNumber&quot;: &quot;A String&quot;, # Phone number associated with the Cloud Identity.
     &quot;primaryDomain&quot;: &quot;A String&quot;, # Output only. The primary domain name.
   },
-  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is created.
-  &quot;domain&quot;: &quot;A String&quot;, # Required. Primary domain used by the customer. Domain of primary contact email is required to be same as the provided domain.
+  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was created.
+  &quot;domain&quot;: &quot;A String&quot;, # Required. The customer&#x27;s primary domain. Must match the primary contact email&#x27;s domain.
   &quot;languageCode&quot;: &quot;A String&quot;, # Optional. The BCP-47 language code, such as &quot;en-US&quot; or &quot;sr-Latn&quot;. For more information, see https://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
   &quot;name&quot;: &quot;A String&quot;, # Output only. Resource name of the customer. Format: accounts/{account_id}/customers/{customer_id}
   &quot;orgDisplayName&quot;: &quot;A String&quot;, # Required. Name of the organization that the customer entity represents.
-  &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. Address of the organization of the customer entity. Region and zip codes are required to enforce US laws and embargoes. Valid address lines are required for all customers. Language code is discarded. Use the Customer-level language code to set the customer&#x27;s language.
+  &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. The organization address for the customer. To enforce US laws and embargoes, we require a region and zip code. You must provide valid addresses for every customer. To set the customer&#x27;s language, use the Customer-level language code.
     &quot;addressLines&quot;: [ # Unstructured address lines describing the lower levels of an address. Because values in address_lines do not have type information and may sometimes contain multiple values in a single field (e.g. &quot;Austin, TX&quot;), it is important that the line order is clear. The order of address lines should be &quot;envelope order&quot; for the country/region of the address. In places where this can vary (e.g. Japan), address_language is used to make it explicit (e.g. &quot;ja&quot; for large-to-small ordering and &quot;ja-Latn&quot; or &quot;en&quot; for small-to-large). This way, the most specific line of an address can be selected based on the language. The minimum permitted structural representation of an address consists of a region_code with all remaining information placed in the address_lines. It would be possible to format such an address very approximately without geocoding, but no semantic reasoning could be made about any of the address components until it was at least partially resolved. Creating an address only containing a region_code and address_lines, and then geocoding is the recommended way to handle completely unstructured addresses (as opposed to guessing which parts of the address should be localities or administrative areas).
       &quot;A String&quot;,
     ],
@@ -151,14 +151,14 @@
     &quot;sublocality&quot;: &quot;A String&quot;, # Optional. Sublocality of the address. For example, this can be neighborhoods, boroughs, districts.
   },
   &quot;primaryContactInfo&quot;: { # Contact information for a customer account. # Primary contact info.
-    &quot;displayName&quot;: &quot;A String&quot;, # Output only. Display name of the contact in the customer account. Populated by combining customer first name and last name.
-    &quot;email&quot;: &quot;A String&quot;, # Email of the contact in the customer account. Email is required for entitlements that need creation of admin.google.com accounts. The email will be the username used in credentials to access the admin.google.com account.
-    &quot;firstName&quot;: &quot;A String&quot;, # First name of the contact in the customer account.
-    &quot;lastName&quot;: &quot;A String&quot;, # Last name of the contact in the customer account.
-    &quot;phone&quot;: &quot;A String&quot;, # Phone number of the contact in the customer account.
-    &quot;title&quot;: &quot;A String&quot;, # Optional. Job title of the contact in the customer account.
+    &quot;displayName&quot;: &quot;A String&quot;, # Output only. The customer account contact&#x27;s display name, formatted as a combination of the customer&#x27;s first and last name.
+    &quot;email&quot;: &quot;A String&quot;, # The customer account&#x27;s contact email. Required for entitlements that create admin.google.com accounts, and serves as the customer&#x27;s username for those accounts.
+    &quot;firstName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s first name.
+    &quot;lastName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s last name.
+    &quot;phone&quot;: &quot;A String&quot;, # The customer account&#x27;s contact phone number.
+    &quot;title&quot;: &quot;A String&quot;, # Optional. The customer account contact&#x27;s job title.
   },
-  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is updated.
+  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was updated.
 }
 
   x__xgafv: string, V1 error format.
@@ -170,9 +170,9 @@
   An object of the form:
 
     { # Entity representing a customer of a reseller or distributor.
-  &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. Alternate email and primary contact email are required to have different domains if primary contact email is present. When creating admin.google.com accounts, users get notified credentials at this email. This email address is also used as a recovery email.
+  &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. You need to provide an alternate email to create different domains if a primary contact email already exists. Users will receive a notification with credentials when you create an admin.google.com account. Secondary emails are also recovery email addresses.
   &quot;channelPartnerId&quot;: &quot;A String&quot;, # Cloud Identity ID of the customer&#x27;s channel partner. Populated only if a channel partner exists for this customer.
-  &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. Customer&#x27;s cloud_identity_id. Populated only if a Cloud Identity resource exists for this customer.
+  &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. The customer&#x27;s Cloud Identity ID if the customer has a Cloud Identity resource.
   &quot;cloudIdentityInfo&quot;: { # Cloud Identity information for the Cloud Channel Customer. # Output only. Cloud Identity information for the customer. Populated only if a Cloud Identity account exists for this customer.
     &quot;adminConsoleUri&quot;: &quot;A String&quot;, # Output only. URI of Customer&#x27;s Admin console dashboard.
     &quot;alternateEmail&quot;: &quot;A String&quot;, # The alternate email.
@@ -187,12 +187,12 @@
     &quot;phoneNumber&quot;: &quot;A String&quot;, # Phone number associated with the Cloud Identity.
     &quot;primaryDomain&quot;: &quot;A String&quot;, # Output only. The primary domain name.
   },
-  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is created.
-  &quot;domain&quot;: &quot;A String&quot;, # Required. Primary domain used by the customer. Domain of primary contact email is required to be same as the provided domain.
+  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was created.
+  &quot;domain&quot;: &quot;A String&quot;, # Required. The customer&#x27;s primary domain. Must match the primary contact email&#x27;s domain.
   &quot;languageCode&quot;: &quot;A String&quot;, # Optional. The BCP-47 language code, such as &quot;en-US&quot; or &quot;sr-Latn&quot;. For more information, see https://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
   &quot;name&quot;: &quot;A String&quot;, # Output only. Resource name of the customer. Format: accounts/{account_id}/customers/{customer_id}
   &quot;orgDisplayName&quot;: &quot;A String&quot;, # Required. Name of the organization that the customer entity represents.
-  &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. Address of the organization of the customer entity. Region and zip codes are required to enforce US laws and embargoes. Valid address lines are required for all customers. Language code is discarded. Use the Customer-level language code to set the customer&#x27;s language.
+  &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. The organization address for the customer. To enforce US laws and embargoes, we require a region and zip code. You must provide valid addresses for every customer. To set the customer&#x27;s language, use the Customer-level language code.
     &quot;addressLines&quot;: [ # Unstructured address lines describing the lower levels of an address. Because values in address_lines do not have type information and may sometimes contain multiple values in a single field (e.g. &quot;Austin, TX&quot;), it is important that the line order is clear. The order of address lines should be &quot;envelope order&quot; for the country/region of the address. In places where this can vary (e.g. Japan), address_language is used to make it explicit (e.g. &quot;ja&quot; for large-to-small ordering and &quot;ja-Latn&quot; or &quot;en&quot; for small-to-large). This way, the most specific line of an address can be selected based on the language. The minimum permitted structural representation of an address consists of a region_code with all remaining information placed in the address_lines. It would be possible to format such an address very approximately without geocoding, but no semantic reasoning could be made about any of the address components until it was at least partially resolved. Creating an address only containing a region_code and address_lines, and then geocoding is the recommended way to handle completely unstructured addresses (as opposed to guessing which parts of the address should be localities or administrative areas).
       &quot;A String&quot;,
     ],
@@ -210,20 +210,20 @@
     &quot;sublocality&quot;: &quot;A String&quot;, # Optional. Sublocality of the address. For example, this can be neighborhoods, boroughs, districts.
   },
   &quot;primaryContactInfo&quot;: { # Contact information for a customer account. # Primary contact info.
-    &quot;displayName&quot;: &quot;A String&quot;, # Output only. Display name of the contact in the customer account. Populated by combining customer first name and last name.
-    &quot;email&quot;: &quot;A String&quot;, # Email of the contact in the customer account. Email is required for entitlements that need creation of admin.google.com accounts. The email will be the username used in credentials to access the admin.google.com account.
-    &quot;firstName&quot;: &quot;A String&quot;, # First name of the contact in the customer account.
-    &quot;lastName&quot;: &quot;A String&quot;, # Last name of the contact in the customer account.
-    &quot;phone&quot;: &quot;A String&quot;, # Phone number of the contact in the customer account.
-    &quot;title&quot;: &quot;A String&quot;, # Optional. Job title of the contact in the customer account.
+    &quot;displayName&quot;: &quot;A String&quot;, # Output only. The customer account contact&#x27;s display name, formatted as a combination of the customer&#x27;s first and last name.
+    &quot;email&quot;: &quot;A String&quot;, # The customer account&#x27;s contact email. Required for entitlements that create admin.google.com accounts, and serves as the customer&#x27;s username for those accounts.
+    &quot;firstName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s first name.
+    &quot;lastName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s last name.
+    &quot;phone&quot;: &quot;A String&quot;, # The customer account&#x27;s contact phone number.
+    &quot;title&quot;: &quot;A String&quot;, # Optional. The customer account contact&#x27;s job title.
   },
-  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is updated.
+  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was updated.
 }</pre>
 </div>
 
 <div class="method">
     <code class="details" id="delete">delete(name, x__xgafv=None)</code>
-  <pre>Deletes the given Customer permanently and irreversibly. Possible error codes: * PERMISSION_DENIED: The account making the request does not own this customer. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * FAILED_PRECONDITION: The customer has existing entitlements. * NOT_FOUND: No Customer resource found for the name in the request.
+  <pre>Deletes the given Customer permanently. Possible error codes: * PERMISSION_DENIED: The account making the request does not own this customer. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * FAILED_PRECONDITION: The customer has existing entitlements. * NOT_FOUND: No Customer resource found for the name in the request.
 
 Args:
   name: string, Required. The resource name of the customer to delete. (required)
@@ -241,7 +241,7 @@
 
 <div class="method">
     <code class="details" id="get">get(name, x__xgafv=None)</code>
-  <pre>Returns a requested Customer resource. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * NOT_FOUND: The customer resource doesn&#x27;t exist. Usually the result of an invalid name parameter. Return value: The Customer resource.
+  <pre>Returns the requested Customer resource. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * NOT_FOUND: The customer resource doesn&#x27;t exist. Usually the result of an invalid name parameter. Return value: The Customer resource.
 
 Args:
   name: string, Required. The resource name of the customer to retrieve. Name uses the format: accounts/{account_id}/customers/{customer_id} (required)
@@ -254,9 +254,9 @@
   An object of the form:
 
     { # Entity representing a customer of a reseller or distributor.
-  &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. Alternate email and primary contact email are required to have different domains if primary contact email is present. When creating admin.google.com accounts, users get notified credentials at this email. This email address is also used as a recovery email.
+  &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. You need to provide an alternate email to create different domains if a primary contact email already exists. Users will receive a notification with credentials when you create an admin.google.com account. Secondary emails are also recovery email addresses.
   &quot;channelPartnerId&quot;: &quot;A String&quot;, # Cloud Identity ID of the customer&#x27;s channel partner. Populated only if a channel partner exists for this customer.
-  &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. Customer&#x27;s cloud_identity_id. Populated only if a Cloud Identity resource exists for this customer.
+  &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. The customer&#x27;s Cloud Identity ID if the customer has a Cloud Identity resource.
   &quot;cloudIdentityInfo&quot;: { # Cloud Identity information for the Cloud Channel Customer. # Output only. Cloud Identity information for the customer. Populated only if a Cloud Identity account exists for this customer.
     &quot;adminConsoleUri&quot;: &quot;A String&quot;, # Output only. URI of Customer&#x27;s Admin console dashboard.
     &quot;alternateEmail&quot;: &quot;A String&quot;, # The alternate email.
@@ -271,12 +271,12 @@
     &quot;phoneNumber&quot;: &quot;A String&quot;, # Phone number associated with the Cloud Identity.
     &quot;primaryDomain&quot;: &quot;A String&quot;, # Output only. The primary domain name.
   },
-  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is created.
-  &quot;domain&quot;: &quot;A String&quot;, # Required. Primary domain used by the customer. Domain of primary contact email is required to be same as the provided domain.
+  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was created.
+  &quot;domain&quot;: &quot;A String&quot;, # Required. The customer&#x27;s primary domain. Must match the primary contact email&#x27;s domain.
   &quot;languageCode&quot;: &quot;A String&quot;, # Optional. The BCP-47 language code, such as &quot;en-US&quot; or &quot;sr-Latn&quot;. For more information, see https://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
   &quot;name&quot;: &quot;A String&quot;, # Output only. Resource name of the customer. Format: accounts/{account_id}/customers/{customer_id}
   &quot;orgDisplayName&quot;: &quot;A String&quot;, # Required. Name of the organization that the customer entity represents.
-  &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. Address of the organization of the customer entity. Region and zip codes are required to enforce US laws and embargoes. Valid address lines are required for all customers. Language code is discarded. Use the Customer-level language code to set the customer&#x27;s language.
+  &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. The organization address for the customer. To enforce US laws and embargoes, we require a region and zip code. You must provide valid addresses for every customer. To set the customer&#x27;s language, use the Customer-level language code.
     &quot;addressLines&quot;: [ # Unstructured address lines describing the lower levels of an address. Because values in address_lines do not have type information and may sometimes contain multiple values in a single field (e.g. &quot;Austin, TX&quot;), it is important that the line order is clear. The order of address lines should be &quot;envelope order&quot; for the country/region of the address. In places where this can vary (e.g. Japan), address_language is used to make it explicit (e.g. &quot;ja&quot; for large-to-small ordering and &quot;ja-Latn&quot; or &quot;en&quot; for small-to-large). This way, the most specific line of an address can be selected based on the language. The minimum permitted structural representation of an address consists of a region_code with all remaining information placed in the address_lines. It would be possible to format such an address very approximately without geocoding, but no semantic reasoning could be made about any of the address components until it was at least partially resolved. Creating an address only containing a region_code and address_lines, and then geocoding is the recommended way to handle completely unstructured addresses (as opposed to guessing which parts of the address should be localities or administrative areas).
       &quot;A String&quot;,
     ],
@@ -294,14 +294,14 @@
     &quot;sublocality&quot;: &quot;A String&quot;, # Optional. Sublocality of the address. For example, this can be neighborhoods, boroughs, districts.
   },
   &quot;primaryContactInfo&quot;: { # Contact information for a customer account. # Primary contact info.
-    &quot;displayName&quot;: &quot;A String&quot;, # Output only. Display name of the contact in the customer account. Populated by combining customer first name and last name.
-    &quot;email&quot;: &quot;A String&quot;, # Email of the contact in the customer account. Email is required for entitlements that need creation of admin.google.com accounts. The email will be the username used in credentials to access the admin.google.com account.
-    &quot;firstName&quot;: &quot;A String&quot;, # First name of the contact in the customer account.
-    &quot;lastName&quot;: &quot;A String&quot;, # Last name of the contact in the customer account.
-    &quot;phone&quot;: &quot;A String&quot;, # Phone number of the contact in the customer account.
-    &quot;title&quot;: &quot;A String&quot;, # Optional. Job title of the contact in the customer account.
+    &quot;displayName&quot;: &quot;A String&quot;, # Output only. The customer account contact&#x27;s display name, formatted as a combination of the customer&#x27;s first and last name.
+    &quot;email&quot;: &quot;A String&quot;, # The customer account&#x27;s contact email. Required for entitlements that create admin.google.com accounts, and serves as the customer&#x27;s username for those accounts.
+    &quot;firstName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s first name.
+    &quot;lastName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s last name.
+    &quot;phone&quot;: &quot;A String&quot;, # The customer account&#x27;s contact phone number.
+    &quot;title&quot;: &quot;A String&quot;, # Optional. The customer account contact&#x27;s job title.
   },
-  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is updated.
+  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was updated.
 }</pre>
 </div>
 
@@ -324,9 +324,9 @@
     { # Response message for CloudChannelService.ListCustomers.
   &quot;customers&quot;: [ # The customers belonging to a reseller or distributor.
     { # Entity representing a customer of a reseller or distributor.
-      &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. Alternate email and primary contact email are required to have different domains if primary contact email is present. When creating admin.google.com accounts, users get notified credentials at this email. This email address is also used as a recovery email.
+      &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. You need to provide an alternate email to create different domains if a primary contact email already exists. Users will receive a notification with credentials when you create an admin.google.com account. Secondary emails are also recovery email addresses.
       &quot;channelPartnerId&quot;: &quot;A String&quot;, # Cloud Identity ID of the customer&#x27;s channel partner. Populated only if a channel partner exists for this customer.
-      &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. Customer&#x27;s cloud_identity_id. Populated only if a Cloud Identity resource exists for this customer.
+      &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. The customer&#x27;s Cloud Identity ID if the customer has a Cloud Identity resource.
       &quot;cloudIdentityInfo&quot;: { # Cloud Identity information for the Cloud Channel Customer. # Output only. Cloud Identity information for the customer. Populated only if a Cloud Identity account exists for this customer.
         &quot;adminConsoleUri&quot;: &quot;A String&quot;, # Output only. URI of Customer&#x27;s Admin console dashboard.
         &quot;alternateEmail&quot;: &quot;A String&quot;, # The alternate email.
@@ -341,12 +341,12 @@
         &quot;phoneNumber&quot;: &quot;A String&quot;, # Phone number associated with the Cloud Identity.
         &quot;primaryDomain&quot;: &quot;A String&quot;, # Output only. The primary domain name.
       },
-      &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is created.
-      &quot;domain&quot;: &quot;A String&quot;, # Required. Primary domain used by the customer. Domain of primary contact email is required to be same as the provided domain.
+      &quot;createTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was created.
+      &quot;domain&quot;: &quot;A String&quot;, # Required. The customer&#x27;s primary domain. Must match the primary contact email&#x27;s domain.
       &quot;languageCode&quot;: &quot;A String&quot;, # Optional. The BCP-47 language code, such as &quot;en-US&quot; or &quot;sr-Latn&quot;. For more information, see https://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
       &quot;name&quot;: &quot;A String&quot;, # Output only. Resource name of the customer. Format: accounts/{account_id}/customers/{customer_id}
       &quot;orgDisplayName&quot;: &quot;A String&quot;, # Required. Name of the organization that the customer entity represents.
-      &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. Address of the organization of the customer entity. Region and zip codes are required to enforce US laws and embargoes. Valid address lines are required for all customers. Language code is discarded. Use the Customer-level language code to set the customer&#x27;s language.
+      &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. The organization address for the customer. To enforce US laws and embargoes, we require a region and zip code. You must provide valid addresses for every customer. To set the customer&#x27;s language, use the Customer-level language code.
         &quot;addressLines&quot;: [ # Unstructured address lines describing the lower levels of an address. Because values in address_lines do not have type information and may sometimes contain multiple values in a single field (e.g. &quot;Austin, TX&quot;), it is important that the line order is clear. The order of address lines should be &quot;envelope order&quot; for the country/region of the address. In places where this can vary (e.g. Japan), address_language is used to make it explicit (e.g. &quot;ja&quot; for large-to-small ordering and &quot;ja-Latn&quot; or &quot;en&quot; for small-to-large). This way, the most specific line of an address can be selected based on the language. The minimum permitted structural representation of an address consists of a region_code with all remaining information placed in the address_lines. It would be possible to format such an address very approximately without geocoding, but no semantic reasoning could be made about any of the address components until it was at least partially resolved. Creating an address only containing a region_code and address_lines, and then geocoding is the recommended way to handle completely unstructured addresses (as opposed to guessing which parts of the address should be localities or administrative areas).
           &quot;A String&quot;,
         ],
@@ -364,14 +364,14 @@
         &quot;sublocality&quot;: &quot;A String&quot;, # Optional. Sublocality of the address. For example, this can be neighborhoods, boroughs, districts.
       },
       &quot;primaryContactInfo&quot;: { # Contact information for a customer account. # Primary contact info.
-        &quot;displayName&quot;: &quot;A String&quot;, # Output only. Display name of the contact in the customer account. Populated by combining customer first name and last name.
-        &quot;email&quot;: &quot;A String&quot;, # Email of the contact in the customer account. Email is required for entitlements that need creation of admin.google.com accounts. The email will be the username used in credentials to access the admin.google.com account.
-        &quot;firstName&quot;: &quot;A String&quot;, # First name of the contact in the customer account.
-        &quot;lastName&quot;: &quot;A String&quot;, # Last name of the contact in the customer account.
-        &quot;phone&quot;: &quot;A String&quot;, # Phone number of the contact in the customer account.
-        &quot;title&quot;: &quot;A String&quot;, # Optional. Job title of the contact in the customer account.
+        &quot;displayName&quot;: &quot;A String&quot;, # Output only. The customer account contact&#x27;s display name, formatted as a combination of the customer&#x27;s first and last name.
+        &quot;email&quot;: &quot;A String&quot;, # The customer account&#x27;s contact email. Required for entitlements that create admin.google.com accounts, and serves as the customer&#x27;s username for those accounts.
+        &quot;firstName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s first name.
+        &quot;lastName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s last name.
+        &quot;phone&quot;: &quot;A String&quot;, # The customer account&#x27;s contact phone number.
+        &quot;title&quot;: &quot;A String&quot;, # Optional. The customer account contact&#x27;s job title.
       },
-      &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is updated.
+      &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was updated.
     },
   ],
   &quot;nextPageToken&quot;: &quot;A String&quot;, # A token to retrieve the next page of results. Pass to ListCustomersRequest.page_token to obtain that page.
@@ -402,9 +402,9 @@
     The object takes the form of:
 
 { # Entity representing a customer of a reseller or distributor.
-  &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. Alternate email and primary contact email are required to have different domains if primary contact email is present. When creating admin.google.com accounts, users get notified credentials at this email. This email address is also used as a recovery email.
+  &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. You need to provide an alternate email to create different domains if a primary contact email already exists. Users will receive a notification with credentials when you create an admin.google.com account. Secondary emails are also recovery email addresses.
   &quot;channelPartnerId&quot;: &quot;A String&quot;, # Cloud Identity ID of the customer&#x27;s channel partner. Populated only if a channel partner exists for this customer.
-  &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. Customer&#x27;s cloud_identity_id. Populated only if a Cloud Identity resource exists for this customer.
+  &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. The customer&#x27;s Cloud Identity ID if the customer has a Cloud Identity resource.
   &quot;cloudIdentityInfo&quot;: { # Cloud Identity information for the Cloud Channel Customer. # Output only. Cloud Identity information for the customer. Populated only if a Cloud Identity account exists for this customer.
     &quot;adminConsoleUri&quot;: &quot;A String&quot;, # Output only. URI of Customer&#x27;s Admin console dashboard.
     &quot;alternateEmail&quot;: &quot;A String&quot;, # The alternate email.
@@ -419,12 +419,12 @@
     &quot;phoneNumber&quot;: &quot;A String&quot;, # Phone number associated with the Cloud Identity.
     &quot;primaryDomain&quot;: &quot;A String&quot;, # Output only. The primary domain name.
   },
-  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is created.
-  &quot;domain&quot;: &quot;A String&quot;, # Required. Primary domain used by the customer. Domain of primary contact email is required to be same as the provided domain.
+  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was created.
+  &quot;domain&quot;: &quot;A String&quot;, # Required. The customer&#x27;s primary domain. Must match the primary contact email&#x27;s domain.
   &quot;languageCode&quot;: &quot;A String&quot;, # Optional. The BCP-47 language code, such as &quot;en-US&quot; or &quot;sr-Latn&quot;. For more information, see https://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
   &quot;name&quot;: &quot;A String&quot;, # Output only. Resource name of the customer. Format: accounts/{account_id}/customers/{customer_id}
   &quot;orgDisplayName&quot;: &quot;A String&quot;, # Required. Name of the organization that the customer entity represents.
-  &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. Address of the organization of the customer entity. Region and zip codes are required to enforce US laws and embargoes. Valid address lines are required for all customers. Language code is discarded. Use the Customer-level language code to set the customer&#x27;s language.
+  &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. The organization address for the customer. To enforce US laws and embargoes, we require a region and zip code. You must provide valid addresses for every customer. To set the customer&#x27;s language, use the Customer-level language code.
     &quot;addressLines&quot;: [ # Unstructured address lines describing the lower levels of an address. Because values in address_lines do not have type information and may sometimes contain multiple values in a single field (e.g. &quot;Austin, TX&quot;), it is important that the line order is clear. The order of address lines should be &quot;envelope order&quot; for the country/region of the address. In places where this can vary (e.g. Japan), address_language is used to make it explicit (e.g. &quot;ja&quot; for large-to-small ordering and &quot;ja-Latn&quot; or &quot;en&quot; for small-to-large). This way, the most specific line of an address can be selected based on the language. The minimum permitted structural representation of an address consists of a region_code with all remaining information placed in the address_lines. It would be possible to format such an address very approximately without geocoding, but no semantic reasoning could be made about any of the address components until it was at least partially resolved. Creating an address only containing a region_code and address_lines, and then geocoding is the recommended way to handle completely unstructured addresses (as opposed to guessing which parts of the address should be localities or administrative areas).
       &quot;A String&quot;,
     ],
@@ -442,14 +442,14 @@
     &quot;sublocality&quot;: &quot;A String&quot;, # Optional. Sublocality of the address. For example, this can be neighborhoods, boroughs, districts.
   },
   &quot;primaryContactInfo&quot;: { # Contact information for a customer account. # Primary contact info.
-    &quot;displayName&quot;: &quot;A String&quot;, # Output only. Display name of the contact in the customer account. Populated by combining customer first name and last name.
-    &quot;email&quot;: &quot;A String&quot;, # Email of the contact in the customer account. Email is required for entitlements that need creation of admin.google.com accounts. The email will be the username used in credentials to access the admin.google.com account.
-    &quot;firstName&quot;: &quot;A String&quot;, # First name of the contact in the customer account.
-    &quot;lastName&quot;: &quot;A String&quot;, # Last name of the contact in the customer account.
-    &quot;phone&quot;: &quot;A String&quot;, # Phone number of the contact in the customer account.
-    &quot;title&quot;: &quot;A String&quot;, # Optional. Job title of the contact in the customer account.
+    &quot;displayName&quot;: &quot;A String&quot;, # Output only. The customer account contact&#x27;s display name, formatted as a combination of the customer&#x27;s first and last name.
+    &quot;email&quot;: &quot;A String&quot;, # The customer account&#x27;s contact email. Required for entitlements that create admin.google.com accounts, and serves as the customer&#x27;s username for those accounts.
+    &quot;firstName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s first name.
+    &quot;lastName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s last name.
+    &quot;phone&quot;: &quot;A String&quot;, # The customer account&#x27;s contact phone number.
+    &quot;title&quot;: &quot;A String&quot;, # Optional. The customer account contact&#x27;s job title.
   },
-  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is updated.
+  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was updated.
 }
 
   updateMask: string, The update mask that applies to the resource. Optional.
@@ -462,9 +462,9 @@
   An object of the form:
 
     { # Entity representing a customer of a reseller or distributor.
-  &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. Alternate email and primary contact email are required to have different domains if primary contact email is present. When creating admin.google.com accounts, users get notified credentials at this email. This email address is also used as a recovery email.
+  &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. You need to provide an alternate email to create different domains if a primary contact email already exists. Users will receive a notification with credentials when you create an admin.google.com account. Secondary emails are also recovery email addresses.
   &quot;channelPartnerId&quot;: &quot;A String&quot;, # Cloud Identity ID of the customer&#x27;s channel partner. Populated only if a channel partner exists for this customer.
-  &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. Customer&#x27;s cloud_identity_id. Populated only if a Cloud Identity resource exists for this customer.
+  &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. The customer&#x27;s Cloud Identity ID if the customer has a Cloud Identity resource.
   &quot;cloudIdentityInfo&quot;: { # Cloud Identity information for the Cloud Channel Customer. # Output only. Cloud Identity information for the customer. Populated only if a Cloud Identity account exists for this customer.
     &quot;adminConsoleUri&quot;: &quot;A String&quot;, # Output only. URI of Customer&#x27;s Admin console dashboard.
     &quot;alternateEmail&quot;: &quot;A String&quot;, # The alternate email.
@@ -479,12 +479,12 @@
     &quot;phoneNumber&quot;: &quot;A String&quot;, # Phone number associated with the Cloud Identity.
     &quot;primaryDomain&quot;: &quot;A String&quot;, # Output only. The primary domain name.
   },
-  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is created.
-  &quot;domain&quot;: &quot;A String&quot;, # Required. Primary domain used by the customer. Domain of primary contact email is required to be same as the provided domain.
+  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was created.
+  &quot;domain&quot;: &quot;A String&quot;, # Required. The customer&#x27;s primary domain. Must match the primary contact email&#x27;s domain.
   &quot;languageCode&quot;: &quot;A String&quot;, # Optional. The BCP-47 language code, such as &quot;en-US&quot; or &quot;sr-Latn&quot;. For more information, see https://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
   &quot;name&quot;: &quot;A String&quot;, # Output only. Resource name of the customer. Format: accounts/{account_id}/customers/{customer_id}
   &quot;orgDisplayName&quot;: &quot;A String&quot;, # Required. Name of the organization that the customer entity represents.
-  &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. Address of the organization of the customer entity. Region and zip codes are required to enforce US laws and embargoes. Valid address lines are required for all customers. Language code is discarded. Use the Customer-level language code to set the customer&#x27;s language.
+  &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. The organization address for the customer. To enforce US laws and embargoes, we require a region and zip code. You must provide valid addresses for every customer. To set the customer&#x27;s language, use the Customer-level language code.
     &quot;addressLines&quot;: [ # Unstructured address lines describing the lower levels of an address. Because values in address_lines do not have type information and may sometimes contain multiple values in a single field (e.g. &quot;Austin, TX&quot;), it is important that the line order is clear. The order of address lines should be &quot;envelope order&quot; for the country/region of the address. In places where this can vary (e.g. Japan), address_language is used to make it explicit (e.g. &quot;ja&quot; for large-to-small ordering and &quot;ja-Latn&quot; or &quot;en&quot; for small-to-large). This way, the most specific line of an address can be selected based on the language. The minimum permitted structural representation of an address consists of a region_code with all remaining information placed in the address_lines. It would be possible to format such an address very approximately without geocoding, but no semantic reasoning could be made about any of the address components until it was at least partially resolved. Creating an address only containing a region_code and address_lines, and then geocoding is the recommended way to handle completely unstructured addresses (as opposed to guessing which parts of the address should be localities or administrative areas).
       &quot;A String&quot;,
     ],
@@ -502,14 +502,14 @@
     &quot;sublocality&quot;: &quot;A String&quot;, # Optional. Sublocality of the address. For example, this can be neighborhoods, boroughs, districts.
   },
   &quot;primaryContactInfo&quot;: { # Contact information for a customer account. # Primary contact info.
-    &quot;displayName&quot;: &quot;A String&quot;, # Output only. Display name of the contact in the customer account. Populated by combining customer first name and last name.
-    &quot;email&quot;: &quot;A String&quot;, # Email of the contact in the customer account. Email is required for entitlements that need creation of admin.google.com accounts. The email will be the username used in credentials to access the admin.google.com account.
-    &quot;firstName&quot;: &quot;A String&quot;, # First name of the contact in the customer account.
-    &quot;lastName&quot;: &quot;A String&quot;, # Last name of the contact in the customer account.
-    &quot;phone&quot;: &quot;A String&quot;, # Phone number of the contact in the customer account.
-    &quot;title&quot;: &quot;A String&quot;, # Optional. Job title of the contact in the customer account.
+    &quot;displayName&quot;: &quot;A String&quot;, # Output only. The customer account contact&#x27;s display name, formatted as a combination of the customer&#x27;s first and last name.
+    &quot;email&quot;: &quot;A String&quot;, # The customer account&#x27;s contact email. Required for entitlements that create admin.google.com accounts, and serves as the customer&#x27;s username for those accounts.
+    &quot;firstName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s first name.
+    &quot;lastName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s last name.
+    &quot;phone&quot;: &quot;A String&quot;, # The customer account&#x27;s contact phone number.
+    &quot;title&quot;: &quot;A String&quot;, # Optional. The customer account contact&#x27;s job title.
   },
-  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is updated.
+  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was updated.
 }</pre>
 </div>
 
diff --git a/docs/dyn/cloudchannel_v1.accounts.channelPartnerLinks.html b/docs/dyn/cloudchannel_v1.accounts.channelPartnerLinks.html
index 244f3c2..0551d76 100644
--- a/docs/dyn/cloudchannel_v1.accounts.channelPartnerLinks.html
+++ b/docs/dyn/cloudchannel_v1.accounts.channelPartnerLinks.html
@@ -87,7 +87,7 @@
 <p class="firstline">Initiates a channel partner link between a distributor and a reseller, or between resellers in an n-tier reseller channel. Invited partners need to follow the invite_link_uri provided in the response to accept. After accepting the invitation, a link is set up between the two parties. You must be a distributor to call this method. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * ALREADY_EXISTS: The ChannelPartnerLink sent in the request already exists. * NOT_FOUND: No Cloud Identity customer exists for provided domain. * INTERNAL: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support. * UNKNOWN: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support. Return value: The new ChannelPartnerLink resource.</p>
 <p class="toc_element">
   <code><a href="#get">get(name, view=None, x__xgafv=None)</a></code></p>
-<p class="firstline">Returns a requested ChannelPartnerLink resource. You must be a distributor to call this method. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * NOT_FOUND: ChannelPartnerLink resource not found because of an invalid channel partner link name. Return value: The ChannelPartnerLink resource.</p>
+<p class="firstline">Returns the requested ChannelPartnerLink resource. You must be a distributor to call this method. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * NOT_FOUND: ChannelPartnerLink resource not found because of an invalid channel partner link name. Return value: The ChannelPartnerLink resource.</p>
 <p class="toc_element">
   <code><a href="#list">list(parent, pageSize=None, pageToken=None, view=None, x__xgafv=None)</a></code></p>
 <p class="firstline">List ChannelPartnerLinks belonging to a distributor. You must be a distributor to call this method. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: Required request parameters are missing or invalid. Return value: The list of the distributor account's ChannelPartnerLink resources.</p>
@@ -171,7 +171,7 @@
 
 <div class="method">
     <code class="details" id="get">get(name, view=None, x__xgafv=None)</code>
-  <pre>Returns a requested ChannelPartnerLink resource. You must be a distributor to call this method. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * NOT_FOUND: ChannelPartnerLink resource not found because of an invalid channel partner link name. Return value: The ChannelPartnerLink resource.
+  <pre>Returns the requested ChannelPartnerLink resource. You must be a distributor to call this method. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * NOT_FOUND: ChannelPartnerLink resource not found because of an invalid channel partner link name. Return value: The ChannelPartnerLink resource.
 
 Args:
   name: string, Required. The resource name of the channel partner link to retrieve. Name uses the format: accounts/{account_id}/channelPartnerLinks/{id} where {id} is the Cloud Identity ID of the partner. (required)
diff --git a/docs/dyn/cloudchannel_v1.accounts.customers.entitlements.html b/docs/dyn/cloudchannel_v1.accounts.customers.entitlements.html
index 9337eea..a0fa88a 100644
--- a/docs/dyn/cloudchannel_v1.accounts.customers.entitlements.html
+++ b/docs/dyn/cloudchannel_v1.accounts.customers.entitlements.html
@@ -97,7 +97,7 @@
 <p class="firstline">Creates an entitlement for a customer. Possible error codes: * PERMISSION_DENIED: The customer doesn't belong to the reseller. * INVALID_ARGUMENT: * Required request parameters are missing or invalid. * There is already a customer entitlement for a SKU from the same product family. * INVALID_VALUE: Make sure the OfferId is valid. If it is, contact Google Channel support for further troubleshooting. * NOT_FOUND: The customer or offer resource was not found. * ALREADY_EXISTS: * The SKU was already purchased for the customer. * The customer's primary email already exists. Retry after changing the customer's primary contact email. * CONDITION_NOT_MET or FAILED_PRECONDITION: * The domain required for purchasing a SKU has not been verified. * A pre-requisite SKU required to purchase an Add-On SKU is missing. For example, Google Workspace Business Starter is required to purchase Vault or Drive. * (Developer accounts only) Reseller and resold domain must meet the following naming requirements: * Domain names must start with goog-test. * Domain names must include the reseller domain. * INTERNAL: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support. * UNKNOWN: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support. Return value: The ID of a long-running operation. To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The Operation metadata will contain an instance of OperationMetadata.</p>
 <p class="toc_element">
   <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
-<p class="firstline">Returns a requested Entitlement resource. Possible error codes: * PERMISSION_DENIED: The customer doesn't belong to the reseller. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * NOT_FOUND: The customer entitlement was not found. Return value: The requested Entitlement resource.</p>
+<p class="firstline">Returns the requested Entitlement resource. Possible error codes: * PERMISSION_DENIED: The customer doesn't belong to the reseller. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * NOT_FOUND: The customer entitlement was not found. Return value: The requested Entitlement resource.</p>
 <p class="toc_element">
   <code><a href="#list">list(parent, pageSize=None, pageToken=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Lists Entitlements belonging to a customer. Possible error codes: * PERMISSION_DENIED: The customer doesn't belong to the reseller. * INVALID_ARGUMENT: Required request parameters are missing or invalid. Return value: A list of the customer's Entitlements.</p>
@@ -466,7 +466,7 @@
 
 <div class="method">
     <code class="details" id="get">get(name, x__xgafv=None)</code>
-  <pre>Returns a requested Entitlement resource. Possible error codes: * PERMISSION_DENIED: The customer doesn&#x27;t belong to the reseller. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * NOT_FOUND: The customer entitlement was not found. Return value: The requested Entitlement resource.
+  <pre>Returns the requested Entitlement resource. Possible error codes: * PERMISSION_DENIED: The customer doesn&#x27;t belong to the reseller. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * NOT_FOUND: The customer entitlement was not found. Return value: The requested Entitlement resource.
 
 Args:
   name: string, Required. The resource name of the entitlement to retrieve. Name uses the format: accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id} (required)
diff --git a/docs/dyn/cloudchannel_v1.accounts.customers.html b/docs/dyn/cloudchannel_v1.accounts.customers.html
index a508f8d..3627e55 100644
--- a/docs/dyn/cloudchannel_v1.accounts.customers.html
+++ b/docs/dyn/cloudchannel_v1.accounts.customers.html
@@ -87,10 +87,10 @@
 <p class="firstline">Creates a new Customer resource under the reseller or distributor account. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: * Required request parameters are missing or invalid. * Domain field value doesn't match the primary email domain. Return value: The newly created Customer resource.</p>
 <p class="toc_element">
   <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
-<p class="firstline">Deletes the given Customer permanently and irreversibly. Possible error codes: * PERMISSION_DENIED: The account making the request does not own this customer. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * FAILED_PRECONDITION: The customer has existing entitlements. * NOT_FOUND: No Customer resource found for the name in the request.</p>
+<p class="firstline">Deletes the given Customer permanently. Possible error codes: * PERMISSION_DENIED: The account making the request does not own this customer. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * FAILED_PRECONDITION: The customer has existing entitlements. * NOT_FOUND: No Customer resource found for the name in the request.</p>
 <p class="toc_element">
   <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
-<p class="firstline">Returns a requested Customer resource. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * NOT_FOUND: The customer resource doesn't exist. Usually the result of an invalid name parameter. Return value: The Customer resource.</p>
+<p class="firstline">Returns the requested Customer resource. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * NOT_FOUND: The customer resource doesn't exist. Usually the result of an invalid name parameter. Return value: The Customer resource.</p>
 <p class="toc_element">
   <code><a href="#list">list(parent, pageSize=None, pageToken=None, x__xgafv=None)</a></code></p>
 <p class="firstline">List Customers. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: Required request parameters are missing or invalid. Return value: List of Customers, or an empty list if there are no customers.</p>
@@ -137,9 +137,9 @@
     The object takes the form of:
 
 { # Entity representing a customer of a reseller or distributor.
-  &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. Alternate email and primary contact email are required to have different domains if primary contact email is present. When creating admin.google.com accounts, users get notified credentials at this email. This email address is also used as a recovery email.
+  &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. You need to provide an alternate email to create different domains if a primary contact email already exists. Users will receive a notification with credentials when you create an admin.google.com account. Secondary emails are also recovery email addresses.
   &quot;channelPartnerId&quot;: &quot;A String&quot;, # Cloud Identity ID of the customer&#x27;s channel partner. Populated only if a channel partner exists for this customer.
-  &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. Customer&#x27;s cloud_identity_id. Populated only if a Cloud Identity resource exists for this customer.
+  &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. The customer&#x27;s Cloud Identity ID if the customer has a Cloud Identity resource.
   &quot;cloudIdentityInfo&quot;: { # Cloud Identity information for the Cloud Channel Customer. # Output only. Cloud Identity information for the customer. Populated only if a Cloud Identity account exists for this customer.
     &quot;adminConsoleUri&quot;: &quot;A String&quot;, # Output only. URI of Customer&#x27;s Admin console dashboard.
     &quot;alternateEmail&quot;: &quot;A String&quot;, # The alternate email.
@@ -154,12 +154,12 @@
     &quot;phoneNumber&quot;: &quot;A String&quot;, # Phone number associated with the Cloud Identity.
     &quot;primaryDomain&quot;: &quot;A String&quot;, # Output only. The primary domain name.
   },
-  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is created.
-  &quot;domain&quot;: &quot;A String&quot;, # Required. Primary domain used by the customer. Domain of primary contact email is required to be same as the provided domain.
+  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was created.
+  &quot;domain&quot;: &quot;A String&quot;, # Required. The customer&#x27;s primary domain. Must match the primary contact email&#x27;s domain.
   &quot;languageCode&quot;: &quot;A String&quot;, # Optional. The BCP-47 language code, such as &quot;en-US&quot; or &quot;sr-Latn&quot;. For more information, see https://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
   &quot;name&quot;: &quot;A String&quot;, # Output only. Resource name of the customer. Format: accounts/{account_id}/customers/{customer_id}
   &quot;orgDisplayName&quot;: &quot;A String&quot;, # Required. Name of the organization that the customer entity represents.
-  &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. Address of the organization of the customer entity. Region and zip codes are required to enforce US laws and embargoes. Valid address lines are required for all customers. Language code is discarded. Use the Customer-level language code to set the customer&#x27;s language.
+  &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. The organization address for the customer. To enforce US laws and embargoes, we require a region and zip code. You must provide valid addresses for every customer. To set the customer&#x27;s language, use the Customer-level language code.
     &quot;addressLines&quot;: [ # Unstructured address lines describing the lower levels of an address. Because values in address_lines do not have type information and may sometimes contain multiple values in a single field (e.g. &quot;Austin, TX&quot;), it is important that the line order is clear. The order of address lines should be &quot;envelope order&quot; for the country/region of the address. In places where this can vary (e.g. Japan), address_language is used to make it explicit (e.g. &quot;ja&quot; for large-to-small ordering and &quot;ja-Latn&quot; or &quot;en&quot; for small-to-large). This way, the most specific line of an address can be selected based on the language. The minimum permitted structural representation of an address consists of a region_code with all remaining information placed in the address_lines. It would be possible to format such an address very approximately without geocoding, but no semantic reasoning could be made about any of the address components until it was at least partially resolved. Creating an address only containing a region_code and address_lines, and then geocoding is the recommended way to handle completely unstructured addresses (as opposed to guessing which parts of the address should be localities or administrative areas).
       &quot;A String&quot;,
     ],
@@ -177,14 +177,14 @@
     &quot;sublocality&quot;: &quot;A String&quot;, # Optional. Sublocality of the address. For example, this can be neighborhoods, boroughs, districts.
   },
   &quot;primaryContactInfo&quot;: { # Contact information for a customer account. # Primary contact info.
-    &quot;displayName&quot;: &quot;A String&quot;, # Output only. Display name of the contact in the customer account. Populated by combining customer first name and last name.
-    &quot;email&quot;: &quot;A String&quot;, # Email of the contact in the customer account. Email is required for entitlements that need creation of admin.google.com accounts. The email will be the username used in credentials to access the admin.google.com account.
-    &quot;firstName&quot;: &quot;A String&quot;, # First name of the contact in the customer account.
-    &quot;lastName&quot;: &quot;A String&quot;, # Last name of the contact in the customer account.
-    &quot;phone&quot;: &quot;A String&quot;, # Phone number of the contact in the customer account.
-    &quot;title&quot;: &quot;A String&quot;, # Optional. Job title of the contact in the customer account.
+    &quot;displayName&quot;: &quot;A String&quot;, # Output only. The customer account contact&#x27;s display name, formatted as a combination of the customer&#x27;s first and last name.
+    &quot;email&quot;: &quot;A String&quot;, # The customer account&#x27;s contact email. Required for entitlements that create admin.google.com accounts, and serves as the customer&#x27;s username for those accounts.
+    &quot;firstName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s first name.
+    &quot;lastName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s last name.
+    &quot;phone&quot;: &quot;A String&quot;, # The customer account&#x27;s contact phone number.
+    &quot;title&quot;: &quot;A String&quot;, # Optional. The customer account contact&#x27;s job title.
   },
-  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is updated.
+  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was updated.
 }
 
   x__xgafv: string, V1 error format.
@@ -196,9 +196,9 @@
   An object of the form:
 
     { # Entity representing a customer of a reseller or distributor.
-  &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. Alternate email and primary contact email are required to have different domains if primary contact email is present. When creating admin.google.com accounts, users get notified credentials at this email. This email address is also used as a recovery email.
+  &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. You need to provide an alternate email to create different domains if a primary contact email already exists. Users will receive a notification with credentials when you create an admin.google.com account. Secondary emails are also recovery email addresses.
   &quot;channelPartnerId&quot;: &quot;A String&quot;, # Cloud Identity ID of the customer&#x27;s channel partner. Populated only if a channel partner exists for this customer.
-  &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. Customer&#x27;s cloud_identity_id. Populated only if a Cloud Identity resource exists for this customer.
+  &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. The customer&#x27;s Cloud Identity ID if the customer has a Cloud Identity resource.
   &quot;cloudIdentityInfo&quot;: { # Cloud Identity information for the Cloud Channel Customer. # Output only. Cloud Identity information for the customer. Populated only if a Cloud Identity account exists for this customer.
     &quot;adminConsoleUri&quot;: &quot;A String&quot;, # Output only. URI of Customer&#x27;s Admin console dashboard.
     &quot;alternateEmail&quot;: &quot;A String&quot;, # The alternate email.
@@ -213,12 +213,12 @@
     &quot;phoneNumber&quot;: &quot;A String&quot;, # Phone number associated with the Cloud Identity.
     &quot;primaryDomain&quot;: &quot;A String&quot;, # Output only. The primary domain name.
   },
-  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is created.
-  &quot;domain&quot;: &quot;A String&quot;, # Required. Primary domain used by the customer. Domain of primary contact email is required to be same as the provided domain.
+  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was created.
+  &quot;domain&quot;: &quot;A String&quot;, # Required. The customer&#x27;s primary domain. Must match the primary contact email&#x27;s domain.
   &quot;languageCode&quot;: &quot;A String&quot;, # Optional. The BCP-47 language code, such as &quot;en-US&quot; or &quot;sr-Latn&quot;. For more information, see https://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
   &quot;name&quot;: &quot;A String&quot;, # Output only. Resource name of the customer. Format: accounts/{account_id}/customers/{customer_id}
   &quot;orgDisplayName&quot;: &quot;A String&quot;, # Required. Name of the organization that the customer entity represents.
-  &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. Address of the organization of the customer entity. Region and zip codes are required to enforce US laws and embargoes. Valid address lines are required for all customers. Language code is discarded. Use the Customer-level language code to set the customer&#x27;s language.
+  &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. The organization address for the customer. To enforce US laws and embargoes, we require a region and zip code. You must provide valid addresses for every customer. To set the customer&#x27;s language, use the Customer-level language code.
     &quot;addressLines&quot;: [ # Unstructured address lines describing the lower levels of an address. Because values in address_lines do not have type information and may sometimes contain multiple values in a single field (e.g. &quot;Austin, TX&quot;), it is important that the line order is clear. The order of address lines should be &quot;envelope order&quot; for the country/region of the address. In places where this can vary (e.g. Japan), address_language is used to make it explicit (e.g. &quot;ja&quot; for large-to-small ordering and &quot;ja-Latn&quot; or &quot;en&quot; for small-to-large). This way, the most specific line of an address can be selected based on the language. The minimum permitted structural representation of an address consists of a region_code with all remaining information placed in the address_lines. It would be possible to format such an address very approximately without geocoding, but no semantic reasoning could be made about any of the address components until it was at least partially resolved. Creating an address only containing a region_code and address_lines, and then geocoding is the recommended way to handle completely unstructured addresses (as opposed to guessing which parts of the address should be localities or administrative areas).
       &quot;A String&quot;,
     ],
@@ -236,20 +236,20 @@
     &quot;sublocality&quot;: &quot;A String&quot;, # Optional. Sublocality of the address. For example, this can be neighborhoods, boroughs, districts.
   },
   &quot;primaryContactInfo&quot;: { # Contact information for a customer account. # Primary contact info.
-    &quot;displayName&quot;: &quot;A String&quot;, # Output only. Display name of the contact in the customer account. Populated by combining customer first name and last name.
-    &quot;email&quot;: &quot;A String&quot;, # Email of the contact in the customer account. Email is required for entitlements that need creation of admin.google.com accounts. The email will be the username used in credentials to access the admin.google.com account.
-    &quot;firstName&quot;: &quot;A String&quot;, # First name of the contact in the customer account.
-    &quot;lastName&quot;: &quot;A String&quot;, # Last name of the contact in the customer account.
-    &quot;phone&quot;: &quot;A String&quot;, # Phone number of the contact in the customer account.
-    &quot;title&quot;: &quot;A String&quot;, # Optional. Job title of the contact in the customer account.
+    &quot;displayName&quot;: &quot;A String&quot;, # Output only. The customer account contact&#x27;s display name, formatted as a combination of the customer&#x27;s first and last name.
+    &quot;email&quot;: &quot;A String&quot;, # The customer account&#x27;s contact email. Required for entitlements that create admin.google.com accounts, and serves as the customer&#x27;s username for those accounts.
+    &quot;firstName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s first name.
+    &quot;lastName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s last name.
+    &quot;phone&quot;: &quot;A String&quot;, # The customer account&#x27;s contact phone number.
+    &quot;title&quot;: &quot;A String&quot;, # Optional. The customer account contact&#x27;s job title.
   },
-  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is updated.
+  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was updated.
 }</pre>
 </div>
 
 <div class="method">
     <code class="details" id="delete">delete(name, x__xgafv=None)</code>
-  <pre>Deletes the given Customer permanently and irreversibly. Possible error codes: * PERMISSION_DENIED: The account making the request does not own this customer. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * FAILED_PRECONDITION: The customer has existing entitlements. * NOT_FOUND: No Customer resource found for the name in the request.
+  <pre>Deletes the given Customer permanently. Possible error codes: * PERMISSION_DENIED: The account making the request does not own this customer. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * FAILED_PRECONDITION: The customer has existing entitlements. * NOT_FOUND: No Customer resource found for the name in the request.
 
 Args:
   name: string, Required. The resource name of the customer to delete. (required)
@@ -267,7 +267,7 @@
 
 <div class="method">
     <code class="details" id="get">get(name, x__xgafv=None)</code>
-  <pre>Returns a requested Customer resource. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * NOT_FOUND: The customer resource doesn&#x27;t exist. Usually the result of an invalid name parameter. Return value: The Customer resource.
+  <pre>Returns the requested Customer resource. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * NOT_FOUND: The customer resource doesn&#x27;t exist. Usually the result of an invalid name parameter. Return value: The Customer resource.
 
 Args:
   name: string, Required. The resource name of the customer to retrieve. Name uses the format: accounts/{account_id}/customers/{customer_id} (required)
@@ -280,9 +280,9 @@
   An object of the form:
 
     { # Entity representing a customer of a reseller or distributor.
-  &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. Alternate email and primary contact email are required to have different domains if primary contact email is present. When creating admin.google.com accounts, users get notified credentials at this email. This email address is also used as a recovery email.
+  &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. You need to provide an alternate email to create different domains if a primary contact email already exists. Users will receive a notification with credentials when you create an admin.google.com account. Secondary emails are also recovery email addresses.
   &quot;channelPartnerId&quot;: &quot;A String&quot;, # Cloud Identity ID of the customer&#x27;s channel partner. Populated only if a channel partner exists for this customer.
-  &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. Customer&#x27;s cloud_identity_id. Populated only if a Cloud Identity resource exists for this customer.
+  &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. The customer&#x27;s Cloud Identity ID if the customer has a Cloud Identity resource.
   &quot;cloudIdentityInfo&quot;: { # Cloud Identity information for the Cloud Channel Customer. # Output only. Cloud Identity information for the customer. Populated only if a Cloud Identity account exists for this customer.
     &quot;adminConsoleUri&quot;: &quot;A String&quot;, # Output only. URI of Customer&#x27;s Admin console dashboard.
     &quot;alternateEmail&quot;: &quot;A String&quot;, # The alternate email.
@@ -297,12 +297,12 @@
     &quot;phoneNumber&quot;: &quot;A String&quot;, # Phone number associated with the Cloud Identity.
     &quot;primaryDomain&quot;: &quot;A String&quot;, # Output only. The primary domain name.
   },
-  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is created.
-  &quot;domain&quot;: &quot;A String&quot;, # Required. Primary domain used by the customer. Domain of primary contact email is required to be same as the provided domain.
+  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was created.
+  &quot;domain&quot;: &quot;A String&quot;, # Required. The customer&#x27;s primary domain. Must match the primary contact email&#x27;s domain.
   &quot;languageCode&quot;: &quot;A String&quot;, # Optional. The BCP-47 language code, such as &quot;en-US&quot; or &quot;sr-Latn&quot;. For more information, see https://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
   &quot;name&quot;: &quot;A String&quot;, # Output only. Resource name of the customer. Format: accounts/{account_id}/customers/{customer_id}
   &quot;orgDisplayName&quot;: &quot;A String&quot;, # Required. Name of the organization that the customer entity represents.
-  &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. Address of the organization of the customer entity. Region and zip codes are required to enforce US laws and embargoes. Valid address lines are required for all customers. Language code is discarded. Use the Customer-level language code to set the customer&#x27;s language.
+  &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. The organization address for the customer. To enforce US laws and embargoes, we require a region and zip code. You must provide valid addresses for every customer. To set the customer&#x27;s language, use the Customer-level language code.
     &quot;addressLines&quot;: [ # Unstructured address lines describing the lower levels of an address. Because values in address_lines do not have type information and may sometimes contain multiple values in a single field (e.g. &quot;Austin, TX&quot;), it is important that the line order is clear. The order of address lines should be &quot;envelope order&quot; for the country/region of the address. In places where this can vary (e.g. Japan), address_language is used to make it explicit (e.g. &quot;ja&quot; for large-to-small ordering and &quot;ja-Latn&quot; or &quot;en&quot; for small-to-large). This way, the most specific line of an address can be selected based on the language. The minimum permitted structural representation of an address consists of a region_code with all remaining information placed in the address_lines. It would be possible to format such an address very approximately without geocoding, but no semantic reasoning could be made about any of the address components until it was at least partially resolved. Creating an address only containing a region_code and address_lines, and then geocoding is the recommended way to handle completely unstructured addresses (as opposed to guessing which parts of the address should be localities or administrative areas).
       &quot;A String&quot;,
     ],
@@ -320,14 +320,14 @@
     &quot;sublocality&quot;: &quot;A String&quot;, # Optional. Sublocality of the address. For example, this can be neighborhoods, boroughs, districts.
   },
   &quot;primaryContactInfo&quot;: { # Contact information for a customer account. # Primary contact info.
-    &quot;displayName&quot;: &quot;A String&quot;, # Output only. Display name of the contact in the customer account. Populated by combining customer first name and last name.
-    &quot;email&quot;: &quot;A String&quot;, # Email of the contact in the customer account. Email is required for entitlements that need creation of admin.google.com accounts. The email will be the username used in credentials to access the admin.google.com account.
-    &quot;firstName&quot;: &quot;A String&quot;, # First name of the contact in the customer account.
-    &quot;lastName&quot;: &quot;A String&quot;, # Last name of the contact in the customer account.
-    &quot;phone&quot;: &quot;A String&quot;, # Phone number of the contact in the customer account.
-    &quot;title&quot;: &quot;A String&quot;, # Optional. Job title of the contact in the customer account.
+    &quot;displayName&quot;: &quot;A String&quot;, # Output only. The customer account contact&#x27;s display name, formatted as a combination of the customer&#x27;s first and last name.
+    &quot;email&quot;: &quot;A String&quot;, # The customer account&#x27;s contact email. Required for entitlements that create admin.google.com accounts, and serves as the customer&#x27;s username for those accounts.
+    &quot;firstName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s first name.
+    &quot;lastName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s last name.
+    &quot;phone&quot;: &quot;A String&quot;, # The customer account&#x27;s contact phone number.
+    &quot;title&quot;: &quot;A String&quot;, # Optional. The customer account contact&#x27;s job title.
   },
-  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is updated.
+  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was updated.
 }</pre>
 </div>
 
@@ -350,9 +350,9 @@
     { # Response message for CloudChannelService.ListCustomers.
   &quot;customers&quot;: [ # The customers belonging to a reseller or distributor.
     { # Entity representing a customer of a reseller or distributor.
-      &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. Alternate email and primary contact email are required to have different domains if primary contact email is present. When creating admin.google.com accounts, users get notified credentials at this email. This email address is also used as a recovery email.
+      &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. You need to provide an alternate email to create different domains if a primary contact email already exists. Users will receive a notification with credentials when you create an admin.google.com account. Secondary emails are also recovery email addresses.
       &quot;channelPartnerId&quot;: &quot;A String&quot;, # Cloud Identity ID of the customer&#x27;s channel partner. Populated only if a channel partner exists for this customer.
-      &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. Customer&#x27;s cloud_identity_id. Populated only if a Cloud Identity resource exists for this customer.
+      &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. The customer&#x27;s Cloud Identity ID if the customer has a Cloud Identity resource.
       &quot;cloudIdentityInfo&quot;: { # Cloud Identity information for the Cloud Channel Customer. # Output only. Cloud Identity information for the customer. Populated only if a Cloud Identity account exists for this customer.
         &quot;adminConsoleUri&quot;: &quot;A String&quot;, # Output only. URI of Customer&#x27;s Admin console dashboard.
         &quot;alternateEmail&quot;: &quot;A String&quot;, # The alternate email.
@@ -367,12 +367,12 @@
         &quot;phoneNumber&quot;: &quot;A String&quot;, # Phone number associated with the Cloud Identity.
         &quot;primaryDomain&quot;: &quot;A String&quot;, # Output only. The primary domain name.
       },
-      &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is created.
-      &quot;domain&quot;: &quot;A String&quot;, # Required. Primary domain used by the customer. Domain of primary contact email is required to be same as the provided domain.
+      &quot;createTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was created.
+      &quot;domain&quot;: &quot;A String&quot;, # Required. The customer&#x27;s primary domain. Must match the primary contact email&#x27;s domain.
       &quot;languageCode&quot;: &quot;A String&quot;, # Optional. The BCP-47 language code, such as &quot;en-US&quot; or &quot;sr-Latn&quot;. For more information, see https://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
       &quot;name&quot;: &quot;A String&quot;, # Output only. Resource name of the customer. Format: accounts/{account_id}/customers/{customer_id}
       &quot;orgDisplayName&quot;: &quot;A String&quot;, # Required. Name of the organization that the customer entity represents.
-      &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. Address of the organization of the customer entity. Region and zip codes are required to enforce US laws and embargoes. Valid address lines are required for all customers. Language code is discarded. Use the Customer-level language code to set the customer&#x27;s language.
+      &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. The organization address for the customer. To enforce US laws and embargoes, we require a region and zip code. You must provide valid addresses for every customer. To set the customer&#x27;s language, use the Customer-level language code.
         &quot;addressLines&quot;: [ # Unstructured address lines describing the lower levels of an address. Because values in address_lines do not have type information and may sometimes contain multiple values in a single field (e.g. &quot;Austin, TX&quot;), it is important that the line order is clear. The order of address lines should be &quot;envelope order&quot; for the country/region of the address. In places where this can vary (e.g. Japan), address_language is used to make it explicit (e.g. &quot;ja&quot; for large-to-small ordering and &quot;ja-Latn&quot; or &quot;en&quot; for small-to-large). This way, the most specific line of an address can be selected based on the language. The minimum permitted structural representation of an address consists of a region_code with all remaining information placed in the address_lines. It would be possible to format such an address very approximately without geocoding, but no semantic reasoning could be made about any of the address components until it was at least partially resolved. Creating an address only containing a region_code and address_lines, and then geocoding is the recommended way to handle completely unstructured addresses (as opposed to guessing which parts of the address should be localities or administrative areas).
           &quot;A String&quot;,
         ],
@@ -390,14 +390,14 @@
         &quot;sublocality&quot;: &quot;A String&quot;, # Optional. Sublocality of the address. For example, this can be neighborhoods, boroughs, districts.
       },
       &quot;primaryContactInfo&quot;: { # Contact information for a customer account. # Primary contact info.
-        &quot;displayName&quot;: &quot;A String&quot;, # Output only. Display name of the contact in the customer account. Populated by combining customer first name and last name.
-        &quot;email&quot;: &quot;A String&quot;, # Email of the contact in the customer account. Email is required for entitlements that need creation of admin.google.com accounts. The email will be the username used in credentials to access the admin.google.com account.
-        &quot;firstName&quot;: &quot;A String&quot;, # First name of the contact in the customer account.
-        &quot;lastName&quot;: &quot;A String&quot;, # Last name of the contact in the customer account.
-        &quot;phone&quot;: &quot;A String&quot;, # Phone number of the contact in the customer account.
-        &quot;title&quot;: &quot;A String&quot;, # Optional. Job title of the contact in the customer account.
+        &quot;displayName&quot;: &quot;A String&quot;, # Output only. The customer account contact&#x27;s display name, formatted as a combination of the customer&#x27;s first and last name.
+        &quot;email&quot;: &quot;A String&quot;, # The customer account&#x27;s contact email. Required for entitlements that create admin.google.com accounts, and serves as the customer&#x27;s username for those accounts.
+        &quot;firstName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s first name.
+        &quot;lastName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s last name.
+        &quot;phone&quot;: &quot;A String&quot;, # The customer account&#x27;s contact phone number.
+        &quot;title&quot;: &quot;A String&quot;, # Optional. The customer account contact&#x27;s job title.
       },
-      &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is updated.
+      &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was updated.
     },
   ],
   &quot;nextPageToken&quot;: &quot;A String&quot;, # A token to retrieve the next page of results. Pass to ListCustomersRequest.page_token to obtain that page.
@@ -702,9 +702,9 @@
     The object takes the form of:
 
 { # Entity representing a customer of a reseller or distributor.
-  &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. Alternate email and primary contact email are required to have different domains if primary contact email is present. When creating admin.google.com accounts, users get notified credentials at this email. This email address is also used as a recovery email.
+  &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. You need to provide an alternate email to create different domains if a primary contact email already exists. Users will receive a notification with credentials when you create an admin.google.com account. Secondary emails are also recovery email addresses.
   &quot;channelPartnerId&quot;: &quot;A String&quot;, # Cloud Identity ID of the customer&#x27;s channel partner. Populated only if a channel partner exists for this customer.
-  &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. Customer&#x27;s cloud_identity_id. Populated only if a Cloud Identity resource exists for this customer.
+  &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. The customer&#x27;s Cloud Identity ID if the customer has a Cloud Identity resource.
   &quot;cloudIdentityInfo&quot;: { # Cloud Identity information for the Cloud Channel Customer. # Output only. Cloud Identity information for the customer. Populated only if a Cloud Identity account exists for this customer.
     &quot;adminConsoleUri&quot;: &quot;A String&quot;, # Output only. URI of Customer&#x27;s Admin console dashboard.
     &quot;alternateEmail&quot;: &quot;A String&quot;, # The alternate email.
@@ -719,12 +719,12 @@
     &quot;phoneNumber&quot;: &quot;A String&quot;, # Phone number associated with the Cloud Identity.
     &quot;primaryDomain&quot;: &quot;A String&quot;, # Output only. The primary domain name.
   },
-  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is created.
-  &quot;domain&quot;: &quot;A String&quot;, # Required. Primary domain used by the customer. Domain of primary contact email is required to be same as the provided domain.
+  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was created.
+  &quot;domain&quot;: &quot;A String&quot;, # Required. The customer&#x27;s primary domain. Must match the primary contact email&#x27;s domain.
   &quot;languageCode&quot;: &quot;A String&quot;, # Optional. The BCP-47 language code, such as &quot;en-US&quot; or &quot;sr-Latn&quot;. For more information, see https://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
   &quot;name&quot;: &quot;A String&quot;, # Output only. Resource name of the customer. Format: accounts/{account_id}/customers/{customer_id}
   &quot;orgDisplayName&quot;: &quot;A String&quot;, # Required. Name of the organization that the customer entity represents.
-  &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. Address of the organization of the customer entity. Region and zip codes are required to enforce US laws and embargoes. Valid address lines are required for all customers. Language code is discarded. Use the Customer-level language code to set the customer&#x27;s language.
+  &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. The organization address for the customer. To enforce US laws and embargoes, we require a region and zip code. You must provide valid addresses for every customer. To set the customer&#x27;s language, use the Customer-level language code.
     &quot;addressLines&quot;: [ # Unstructured address lines describing the lower levels of an address. Because values in address_lines do not have type information and may sometimes contain multiple values in a single field (e.g. &quot;Austin, TX&quot;), it is important that the line order is clear. The order of address lines should be &quot;envelope order&quot; for the country/region of the address. In places where this can vary (e.g. Japan), address_language is used to make it explicit (e.g. &quot;ja&quot; for large-to-small ordering and &quot;ja-Latn&quot; or &quot;en&quot; for small-to-large). This way, the most specific line of an address can be selected based on the language. The minimum permitted structural representation of an address consists of a region_code with all remaining information placed in the address_lines. It would be possible to format such an address very approximately without geocoding, but no semantic reasoning could be made about any of the address components until it was at least partially resolved. Creating an address only containing a region_code and address_lines, and then geocoding is the recommended way to handle completely unstructured addresses (as opposed to guessing which parts of the address should be localities or administrative areas).
       &quot;A String&quot;,
     ],
@@ -742,14 +742,14 @@
     &quot;sublocality&quot;: &quot;A String&quot;, # Optional. Sublocality of the address. For example, this can be neighborhoods, boroughs, districts.
   },
   &quot;primaryContactInfo&quot;: { # Contact information for a customer account. # Primary contact info.
-    &quot;displayName&quot;: &quot;A String&quot;, # Output only. Display name of the contact in the customer account. Populated by combining customer first name and last name.
-    &quot;email&quot;: &quot;A String&quot;, # Email of the contact in the customer account. Email is required for entitlements that need creation of admin.google.com accounts. The email will be the username used in credentials to access the admin.google.com account.
-    &quot;firstName&quot;: &quot;A String&quot;, # First name of the contact in the customer account.
-    &quot;lastName&quot;: &quot;A String&quot;, # Last name of the contact in the customer account.
-    &quot;phone&quot;: &quot;A String&quot;, # Phone number of the contact in the customer account.
-    &quot;title&quot;: &quot;A String&quot;, # Optional. Job title of the contact in the customer account.
+    &quot;displayName&quot;: &quot;A String&quot;, # Output only. The customer account contact&#x27;s display name, formatted as a combination of the customer&#x27;s first and last name.
+    &quot;email&quot;: &quot;A String&quot;, # The customer account&#x27;s contact email. Required for entitlements that create admin.google.com accounts, and serves as the customer&#x27;s username for those accounts.
+    &quot;firstName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s first name.
+    &quot;lastName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s last name.
+    &quot;phone&quot;: &quot;A String&quot;, # The customer account&#x27;s contact phone number.
+    &quot;title&quot;: &quot;A String&quot;, # Optional. The customer account contact&#x27;s job title.
   },
-  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is updated.
+  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was updated.
 }
 
   updateMask: string, The update mask that applies to the resource. Optional.
@@ -762,9 +762,9 @@
   An object of the form:
 
     { # Entity representing a customer of a reseller or distributor.
-  &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. Alternate email and primary contact email are required to have different domains if primary contact email is present. When creating admin.google.com accounts, users get notified credentials at this email. This email address is also used as a recovery email.
+  &quot;alternateEmail&quot;: &quot;A String&quot;, # Secondary contact email. You need to provide an alternate email to create different domains if a primary contact email already exists. Users will receive a notification with credentials when you create an admin.google.com account. Secondary emails are also recovery email addresses.
   &quot;channelPartnerId&quot;: &quot;A String&quot;, # Cloud Identity ID of the customer&#x27;s channel partner. Populated only if a channel partner exists for this customer.
-  &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. Customer&#x27;s cloud_identity_id. Populated only if a Cloud Identity resource exists for this customer.
+  &quot;cloudIdentityId&quot;: &quot;A String&quot;, # Output only. The customer&#x27;s Cloud Identity ID if the customer has a Cloud Identity resource.
   &quot;cloudIdentityInfo&quot;: { # Cloud Identity information for the Cloud Channel Customer. # Output only. Cloud Identity information for the customer. Populated only if a Cloud Identity account exists for this customer.
     &quot;adminConsoleUri&quot;: &quot;A String&quot;, # Output only. URI of Customer&#x27;s Admin console dashboard.
     &quot;alternateEmail&quot;: &quot;A String&quot;, # The alternate email.
@@ -779,12 +779,12 @@
     &quot;phoneNumber&quot;: &quot;A String&quot;, # Phone number associated with the Cloud Identity.
     &quot;primaryDomain&quot;: &quot;A String&quot;, # Output only. The primary domain name.
   },
-  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is created.
-  &quot;domain&quot;: &quot;A String&quot;, # Required. Primary domain used by the customer. Domain of primary contact email is required to be same as the provided domain.
+  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was created.
+  &quot;domain&quot;: &quot;A String&quot;, # Required. The customer&#x27;s primary domain. Must match the primary contact email&#x27;s domain.
   &quot;languageCode&quot;: &quot;A String&quot;, # Optional. The BCP-47 language code, such as &quot;en-US&quot; or &quot;sr-Latn&quot;. For more information, see https://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
   &quot;name&quot;: &quot;A String&quot;, # Output only. Resource name of the customer. Format: accounts/{account_id}/customers/{customer_id}
   &quot;orgDisplayName&quot;: &quot;A String&quot;, # Required. Name of the organization that the customer entity represents.
-  &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. Address of the organization of the customer entity. Region and zip codes are required to enforce US laws and embargoes. Valid address lines are required for all customers. Language code is discarded. Use the Customer-level language code to set the customer&#x27;s language.
+  &quot;orgPostalAddress&quot;: { # Represents a postal address, e.g. for postal delivery or payments addresses. Given a postal address, a postal service can deliver items to a premise, P.O. Box or similar. It is not intended to model geographical locations (roads, towns, mountains). In typical usage an address would be created via user input or from importing existing data, depending on the type of process. Advice on address input / editing: - Use an i18n-ready address widget such as https://github.com/google/libaddressinput) - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, please see: https://support.google.com/business/answer/6397478 # Required. The organization address for the customer. To enforce US laws and embargoes, we require a region and zip code. You must provide valid addresses for every customer. To set the customer&#x27;s language, use the Customer-level language code.
     &quot;addressLines&quot;: [ # Unstructured address lines describing the lower levels of an address. Because values in address_lines do not have type information and may sometimes contain multiple values in a single field (e.g. &quot;Austin, TX&quot;), it is important that the line order is clear. The order of address lines should be &quot;envelope order&quot; for the country/region of the address. In places where this can vary (e.g. Japan), address_language is used to make it explicit (e.g. &quot;ja&quot; for large-to-small ordering and &quot;ja-Latn&quot; or &quot;en&quot; for small-to-large). This way, the most specific line of an address can be selected based on the language. The minimum permitted structural representation of an address consists of a region_code with all remaining information placed in the address_lines. It would be possible to format such an address very approximately without geocoding, but no semantic reasoning could be made about any of the address components until it was at least partially resolved. Creating an address only containing a region_code and address_lines, and then geocoding is the recommended way to handle completely unstructured addresses (as opposed to guessing which parts of the address should be localities or administrative areas).
       &quot;A String&quot;,
     ],
@@ -802,14 +802,14 @@
     &quot;sublocality&quot;: &quot;A String&quot;, # Optional. Sublocality of the address. For example, this can be neighborhoods, boroughs, districts.
   },
   &quot;primaryContactInfo&quot;: { # Contact information for a customer account. # Primary contact info.
-    &quot;displayName&quot;: &quot;A String&quot;, # Output only. Display name of the contact in the customer account. Populated by combining customer first name and last name.
-    &quot;email&quot;: &quot;A String&quot;, # Email of the contact in the customer account. Email is required for entitlements that need creation of admin.google.com accounts. The email will be the username used in credentials to access the admin.google.com account.
-    &quot;firstName&quot;: &quot;A String&quot;, # First name of the contact in the customer account.
-    &quot;lastName&quot;: &quot;A String&quot;, # Last name of the contact in the customer account.
-    &quot;phone&quot;: &quot;A String&quot;, # Phone number of the contact in the customer account.
-    &quot;title&quot;: &quot;A String&quot;, # Optional. Job title of the contact in the customer account.
+    &quot;displayName&quot;: &quot;A String&quot;, # Output only. The customer account contact&#x27;s display name, formatted as a combination of the customer&#x27;s first and last name.
+    &quot;email&quot;: &quot;A String&quot;, # The customer account&#x27;s contact email. Required for entitlements that create admin.google.com accounts, and serves as the customer&#x27;s username for those accounts.
+    &quot;firstName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s first name.
+    &quot;lastName&quot;: &quot;A String&quot;, # The customer account contact&#x27;s last name.
+    &quot;phone&quot;: &quot;A String&quot;, # The customer account&#x27;s contact phone number.
+    &quot;title&quot;: &quot;A String&quot;, # Optional. The customer account contact&#x27;s job title.
   },
-  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which the customer is updated.
+  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Time when the customer was updated.
 }</pre>
 </div>
 
diff --git a/docs/dyn/clouderrorreporting_v1beta1.projects.events.html b/docs/dyn/clouderrorreporting_v1beta1.projects.events.html
index 7771c2a..4742aff 100644
--- a/docs/dyn/clouderrorreporting_v1beta1.projects.events.html
+++ b/docs/dyn/clouderrorreporting_v1beta1.projects.events.html
@@ -85,7 +85,7 @@
 <p class="firstline">Retrieves the next page of results.</p>
 <p class="toc_element">
   <code><a href="#report">report(projectName, body=None, x__xgafv=None)</a></code></p>
-<p class="firstline">Report an individual error event and record the event to a log. This endpoint accepts **either** an OAuth token, **or** an [API 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: `POST https://clouderrorreporting.googleapis.com/v1beta1/{projectName}/events:report?key=123ABC456` **Note:** [Error Reporting](/error-reporting) is a global service built on Cloud Logging and doesn't analyze logs stored in regional log buckets or logs routed to other Google Cloud projects. For more information, see [Using Error Reporting with regionalized logs](/error-reporting/docs/regionalization).</p>
+<p class="firstline">Report an individual error event and record the event to a log. This endpoint accepts **either** an OAuth token, **or** an [API 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: `POST https://clouderrorreporting.googleapis.com/v1beta1/{projectName}/events:report?key=123ABC456` **Note:** [Error Reporting] (https://cloud.google.com/error-reporting) is a global service built on Cloud Logging and doesn't analyze logs stored in regional log buckets or logs routed to other Google Cloud projects. For more information, see [Using Error Reporting with regionalized logs] (https://cloud.google.com/error-reporting/docs/regionalization).</p>
 <h3>Method Details</h3>
 <div class="method">
     <code class="details" id="close">close()</code>
@@ -175,7 +175,7 @@
 
 <div class="method">
     <code class="details" id="report">report(projectName, body=None, x__xgafv=None)</code>
-  <pre>Report an individual error event and record the event to a log. This endpoint accepts **either** an OAuth token, **or** an [API 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: `POST https://clouderrorreporting.googleapis.com/v1beta1/{projectName}/events:report?key=123ABC456` **Note:** [Error Reporting](/error-reporting) is a global service built on Cloud Logging and doesn&#x27;t analyze logs stored in regional log buckets or logs routed to other Google Cloud projects. For more information, see [Using Error Reporting with regionalized logs](/error-reporting/docs/regionalization).
+  <pre>Report an individual error event and record the event to a log. This endpoint accepts **either** an OAuth token, **or** an [API 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: `POST https://clouderrorreporting.googleapis.com/v1beta1/{projectName}/events:report?key=123ABC456` **Note:** [Error Reporting] (https://cloud.google.com/error-reporting) is a global service built on Cloud Logging and doesn&#x27;t analyze logs stored in regional log buckets or logs routed to other Google Cloud projects. For more information, see [Using Error Reporting with regionalized logs] (https://cloud.google.com/error-reporting/docs/regionalization).
 
 Args:
   projectName: string, Required. The resource name of the Google Cloud Platform project. Written as `projects/{projectId}`, where `{projectId}` is the [Google Cloud Platform project ID](https://support.google.com/cloud/answer/6158840). Example: // `projects/my-project-123`. (required)
diff --git a/docs/dyn/cloudidentity_v1.devices.deviceUsers.html b/docs/dyn/cloudidentity_v1.devices.deviceUsers.html
index 9c5ff53..ee70feb 100644
--- a/docs/dyn/cloudidentity_v1.devices.deviceUsers.html
+++ b/docs/dyn/cloudidentity_v1.devices.deviceUsers.html
@@ -302,7 +302,7 @@
   &quot;languageCode&quot;: &quot;A String&quot;, # Output only. Default locale used on device, in IETF BCP-47 format.
   &quot;lastSyncTime&quot;: &quot;A String&quot;, # Output only. Last time when user synced with policies.
   &quot;managementState&quot;: &quot;A String&quot;, # Output only. Management state of the user on the device.
-  &quot;name&quot;: &quot;A String&quot;, # Output only. [Resource name](https://cloud.google.com/apis/design/resource_names) of the DeviceUser in format: `devices/{device_id}/deviceUsers/{user_id}`, where user_id is the ID of the user associated with the user session.
+  &quot;name&quot;: &quot;A String&quot;, # Output only. [Resource name](https://cloud.google.com/apis/design/resource_names) of the DeviceUser in format: `devices/{device_id}/deviceUsers/{device_user_id}`, where `device_user_id` uniquely identifies a user&#x27;s use of a device.
   &quot;passwordState&quot;: &quot;A String&quot;, # Password state of the DeviceUser object
   &quot;userAgent&quot;: &quot;A String&quot;, # Output only. User agent on the device for this specific user
   &quot;userEmail&quot;: &quot;A String&quot;, # Email address of the user registered on the device.
@@ -337,7 +337,7 @@
       &quot;languageCode&quot;: &quot;A String&quot;, # Output only. Default locale used on device, in IETF BCP-47 format.
       &quot;lastSyncTime&quot;: &quot;A String&quot;, # Output only. Last time when user synced with policies.
       &quot;managementState&quot;: &quot;A String&quot;, # Output only. Management state of the user on the device.
-      &quot;name&quot;: &quot;A String&quot;, # Output only. [Resource name](https://cloud.google.com/apis/design/resource_names) of the DeviceUser in format: `devices/{device_id}/deviceUsers/{user_id}`, where user_id is the ID of the user associated with the user session.
+      &quot;name&quot;: &quot;A String&quot;, # Output only. [Resource name](https://cloud.google.com/apis/design/resource_names) of the DeviceUser in format: `devices/{device_id}/deviceUsers/{device_user_id}`, where `device_user_id` uniquely identifies a user&#x27;s use of a device.
       &quot;passwordState&quot;: &quot;A String&quot;, # Password state of the DeviceUser object
       &quot;userAgent&quot;: &quot;A String&quot;, # Output only. User agent on the device for this specific user
       &quot;userEmail&quot;: &quot;A String&quot;, # Email address of the user registered on the device.
diff --git a/docs/dyn/cloudidentity_v1.groups.html b/docs/dyn/cloudidentity_v1.groups.html
index 6543169..ef7f803 100644
--- a/docs/dyn/cloudidentity_v1.groups.html
+++ b/docs/dyn/cloudidentity_v1.groups.html
@@ -93,7 +93,7 @@
 <p class="firstline">Retrieves a `Group`.</p>
 <p class="toc_element">
   <code><a href="#list">list(pageSize=None, pageToken=None, parent=None, view=None, x__xgafv=None)</a></code></p>
-<p class="firstline">Lists the `Group`s under a customer or namespace.</p>
+<p class="firstline">Lists the `Group` resources under a customer or namespace.</p>
 <p class="toc_element">
   <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
 <p class="firstline">Retrieves the next page of results.</p>
@@ -105,7 +105,7 @@
 <p class="firstline">Updates a `Group`.</p>
 <p class="toc_element">
   <code><a href="#search">search(pageSize=None, pageToken=None, query=None, view=None, x__xgafv=None)</a></code></p>
-<p class="firstline">Searches for `Group`s matching a specified query.</p>
+<p class="firstline">Searches for `Group` resources matching a specified query.</p>
 <p class="toc_element">
   <code><a href="#search_next">search_next(previous_request, previous_response)</a></code></p>
 <p class="firstline">Retrieves the next page of results.</p>
@@ -143,11 +143,11 @@
     &quot;id&quot;: &quot;A String&quot;, # The ID of the entity. For Google-managed entities, the `id` should be the email address of an existing group or user. For external-identity-mapped entities, the `id` must be a string conforming to the Identity Source&#x27;s requirements. Must be unique within a `namespace`.
     &quot;namespace&quot;: &quot;A String&quot;, # The namespace in which the entity exists. If not specified, the `EntityKey` represents a Google-managed entity such as a Google user or a Google Group. If specified, the `EntityKey` represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of `identitysources/{identity_source_id}.
   },
-  &quot;labels&quot;: { # Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value. Examples: {&quot;cloudidentity.googleapis.com/groups.discussion_forum&quot;: &quot;&quot;} or {&quot;system/groups/external&quot;: &quot;&quot;}.
+  &quot;labels&quot;: { # Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value.
     &quot;a_key&quot;: &quot;A String&quot;,
   },
   &quot;name&quot;: &quot;A String&quot;, # Output only. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Group`. Shall be of the form `groups/{group_id}`.
-  &quot;parent&quot;: &quot;A String&quot;, # Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups.
+  &quot;parent&quot;: &quot;A String&quot;, # Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups. The `customer_id` must begin with &quot;C&quot; (for example, &#x27;C046psxkn&#x27;).
   &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time when the `Group` was last updated.
 }
 
@@ -254,23 +254,23 @@
     &quot;id&quot;: &quot;A String&quot;, # The ID of the entity. For Google-managed entities, the `id` should be the email address of an existing group or user. For external-identity-mapped entities, the `id` must be a string conforming to the Identity Source&#x27;s requirements. Must be unique within a `namespace`.
     &quot;namespace&quot;: &quot;A String&quot;, # The namespace in which the entity exists. If not specified, the `EntityKey` represents a Google-managed entity such as a Google user or a Google Group. If specified, the `EntityKey` represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of `identitysources/{identity_source_id}.
   },
-  &quot;labels&quot;: { # Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value. Examples: {&quot;cloudidentity.googleapis.com/groups.discussion_forum&quot;: &quot;&quot;} or {&quot;system/groups/external&quot;: &quot;&quot;}.
+  &quot;labels&quot;: { # Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value.
     &quot;a_key&quot;: &quot;A String&quot;,
   },
   &quot;name&quot;: &quot;A String&quot;, # Output only. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Group`. Shall be of the form `groups/{group_id}`.
-  &quot;parent&quot;: &quot;A String&quot;, # Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups.
+  &quot;parent&quot;: &quot;A String&quot;, # Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups. The `customer_id` must begin with &quot;C&quot; (for example, &#x27;C046psxkn&#x27;).
   &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time when the `Group` was last updated.
 }</pre>
 </div>
 
 <div class="method">
     <code class="details" id="list">list(pageSize=None, pageToken=None, parent=None, view=None, x__xgafv=None)</code>
-  <pre>Lists the `Group`s under a customer or namespace.
+  <pre>Lists the `Group` resources under a customer or namespace.
 
 Args:
   pageSize: integer, The maximum number of results to return. Note that the number of results returned may be less than this value even if there are more available results. To fetch all results, clients must continue calling this method repeatedly until the response no longer contains a `next_page_token`. If unspecified, defaults to 200 for `View.BASIC` and to 50 for `View.FULL`. Must not be greater than 1000 for `View.BASIC` or 500 for `View.FULL`.
   pageToken: string, The `next_page_token` value returned from a previous list request, if any.
-  parent: string, Required. The parent resource under which to list all `Group`s. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups.
+  parent: string, Required. The parent resource under which to list all `Group` resources. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups. The `customer_id` must begin with &quot;C&quot; (for example, &#x27;C046psxkn&#x27;).
   view: string, The level of detail to be returned. If unspecified, defaults to `View.BASIC`.
     Allowed values
       VIEW_UNSPECIFIED - Default. Should not be used.
@@ -306,11 +306,11 @@
         &quot;id&quot;: &quot;A String&quot;, # The ID of the entity. For Google-managed entities, the `id` should be the email address of an existing group or user. For external-identity-mapped entities, the `id` must be a string conforming to the Identity Source&#x27;s requirements. Must be unique within a `namespace`.
         &quot;namespace&quot;: &quot;A String&quot;, # The namespace in which the entity exists. If not specified, the `EntityKey` represents a Google-managed entity such as a Google user or a Google Group. If specified, the `EntityKey` represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of `identitysources/{identity_source_id}.
       },
-      &quot;labels&quot;: { # Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value. Examples: {&quot;cloudidentity.googleapis.com/groups.discussion_forum&quot;: &quot;&quot;} or {&quot;system/groups/external&quot;: &quot;&quot;}.
+      &quot;labels&quot;: { # Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value.
         &quot;a_key&quot;: &quot;A String&quot;,
       },
       &quot;name&quot;: &quot;A String&quot;, # Output only. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Group`. Shall be of the form `groups/{group_id}`.
-      &quot;parent&quot;: &quot;A String&quot;, # Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups.
+      &quot;parent&quot;: &quot;A String&quot;, # Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups. The `customer_id` must begin with &quot;C&quot; (for example, &#x27;C046psxkn&#x27;).
       &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time when the `Group` was last updated.
     },
   ],
@@ -381,11 +381,11 @@
     &quot;id&quot;: &quot;A String&quot;, # The ID of the entity. For Google-managed entities, the `id` should be the email address of an existing group or user. For external-identity-mapped entities, the `id` must be a string conforming to the Identity Source&#x27;s requirements. Must be unique within a `namespace`.
     &quot;namespace&quot;: &quot;A String&quot;, # The namespace in which the entity exists. If not specified, the `EntityKey` represents a Google-managed entity such as a Google user or a Google Group. If specified, the `EntityKey` represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of `identitysources/{identity_source_id}.
   },
-  &quot;labels&quot;: { # Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value. Examples: {&quot;cloudidentity.googleapis.com/groups.discussion_forum&quot;: &quot;&quot;} or {&quot;system/groups/external&quot;: &quot;&quot;}.
+  &quot;labels&quot;: { # Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value.
     &quot;a_key&quot;: &quot;A String&quot;,
   },
   &quot;name&quot;: &quot;A String&quot;, # Output only. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Group`. Shall be of the form `groups/{group_id}`.
-  &quot;parent&quot;: &quot;A String&quot;, # Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups.
+  &quot;parent&quot;: &quot;A String&quot;, # Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups. The `customer_id` must begin with &quot;C&quot; (for example, &#x27;C046psxkn&#x27;).
   &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time when the `Group` was last updated.
 }
 
@@ -421,12 +421,12 @@
 
 <div class="method">
     <code class="details" id="search">search(pageSize=None, pageToken=None, query=None, view=None, x__xgafv=None)</code>
-  <pre>Searches for `Group`s matching a specified query.
+  <pre>Searches for `Group` resources matching a specified query.
 
 Args:
   pageSize: integer, The maximum number of results to return. Note that the number of results returned may be less than this value even if there are more available results. To fetch all results, clients must continue calling this method repeatedly until the response no longer contains a `next_page_token`. If unspecified, defaults to 200 for `GroupView.BASIC` and 50 for `GroupView.FULL`. Must not be greater than 1000 for `GroupView.BASIC` or 500 for `GroupView.FULL`.
   pageToken: string, The `next_page_token` value returned from a previous search request, if any.
-  query: string, Required. The search query. Must be specified in [Common Expression Language](https://opensource.google/projects/cel). May only contain equality operators on the parent and inclusion operators on labels (e.g., `parent == &#x27;customers/{customer_id}&#x27; &amp;&amp; &#x27;cloudidentity.googleapis.com/groups.discussion_forum&#x27; in labels`).
+  query: string, Required. The search query. Must be specified in [Common Expression Language](https://opensource.google/projects/cel). May only contain equality operators on the parent and inclusion operators on labels (e.g., `parent == &#x27;customers/{customer_id}&#x27; &amp;&amp; &#x27;cloudidentity.googleapis.com/groups.discussion_forum&#x27; in labels`). The `customer_id` must begin with &quot;C&quot; (for example, &#x27;C046psxkn&#x27;).
   view: string, The level of detail to be returned. If unspecified, defaults to `View.BASIC`.
     Allowed values
       VIEW_UNSPECIFIED - Default. Should not be used.
@@ -441,7 +441,7 @@
   An object of the form:
 
     { # The response message for GroupsService.SearchGroups.
-  &quot;groups&quot;: [ # The `Group`s that match the search query.
+  &quot;groups&quot;: [ # The `Group` resources that match the search query.
     { # A group within the Cloud Identity Groups API. A `Group` is a collection of entities, where each entity is either a user, another group, or a service account.
       &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time when the `Group` was created.
       &quot;description&quot;: &quot;A String&quot;, # An extended description to help users determine the purpose of a `Group`. Must not be longer than 4,096 characters.
@@ -462,11 +462,11 @@
         &quot;id&quot;: &quot;A String&quot;, # The ID of the entity. For Google-managed entities, the `id` should be the email address of an existing group or user. For external-identity-mapped entities, the `id` must be a string conforming to the Identity Source&#x27;s requirements. Must be unique within a `namespace`.
         &quot;namespace&quot;: &quot;A String&quot;, # The namespace in which the entity exists. If not specified, the `EntityKey` represents a Google-managed entity such as a Google user or a Google Group. If specified, the `EntityKey` represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of `identitysources/{identity_source_id}.
       },
-      &quot;labels&quot;: { # Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value. Examples: {&quot;cloudidentity.googleapis.com/groups.discussion_forum&quot;: &quot;&quot;} or {&quot;system/groups/external&quot;: &quot;&quot;}.
+      &quot;labels&quot;: { # Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value.
         &quot;a_key&quot;: &quot;A String&quot;,
       },
       &quot;name&quot;: &quot;A String&quot;, # Output only. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Group`. Shall be of the form `groups/{group_id}`.
-      &quot;parent&quot;: &quot;A String&quot;, # Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups.
+      &quot;parent&quot;: &quot;A String&quot;, # Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups. The `customer_id` must begin with &quot;C&quot; (for example, &#x27;C046psxkn&#x27;).
       &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time when the `Group` was last updated.
     },
   ],
diff --git a/docs/dyn/cloudidentity_v1.groups.memberships.html b/docs/dyn/cloudidentity_v1.groups.memberships.html
index aaa8398..31cf220 100644
--- a/docs/dyn/cloudidentity_v1.groups.memberships.html
+++ b/docs/dyn/cloudidentity_v1.groups.memberships.html
@@ -408,7 +408,7 @@
   ],
   &quot;updateRolesParams&quot;: [ # The `MembershipRole`s to be updated. Updating roles in the same request as adding or removing roles is not supported. Must not be set if either `add_roles` or `remove_roles` is set.
     { # The details of an update to a `MembershipRole`.
-      &quot;fieldMask&quot;: &quot;A String&quot;, # The fully-qualified names of fields to update. May only contain the field `expiry_detail`.
+      &quot;fieldMask&quot;: &quot;A String&quot;, # The fully-qualified names of fields to update. May only contain the field `expiry_detail.expire_time`.
       &quot;membershipRole&quot;: { # A membership role within the Cloud Identity Groups API. A `MembershipRole` defines the privileges granted to a `Membership`. # The `MembershipRole`s to be updated. Only `MEMBER` `MembershipRole` can currently be updated.
         &quot;expiryDetail&quot;: { # The `MembershipRole` expiry details. # The expiry details of the `MembershipRole`. Expiry details are only supported for `MEMBER` `MembershipRoles`. May be set if `name` is `MEMBER`. Must not be set if `name` is any other value.
           &quot;expireTime&quot;: &quot;A String&quot;, # The time at which the `MembershipRole` will expire.
@@ -457,7 +457,7 @@
   parent: string, [Resource name](https://cloud.google.com/apis/design/resource_names) of the group to search transitive memberships in. Format: `groups/{group_id}`, where `group_id` is always &#x27;-&#x27; as this API will search across all groups for a given member. (required)
   pageSize: integer, The default page size is 200 (max 1000).
   pageToken: string, The next_page_token value returned from a previous list request, if any.
-  query: string, Required. A CEL expression that MUST include member specification AND label(s). This is a `required` field. Users can search on label attributes of groups. CONTAINS match (&#x27;in&#x27;) is supported on labels. Certain groups are uniquely identified by both a &#x27;member_key_id&#x27; and a &#x27;member_key_namespace&#x27;, which requires an additional query input: &#x27;member_key_namespace&#x27;. Example query: `member_key_id == &#x27;member_key_id_value&#x27; &amp;&amp; in labels`
+  query: string, Required. A CEL expression that MUST include member specification AND label(s). This is a `required` field. Users can search on label attributes of groups. CONTAINS match (&#x27;in&#x27;) is supported on labels. Identity-mapped groups are uniquely identified by both a `member_key_id` and a `member_key_namespace`, which requires an additional query input: `member_key_namespace`. Example query: `member_key_id == &#x27;member_key_id_value&#x27; &amp;&amp; in labels`
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
@@ -523,7 +523,7 @@
     { # The response message for MembershipsService.SearchTransitiveMemberships.
   &quot;memberships&quot;: [ # List of transitive members satisfying the query.
     { # Message representing a transitive membership of a group.
-      &quot;member&quot;: &quot;A String&quot;, # Resource name for this member if member is a GROUP, otherwise it is empty.
+      &quot;member&quot;: &quot;A String&quot;, # Resource name for this member.
       &quot;preferredMemberKey&quot;: [ # Entity key has an id and a namespace. In case of discussion forums, the id will be an email address without a namespace.
         { # A unique identifier for an entity in the Cloud Identity Groups API. An entity can represent either a group with an optional `namespace` or a user without a `namespace`. The combination of `id` and `namespace` must be unique; however, the same `id` can be used with different `namespace`s.
           &quot;id&quot;: &quot;A String&quot;, # The ID of the entity. For Google-managed entities, the `id` should be the email address of an existing group or user. For external-identity-mapped entities, the `id` must be a string conforming to the Identity Source&#x27;s requirements. Must be unique within a `namespace`.
diff --git a/docs/dyn/cloudidentity_v1beta1.customers.userinvitations.html b/docs/dyn/cloudidentity_v1beta1.customers.userinvitations.html
index 24e60db..1e26f6b 100644
--- a/docs/dyn/cloudidentity_v1beta1.customers.userinvitations.html
+++ b/docs/dyn/cloudidentity_v1beta1.customers.userinvitations.html
@@ -82,13 +82,13 @@
 <p class="firstline">Close httplib2 connections.</p>
 <p class="toc_element">
   <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
-<p class="firstline">Retrieves a UserInvitation resource. **Note:** New consumer accounts with the customer’s verified domain created within the previous 48 hours will not appear in the result. This delay also applies to newly-verified domains.</p>
+<p class="firstline">Retrieves a UserInvitation resource. **Note:** New consumer accounts with the customer's verified domain created within the previous 48 hours will not appear in the result. This delay also applies to newly-verified domains.</p>
 <p class="toc_element">
   <code><a href="#isInvitableUser">isInvitableUser(name, x__xgafv=None)</a></code></p>
-<p class="firstline">Verifies whether a user account is eligible to receive a UserInvitation (is an unmanaged account). Eligibility is based on the following criteria: * the email address is a consumer account and it’s the primary email address of the account, and * the domain of the email address matches an existing verified Google Workspace or Cloud Identity domain If both conditions are met, the user is eligible. **Note:** This method is not supported for Workspace Essentials customers.</p>
+<p class="firstline">Verifies whether a user account is eligible to receive a UserInvitation (is an unmanaged account). Eligibility is based on the following criteria: * the email address is a consumer account and it's the primary email address of the account, and * the domain of the email address matches an existing verified Google Workspace or Cloud Identity domain If both conditions are met, the user is eligible. **Note:** This method is not supported for Workspace Essentials customers.</p>
 <p class="toc_element">
   <code><a href="#list">list(parent, filter=None, orderBy=None, pageSize=None, pageToken=None, x__xgafv=None)</a></code></p>
-<p class="firstline">Retrieves a list of UserInvitation resources. **Note:** New consumer accounts with the customer’s verified domain created within the previous 48 hours will not appear in the result. This delay also applies to newly-verified domains.</p>
+<p class="firstline">Retrieves a list of UserInvitation resources. **Note:** New consumer accounts with the customer's verified domain created within the previous 48 hours will not appear in the result. This delay also applies to newly-verified domains.</p>
 <p class="toc_element">
   <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
 <p class="firstline">Retrieves the next page of results.</p>
@@ -144,7 +144,7 @@
 
 <div class="method">
     <code class="details" id="get">get(name, x__xgafv=None)</code>
-  <pre>Retrieves a UserInvitation resource. **Note:** New consumer accounts with the customer’s verified domain created within the previous 48 hours will not appear in the result. This delay also applies to newly-verified domains.
+  <pre>Retrieves a UserInvitation resource. **Note:** New consumer accounts with the customer&#x27;s verified domain created within the previous 48 hours will not appear in the result. This delay also applies to newly-verified domains.
 
 Args:
   name: string, Required. `UserInvitation` name in the format `customers/{customer}/userinvitations/{user_email_address}` (required)
@@ -166,7 +166,7 @@
 
 <div class="method">
     <code class="details" id="isInvitableUser">isInvitableUser(name, x__xgafv=None)</code>
-  <pre>Verifies whether a user account is eligible to receive a UserInvitation (is an unmanaged account). Eligibility is based on the following criteria: * the email address is a consumer account and it’s the primary email address of the account, and * the domain of the email address matches an existing verified Google Workspace or Cloud Identity domain If both conditions are met, the user is eligible. **Note:** This method is not supported for Workspace Essentials customers.
+  <pre>Verifies whether a user account is eligible to receive a UserInvitation (is an unmanaged account). Eligibility is based on the following criteria: * the email address is a consumer account and it&#x27;s the primary email address of the account, and * the domain of the email address matches an existing verified Google Workspace or Cloud Identity domain If both conditions are met, the user is eligible. **Note:** This method is not supported for Workspace Essentials customers.
 
 Args:
   name: string, Required. `UserInvitation` name in the format `customers/{customer}/userinvitations/{user_email_address}` (required)
@@ -185,7 +185,7 @@
 
 <div class="method">
     <code class="details" id="list">list(parent, filter=None, orderBy=None, pageSize=None, pageToken=None, x__xgafv=None)</code>
-  <pre>Retrieves a list of UserInvitation resources. **Note:** New consumer accounts with the customer’s verified domain created within the previous 48 hours will not appear in the result. This delay also applies to newly-verified domains.
+  <pre>Retrieves a list of UserInvitation resources. **Note:** New consumer accounts with the customer&#x27;s verified domain created within the previous 48 hours will not appear in the result. This delay also applies to newly-verified domains.
 
 Args:
   parent: string, Required. The customer ID of the Google Workspace or Cloud Identity account the UserInvitation resources are associated with. (required)
diff --git a/docs/dyn/cloudidentity_v1beta1.devices.deviceUsers.html b/docs/dyn/cloudidentity_v1beta1.devices.deviceUsers.html
index 2c6a9e4..0198314 100644
--- a/docs/dyn/cloudidentity_v1beta1.devices.deviceUsers.html
+++ b/docs/dyn/cloudidentity_v1beta1.devices.deviceUsers.html
@@ -297,7 +297,7 @@
   &quot;languageCode&quot;: &quot;A String&quot;, # Output only. Default locale used on device, in IETF BCP-47 format.
   &quot;lastSyncTime&quot;: &quot;A String&quot;, # Output only. Last time when user synced with policies.
   &quot;managementState&quot;: &quot;A String&quot;, # Output only. Management state of the user on the device.
-  &quot;name&quot;: &quot;A String&quot;, # Output only. [Resource name](https://cloud.google.com/apis/design/resource_names) of the DeviceUser in format: `devices/{device_id}/deviceUsers/{user_id}`, where user_id is the ID of the user associated with the user session.
+  &quot;name&quot;: &quot;A String&quot;, # Output only. [Resource name](https://cloud.google.com/apis/design/resource_names) of the DeviceUser in format: `devices/{device_id}/deviceUsers/{device_user_id}`, where `device_user_id` uniquely identifies a user&#x27;s use of a device.
   &quot;passwordState&quot;: &quot;A String&quot;, # Password state of the DeviceUser object
   &quot;userAgent&quot;: &quot;A String&quot;, # Output only. User agent on the device for this specific user
   &quot;userEmail&quot;: &quot;A String&quot;, # Email address of the user registered on the device.
@@ -331,7 +331,7 @@
       &quot;languageCode&quot;: &quot;A String&quot;, # Output only. Default locale used on device, in IETF BCP-47 format.
       &quot;lastSyncTime&quot;: &quot;A String&quot;, # Output only. Last time when user synced with policies.
       &quot;managementState&quot;: &quot;A String&quot;, # Output only. Management state of the user on the device.
-      &quot;name&quot;: &quot;A String&quot;, # Output only. [Resource name](https://cloud.google.com/apis/design/resource_names) of the DeviceUser in format: `devices/{device_id}/deviceUsers/{user_id}`, where user_id is the ID of the user associated with the user session.
+      &quot;name&quot;: &quot;A String&quot;, # Output only. [Resource name](https://cloud.google.com/apis/design/resource_names) of the DeviceUser in format: `devices/{device_id}/deviceUsers/{device_user_id}`, where `device_user_id` uniquely identifies a user&#x27;s use of a device.
       &quot;passwordState&quot;: &quot;A String&quot;, # Password state of the DeviceUser object
       &quot;userAgent&quot;: &quot;A String&quot;, # Output only. User agent on the device for this specific user
       &quot;userEmail&quot;: &quot;A String&quot;, # Email address of the user registered on the device.
diff --git a/docs/dyn/cloudidentity_v1beta1.groups.html b/docs/dyn/cloudidentity_v1beta1.groups.html
index 66d949a..b03faa6 100644
--- a/docs/dyn/cloudidentity_v1beta1.groups.html
+++ b/docs/dyn/cloudidentity_v1beta1.groups.html
@@ -93,7 +93,7 @@
 <p class="firstline">Retrieves a `Group`.</p>
 <p class="toc_element">
   <code><a href="#list">list(pageSize=None, pageToken=None, parent=None, view=None, x__xgafv=None)</a></code></p>
-<p class="firstline">Lists the `Group`s under a customer or namespace.</p>
+<p class="firstline">Lists the `Group` resources under a customer or namespace.</p>
 <p class="toc_element">
   <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
 <p class="firstline">Retrieves the next page of results.</p>
@@ -105,7 +105,7 @@
 <p class="firstline">Updates a `Group`.</p>
 <p class="toc_element">
   <code><a href="#search">search(pageSize=None, pageToken=None, query=None, view=None, x__xgafv=None)</a></code></p>
-<p class="firstline">Searches for `Group`s matching a specified query.</p>
+<p class="firstline">Searches for `Group` resources matching a specified query.</p>
 <p class="toc_element">
   <code><a href="#search_next">search_next(previous_request, previous_response)</a></code></p>
 <p class="firstline">Retrieves the next page of results.</p>
@@ -149,11 +149,11 @@
     &quot;id&quot;: &quot;A String&quot;, # The ID of the entity. For Google-managed entities, the `id` must be the email address of an existing group or user. For external-identity-mapped entities, the `id` must be a string conforming to the Identity Source&#x27;s requirements. Must be unique within a `namespace`.
     &quot;namespace&quot;: &quot;A String&quot;, # The namespace in which the entity exists. If not specified, the `EntityKey` represents a Google-managed entity such as a Google user or a Google Group. If specified, the `EntityKey` represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of `identitysources/{identity_source_id}.
   },
-  &quot;labels&quot;: { # Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value. Examples: {&quot;cloudidentity.googleapis.com/groups.discussion_forum&quot;: &quot;&quot;} or {&quot;system/groups/external&quot;: &quot;&quot;}.
+  &quot;labels&quot;: { # Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value.
     &quot;a_key&quot;: &quot;A String&quot;,
   },
   &quot;name&quot;: &quot;A String&quot;, # Output only. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Group`. Shall be of the form `groups/{group_id}`.
-  &quot;parent&quot;: &quot;A String&quot;, # Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups.
+  &quot;parent&quot;: &quot;A String&quot;, # Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups. The `customer_id` must begin with &quot;C&quot; (for example, &#x27;C046psxkn&#x27;).
   &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time when the `Group` was last updated.
 }
 
@@ -266,23 +266,23 @@
     &quot;id&quot;: &quot;A String&quot;, # The ID of the entity. For Google-managed entities, the `id` must be the email address of an existing group or user. For external-identity-mapped entities, the `id` must be a string conforming to the Identity Source&#x27;s requirements. Must be unique within a `namespace`.
     &quot;namespace&quot;: &quot;A String&quot;, # The namespace in which the entity exists. If not specified, the `EntityKey` represents a Google-managed entity such as a Google user or a Google Group. If specified, the `EntityKey` represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of `identitysources/{identity_source_id}.
   },
-  &quot;labels&quot;: { # Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value. Examples: {&quot;cloudidentity.googleapis.com/groups.discussion_forum&quot;: &quot;&quot;} or {&quot;system/groups/external&quot;: &quot;&quot;}.
+  &quot;labels&quot;: { # Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value.
     &quot;a_key&quot;: &quot;A String&quot;,
   },
   &quot;name&quot;: &quot;A String&quot;, # Output only. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Group`. Shall be of the form `groups/{group_id}`.
-  &quot;parent&quot;: &quot;A String&quot;, # Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups.
+  &quot;parent&quot;: &quot;A String&quot;, # Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups. The `customer_id` must begin with &quot;C&quot; (for example, &#x27;C046psxkn&#x27;).
   &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time when the `Group` was last updated.
 }</pre>
 </div>
 
 <div class="method">
     <code class="details" id="list">list(pageSize=None, pageToken=None, parent=None, view=None, x__xgafv=None)</code>
-  <pre>Lists the `Group`s under a customer or namespace.
+  <pre>Lists the `Group` resources under a customer or namespace.
 
 Args:
   pageSize: integer, The maximum number of results to return. Note that the number of results returned may be less than this value even if there are more available results. To fetch all results, clients must continue calling this method repeatedly until the response no longer contains a `next_page_token`. If unspecified, defaults to 200 for `View.BASIC` and to 50 for `View.FULL`. Must not be greater than 1000 for `View.BASIC` or 500 for `View.FULL`.
   pageToken: string, The `next_page_token` value returned from a previous list request, if any.
-  parent: string, Required. The parent resource under which to list all `Group`s. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups.
+  parent: string, Required. The parent resource under which to list all `Group` resources. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups. The `customer_id` must begin with &quot;C&quot; (for example, &#x27;C046psxkn&#x27;).
   view: string, The level of detail to be returned. If unspecified, defaults to `View.BASIC`.
     Allowed values
       VIEW_UNSPECIFIED - Default. Should not be used.
@@ -297,7 +297,7 @@
   An object of the form:
 
     { # The response message for GroupsService.ListGroups.
-  &quot;groups&quot;: [ # The `Group`s under the specified `parent`.
+  &quot;groups&quot;: [ # The `Group` resources under the specified `parent`.
     { # A group within the Cloud Identity Groups API. A `Group` is a collection of entities, where each entity is either a user, another group, or a service account.
       &quot;additionalGroupKeys&quot;: [ # Additional entity key aliases for a Group.
         { # A unique identifier for an entity in the Cloud Identity Groups API. An entity can represent either a group with an optional `namespace` or a user without a `namespace`. The combination of `id` and `namespace` must be unique; however, the same `id` can be used with different `namespace`s.
@@ -324,11 +324,11 @@
         &quot;id&quot;: &quot;A String&quot;, # The ID of the entity. For Google-managed entities, the `id` must be the email address of an existing group or user. For external-identity-mapped entities, the `id` must be a string conforming to the Identity Source&#x27;s requirements. Must be unique within a `namespace`.
         &quot;namespace&quot;: &quot;A String&quot;, # The namespace in which the entity exists. If not specified, the `EntityKey` represents a Google-managed entity such as a Google user or a Google Group. If specified, the `EntityKey` represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of `identitysources/{identity_source_id}.
       },
-      &quot;labels&quot;: { # Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value. Examples: {&quot;cloudidentity.googleapis.com/groups.discussion_forum&quot;: &quot;&quot;} or {&quot;system/groups/external&quot;: &quot;&quot;}.
+      &quot;labels&quot;: { # Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value.
         &quot;a_key&quot;: &quot;A String&quot;,
       },
       &quot;name&quot;: &quot;A String&quot;, # Output only. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Group`. Shall be of the form `groups/{group_id}`.
-      &quot;parent&quot;: &quot;A String&quot;, # Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups.
+      &quot;parent&quot;: &quot;A String&quot;, # Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups. The `customer_id` must begin with &quot;C&quot; (for example, &#x27;C046psxkn&#x27;).
       &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time when the `Group` was last updated.
     },
   ],
@@ -405,11 +405,11 @@
     &quot;id&quot;: &quot;A String&quot;, # The ID of the entity. For Google-managed entities, the `id` must be the email address of an existing group or user. For external-identity-mapped entities, the `id` must be a string conforming to the Identity Source&#x27;s requirements. Must be unique within a `namespace`.
     &quot;namespace&quot;: &quot;A String&quot;, # The namespace in which the entity exists. If not specified, the `EntityKey` represents a Google-managed entity such as a Google user or a Google Group. If specified, the `EntityKey` represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of `identitysources/{identity_source_id}.
   },
-  &quot;labels&quot;: { # Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value. Examples: {&quot;cloudidentity.googleapis.com/groups.discussion_forum&quot;: &quot;&quot;} or {&quot;system/groups/external&quot;: &quot;&quot;}.
+  &quot;labels&quot;: { # Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value.
     &quot;a_key&quot;: &quot;A String&quot;,
   },
   &quot;name&quot;: &quot;A String&quot;, # Output only. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Group`. Shall be of the form `groups/{group_id}`.
-  &quot;parent&quot;: &quot;A String&quot;, # Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups.
+  &quot;parent&quot;: &quot;A String&quot;, # Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups. The `customer_id` must begin with &quot;C&quot; (for example, &#x27;C046psxkn&#x27;).
   &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time when the `Group` was last updated.
 }
 
@@ -445,12 +445,12 @@
 
 <div class="method">
     <code class="details" id="search">search(pageSize=None, pageToken=None, query=None, view=None, x__xgafv=None)</code>
-  <pre>Searches for `Group`s matching a specified query.
+  <pre>Searches for `Group` resources matching a specified query.
 
 Args:
   pageSize: integer, The maximum number of results to return. Note that the number of results returned may be less than this value even if there are more available results. To fetch all results, clients must continue calling this method repeatedly until the response no longer contains a `next_page_token`. If unspecified, defaults to 200 for `GroupView.BASIC` and to 50 for `GroupView.FULL`. Must not be greater than 1000 for `GroupView.BASIC` or 500 for `GroupView.FULL`.
   pageToken: string, The `next_page_token` value returned from a previous search request, if any.
-  query: string, Required. The search query. Must be specified in [Common Expression Language](https://opensource.google/projects/cel). May only contain equality operators on the parent and inclusion operators on labels (e.g., `parent == &#x27;customers/{customer_id}&#x27; &amp;&amp; &#x27;cloudidentity.googleapis.com/groups.discussion_forum&#x27; in labels`).
+  query: string, Required. The search query. Must be specified in [Common Expression Language](https://opensource.google/projects/cel). May only contain equality operators on the parent and inclusion operators on labels (e.g., `parent == &#x27;customers/{customer_id}&#x27; &amp;&amp; &#x27;cloudidentity.googleapis.com/groups.discussion_forum&#x27; in labels`). The `customer_id` must begin with &quot;C&quot; (for example, &#x27;C046psxkn&#x27;).
   view: string, The level of detail to be returned. If unspecified, defaults to `View.BASIC`.
     Allowed values
       BASIC - Default. Only basic resource information is returned.
@@ -464,7 +464,7 @@
   An object of the form:
 
     { # The response message for GroupsService.SearchGroups.
-  &quot;groups&quot;: [ # The `Group`s that match the search query.
+  &quot;groups&quot;: [ # The `Group` resources that match the search query.
     { # A group within the Cloud Identity Groups API. A `Group` is a collection of entities, where each entity is either a user, another group, or a service account.
       &quot;additionalGroupKeys&quot;: [ # Additional entity key aliases for a Group.
         { # A unique identifier for an entity in the Cloud Identity Groups API. An entity can represent either a group with an optional `namespace` or a user without a `namespace`. The combination of `id` and `namespace` must be unique; however, the same `id` can be used with different `namespace`s.
@@ -491,11 +491,11 @@
         &quot;id&quot;: &quot;A String&quot;, # The ID of the entity. For Google-managed entities, the `id` must be the email address of an existing group or user. For external-identity-mapped entities, the `id` must be a string conforming to the Identity Source&#x27;s requirements. Must be unique within a `namespace`.
         &quot;namespace&quot;: &quot;A String&quot;, # The namespace in which the entity exists. If not specified, the `EntityKey` represents a Google-managed entity such as a Google user or a Google Group. If specified, the `EntityKey` represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of `identitysources/{identity_source_id}.
       },
-      &quot;labels&quot;: { # Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value. Examples: {&quot;cloudidentity.googleapis.com/groups.discussion_forum&quot;: &quot;&quot;} or {&quot;system/groups/external&quot;: &quot;&quot;}.
+      &quot;labels&quot;: { # Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value.
         &quot;a_key&quot;: &quot;A String&quot;,
       },
       &quot;name&quot;: &quot;A String&quot;, # Output only. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Group`. Shall be of the form `groups/{group_id}`.
-      &quot;parent&quot;: &quot;A String&quot;, # Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups.
+      &quot;parent&quot;: &quot;A String&quot;, # Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups. The `customer_id` must begin with &quot;C&quot; (for example, &#x27;C046psxkn&#x27;).
       &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time when the `Group` was last updated.
     },
   ],
diff --git a/docs/dyn/cloudidentity_v1beta1.groups.memberships.html b/docs/dyn/cloudidentity_v1beta1.groups.memberships.html
index 83819f0..e683082 100644
--- a/docs/dyn/cloudidentity_v1beta1.groups.memberships.html
+++ b/docs/dyn/cloudidentity_v1beta1.groups.memberships.html
@@ -419,7 +419,7 @@
   ],
   &quot;updateRolesParams&quot;: [ # The `MembershipRole`s to be updated. Updating roles in the same request as adding or removing roles is not supported. Must not be set if either `add_roles` or `remove_roles` is set.
     { # The details of an update to a `MembershipRole`.
-      &quot;fieldMask&quot;: &quot;A String&quot;, # The fully-qualified names of fields to update. May only contain the field `expiry_detail`.
+      &quot;fieldMask&quot;: &quot;A String&quot;, # The fully-qualified names of fields to update. May only contain the field `expiry_detail.expire_time`.
       &quot;membershipRole&quot;: { # A membership role within the Cloud Identity Groups API. A `MembershipRole` defines the privileges granted to a `Membership`. # The `MembershipRole`s to be updated. Only `MEMBER` `MembershipRoles` can currently be updated. May only contain a `MembershipRole` with `name` `MEMBER`.
         &quot;expiryDetail&quot;: { # The `MembershipRole` expiry details. # The expiry details of the `MembershipRole`. Expiry details are only supported for `MEMBER` `MembershipRoles`. May be set if `name` is `MEMBER`. Must not be set if `name` is any other value.
           &quot;expireTime&quot;: &quot;A String&quot;, # The time at which the `MembershipRole` will expire.
@@ -472,7 +472,7 @@
   parent: string, [Resource name](https://cloud.google.com/apis/design/resource_names) of the group to search transitive memberships in. Format: `groups/{group_id}`, where `group_id` is always &#x27;-&#x27; as this API will search across all groups for a given member. (required)
   pageSize: integer, The default page size is 200 (max 1000).
   pageToken: string, The next_page_token value returned from a previous list request, if any.
-  query: string, Required. A CEL expression that MUST include member specification AND label(s). This is a `required` field. Users can search on label attributes of groups. CONTAINS match (&#x27;in&#x27;) is supported on labels. Certain groups are uniquely identified by both a &#x27;member_key_id&#x27; and a &#x27;member_key_namespace&#x27;, which requires an additional query input: &#x27;member_key_namespace&#x27;. Example query: `member_key_id == &#x27;member_key_id_value&#x27; &amp;&amp; in labels`
+  query: string, Required. A CEL expression that MUST include member specification AND label(s). This is a `required` field. Users can search on label attributes of groups. CONTAINS match (&#x27;in&#x27;) is supported on labels. Identity-mapped groups are uniquely identified by both a `member_key_id` and a `member_key_namespace`, which requires an additional query input: `member_key_namespace`. Example query: `member_key_id == &#x27;member_key_id_value&#x27; &amp;&amp; in labels`
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
@@ -538,7 +538,7 @@
     { # The response message for MembershipsService.SearchTransitiveMemberships.
   &quot;memberships&quot;: [ # List of transitive members satisfying the query.
     { # Message representing a transitive membership of a group.
-      &quot;member&quot;: &quot;A String&quot;, # Resource name for this member if member is a GROUP, otherwise it is empty.
+      &quot;member&quot;: &quot;A String&quot;, # Resource name for this member.
       &quot;preferredMemberKey&quot;: [ # Entity key has an id and a namespace. In case of discussion forums, the id will be an email address without a namespace.
         { # A unique identifier for an entity in the Cloud Identity Groups API. An entity can represent either a group with an optional `namespace` or a user without a `namespace`. The combination of `id` and `namespace` must be unique; however, the same `id` can be used with different `namespace`s.
           &quot;id&quot;: &quot;A String&quot;, # The ID of the entity. For Google-managed entities, the `id` must be the email address of an existing group or user. For external-identity-mapped entities, the `id` must be a string conforming to the Identity Source&#x27;s requirements. Must be unique within a `namespace`.
diff --git a/docs/dyn/datastore_v1.projects.html b/docs/dyn/datastore_v1.projects.html
index 4f71a3f..96acf9c 100644
--- a/docs/dyn/datastore_v1.projects.html
+++ b/docs/dyn/datastore_v1.projects.html
@@ -248,7 +248,40 @@
           ],
         },
         &quot;properties&quot;: { # The entity&#x27;s properties. The map&#x27;s keys are property names. A property name matching regex `__.*__` is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. The name cannot be `&quot;&quot;`.
-          &quot;a_key&quot;: # Object with schema name: Value
+          &quot;a_key&quot;: { # A message that can hold any of the supported value types and associated metadata.
+            &quot;arrayValue&quot;: { # An array value. # An array value. Cannot contain another array value. A `Value` instance that sets field `array_value` must not set fields `meaning` or `exclude_from_indexes`.
+              &quot;values&quot;: [ # Values in the array. The order of values in an array is preserved as long as all values have identical settings for &#x27;exclude_from_indexes&#x27;.
+                # Object with schema name: Value
+              ],
+            },
+            &quot;blobValue&quot;: &quot;A String&quot;, # A blob value. May have at most 1,000,000 bytes. When `exclude_from_indexes` is false, may have at most 1500 bytes. In JSON requests, must be base64-encoded.
+            &quot;booleanValue&quot;: True or False, # A boolean value.
+            &quot;doubleValue&quot;: 3.14, # A double value.
+            &quot;entityValue&quot;: # Object with schema name: Entity # An entity value. - May have no key. - May have a key with an incomplete key path. - May have a reserved/read-only key.
+            &quot;excludeFromIndexes&quot;: True or False, # If the value should be excluded from all indexes including those defined explicitly.
+            &quot;geoPointValue&quot;: { # An object that represents a latitude/longitude pair. This is expressed as a pair of doubles to represent degrees latitude and degrees longitude. Unless specified otherwise, this object must conform to the WGS84 standard. Values must be within normalized ranges. # A geo point value representing a point on the surface of Earth.
+              &quot;latitude&quot;: 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+              &quot;longitude&quot;: 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+            },
+            &quot;integerValue&quot;: &quot;A String&quot;, # An integer value.
+            &quot;keyValue&quot;: { # A unique identifier for an entity. If a key&#x27;s partition ID or any of its path kinds or names are reserved/read-only, the key is reserved/read-only. A reserved/read-only key is forbidden in certain documented contexts. # A key value.
+              &quot;partitionId&quot;: { # A partition ID identifies a grouping of entities. The grouping is always by project and namespace, however the namespace ID may be empty. A partition ID contains several dimensions: project ID and namespace ID. Partition dimensions: - May be `&quot;&quot;`. - Must be valid UTF-8 bytes. - Must have values that match regex `[A-Za-z\d\.\-_]{1,100}` If the value of any dimension matches regex `__.*__`, the partition is reserved/read-only. A reserved/read-only partition ID is forbidden in certain documented contexts. Foreign partition IDs (in which the project ID does not match the context project ID ) are discouraged. Reads and writes of foreign partition IDs may fail if the project is not in an active state. # Entities are partitioned into subsets, currently identified by a project ID and namespace ID. Queries are scoped to a single partition.
+                &quot;namespaceId&quot;: &quot;A String&quot;, # If not empty, the ID of the namespace to which the entities belong.
+                &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project to which the entities belong.
+              },
+              &quot;path&quot;: [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a _root entity_, the second element identifies a _child_ of the root entity, the third element identifies a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element&#x27;s _ancestors_. An entity path is always fully complete: *all* of the entity&#x27;s ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. For example, the last path element of the key of `Mutation.insert` may have no identifier. A path can never be empty, and a path can have at most 100 elements.
+                { # A (kind, ID/name) pair used to construct a key path. If either name or ID is set, the element is complete. If neither is set, the element is incomplete.
+                  &quot;id&quot;: &quot;A String&quot;, # The auto-allocated ID of the entity. Never equal to zero. Values less than zero are discouraged and may not be supported in the future.
+                  &quot;kind&quot;: &quot;A String&quot;, # The kind of the entity. A kind matching regex `__.*__` is reserved/read-only. A kind must not contain more than 1500 bytes when UTF-8 encoded. Cannot be `&quot;&quot;`.
+                  &quot;name&quot;: &quot;A String&quot;, # The name of the entity. A name matching regex `__.*__` is reserved/read-only. A name must not be more than 1500 bytes when UTF-8 encoded. Cannot be `&quot;&quot;`.
+                },
+              ],
+            },
+            &quot;meaning&quot;: 42, # The `meaning` field should only be populated for backwards compatibility.
+            &quot;nullValue&quot;: &quot;A String&quot;, # A null value.
+            &quot;stringValue&quot;: &quot;A String&quot;, # A UTF-8 encoded string value. When `exclude_from_indexes` is false (it is indexed) , may have at most 1500 bytes. Otherwise, may be set to at most 1,000,000 bytes.
+            &quot;timestampValue&quot;: &quot;A String&quot;, # A timestamp value. When stored in the Datastore, precise only to microseconds; any additional precision is rounded down.
+          },
         },
       },
       &quot;update&quot;: { # A Datastore data object. An entity is limited to 1 megabyte when stored. That _roughly_ corresponds to a limit of 1 megabyte for the serialized form of this message. # The entity to update. The entity must already exist. Must have a complete key path.
@@ -266,7 +299,40 @@
           ],
         },
         &quot;properties&quot;: { # The entity&#x27;s properties. The map&#x27;s keys are property names. A property name matching regex `__.*__` is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. The name cannot be `&quot;&quot;`.
-          &quot;a_key&quot;: # Object with schema name: Value
+          &quot;a_key&quot;: { # A message that can hold any of the supported value types and associated metadata.
+            &quot;arrayValue&quot;: { # An array value. # An array value. Cannot contain another array value. A `Value` instance that sets field `array_value` must not set fields `meaning` or `exclude_from_indexes`.
+              &quot;values&quot;: [ # Values in the array. The order of values in an array is preserved as long as all values have identical settings for &#x27;exclude_from_indexes&#x27;.
+                # Object with schema name: Value
+              ],
+            },
+            &quot;blobValue&quot;: &quot;A String&quot;, # A blob value. May have at most 1,000,000 bytes. When `exclude_from_indexes` is false, may have at most 1500 bytes. In JSON requests, must be base64-encoded.
+            &quot;booleanValue&quot;: True or False, # A boolean value.
+            &quot;doubleValue&quot;: 3.14, # A double value.
+            &quot;entityValue&quot;: # Object with schema name: Entity # An entity value. - May have no key. - May have a key with an incomplete key path. - May have a reserved/read-only key.
+            &quot;excludeFromIndexes&quot;: True or False, # If the value should be excluded from all indexes including those defined explicitly.
+            &quot;geoPointValue&quot;: { # An object that represents a latitude/longitude pair. This is expressed as a pair of doubles to represent degrees latitude and degrees longitude. Unless specified otherwise, this object must conform to the WGS84 standard. Values must be within normalized ranges. # A geo point value representing a point on the surface of Earth.
+              &quot;latitude&quot;: 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+              &quot;longitude&quot;: 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+            },
+            &quot;integerValue&quot;: &quot;A String&quot;, # An integer value.
+            &quot;keyValue&quot;: { # A unique identifier for an entity. If a key&#x27;s partition ID or any of its path kinds or names are reserved/read-only, the key is reserved/read-only. A reserved/read-only key is forbidden in certain documented contexts. # A key value.
+              &quot;partitionId&quot;: { # A partition ID identifies a grouping of entities. The grouping is always by project and namespace, however the namespace ID may be empty. A partition ID contains several dimensions: project ID and namespace ID. Partition dimensions: - May be `&quot;&quot;`. - Must be valid UTF-8 bytes. - Must have values that match regex `[A-Za-z\d\.\-_]{1,100}` If the value of any dimension matches regex `__.*__`, the partition is reserved/read-only. A reserved/read-only partition ID is forbidden in certain documented contexts. Foreign partition IDs (in which the project ID does not match the context project ID ) are discouraged. Reads and writes of foreign partition IDs may fail if the project is not in an active state. # Entities are partitioned into subsets, currently identified by a project ID and namespace ID. Queries are scoped to a single partition.
+                &quot;namespaceId&quot;: &quot;A String&quot;, # If not empty, the ID of the namespace to which the entities belong.
+                &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project to which the entities belong.
+              },
+              &quot;path&quot;: [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a _root entity_, the second element identifies a _child_ of the root entity, the third element identifies a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element&#x27;s _ancestors_. An entity path is always fully complete: *all* of the entity&#x27;s ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. For example, the last path element of the key of `Mutation.insert` may have no identifier. A path can never be empty, and a path can have at most 100 elements.
+                { # A (kind, ID/name) pair used to construct a key path. If either name or ID is set, the element is complete. If neither is set, the element is incomplete.
+                  &quot;id&quot;: &quot;A String&quot;, # The auto-allocated ID of the entity. Never equal to zero. Values less than zero are discouraged and may not be supported in the future.
+                  &quot;kind&quot;: &quot;A String&quot;, # The kind of the entity. A kind matching regex `__.*__` is reserved/read-only. A kind must not contain more than 1500 bytes when UTF-8 encoded. Cannot be `&quot;&quot;`.
+                  &quot;name&quot;: &quot;A String&quot;, # The name of the entity. A name matching regex `__.*__` is reserved/read-only. A name must not be more than 1500 bytes when UTF-8 encoded. Cannot be `&quot;&quot;`.
+                },
+              ],
+            },
+            &quot;meaning&quot;: 42, # The `meaning` field should only be populated for backwards compatibility.
+            &quot;nullValue&quot;: &quot;A String&quot;, # A null value.
+            &quot;stringValue&quot;: &quot;A String&quot;, # A UTF-8 encoded string value. When `exclude_from_indexes` is false (it is indexed) , may have at most 1500 bytes. Otherwise, may be set to at most 1,000,000 bytes.
+            &quot;timestampValue&quot;: &quot;A String&quot;, # A timestamp value. When stored in the Datastore, precise only to microseconds; any additional precision is rounded down.
+          },
         },
       },
       &quot;upsert&quot;: { # A Datastore data object. An entity is limited to 1 megabyte when stored. That _roughly_ corresponds to a limit of 1 megabyte for the serialized form of this message. # The entity to upsert. The entity may or may not already exist. The entity key&#x27;s final path element may be incomplete.
@@ -284,7 +350,40 @@
           ],
         },
         &quot;properties&quot;: { # The entity&#x27;s properties. The map&#x27;s keys are property names. A property name matching regex `__.*__` is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. The name cannot be `&quot;&quot;`.
-          &quot;a_key&quot;: # Object with schema name: Value
+          &quot;a_key&quot;: { # A message that can hold any of the supported value types and associated metadata.
+            &quot;arrayValue&quot;: { # An array value. # An array value. Cannot contain another array value. A `Value` instance that sets field `array_value` must not set fields `meaning` or `exclude_from_indexes`.
+              &quot;values&quot;: [ # Values in the array. The order of values in an array is preserved as long as all values have identical settings for &#x27;exclude_from_indexes&#x27;.
+                # Object with schema name: Value
+              ],
+            },
+            &quot;blobValue&quot;: &quot;A String&quot;, # A blob value. May have at most 1,000,000 bytes. When `exclude_from_indexes` is false, may have at most 1500 bytes. In JSON requests, must be base64-encoded.
+            &quot;booleanValue&quot;: True or False, # A boolean value.
+            &quot;doubleValue&quot;: 3.14, # A double value.
+            &quot;entityValue&quot;: # Object with schema name: Entity # An entity value. - May have no key. - May have a key with an incomplete key path. - May have a reserved/read-only key.
+            &quot;excludeFromIndexes&quot;: True or False, # If the value should be excluded from all indexes including those defined explicitly.
+            &quot;geoPointValue&quot;: { # An object that represents a latitude/longitude pair. This is expressed as a pair of doubles to represent degrees latitude and degrees longitude. Unless specified otherwise, this object must conform to the WGS84 standard. Values must be within normalized ranges. # A geo point value representing a point on the surface of Earth.
+              &quot;latitude&quot;: 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+              &quot;longitude&quot;: 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+            },
+            &quot;integerValue&quot;: &quot;A String&quot;, # An integer value.
+            &quot;keyValue&quot;: { # A unique identifier for an entity. If a key&#x27;s partition ID or any of its path kinds or names are reserved/read-only, the key is reserved/read-only. A reserved/read-only key is forbidden in certain documented contexts. # A key value.
+              &quot;partitionId&quot;: { # A partition ID identifies a grouping of entities. The grouping is always by project and namespace, however the namespace ID may be empty. A partition ID contains several dimensions: project ID and namespace ID. Partition dimensions: - May be `&quot;&quot;`. - Must be valid UTF-8 bytes. - Must have values that match regex `[A-Za-z\d\.\-_]{1,100}` If the value of any dimension matches regex `__.*__`, the partition is reserved/read-only. A reserved/read-only partition ID is forbidden in certain documented contexts. Foreign partition IDs (in which the project ID does not match the context project ID ) are discouraged. Reads and writes of foreign partition IDs may fail if the project is not in an active state. # Entities are partitioned into subsets, currently identified by a project ID and namespace ID. Queries are scoped to a single partition.
+                &quot;namespaceId&quot;: &quot;A String&quot;, # If not empty, the ID of the namespace to which the entities belong.
+                &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project to which the entities belong.
+              },
+              &quot;path&quot;: [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a _root entity_, the second element identifies a _child_ of the root entity, the third element identifies a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element&#x27;s _ancestors_. An entity path is always fully complete: *all* of the entity&#x27;s ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. For example, the last path element of the key of `Mutation.insert` may have no identifier. A path can never be empty, and a path can have at most 100 elements.
+                { # A (kind, ID/name) pair used to construct a key path. If either name or ID is set, the element is complete. If neither is set, the element is incomplete.
+                  &quot;id&quot;: &quot;A String&quot;, # The auto-allocated ID of the entity. Never equal to zero. Values less than zero are discouraged and may not be supported in the future.
+                  &quot;kind&quot;: &quot;A String&quot;, # The kind of the entity. A kind matching regex `__.*__` is reserved/read-only. A kind must not contain more than 1500 bytes when UTF-8 encoded. Cannot be `&quot;&quot;`.
+                  &quot;name&quot;: &quot;A String&quot;, # The name of the entity. A name matching regex `__.*__` is reserved/read-only. A name must not be more than 1500 bytes when UTF-8 encoded. Cannot be `&quot;&quot;`.
+                },
+              ],
+            },
+            &quot;meaning&quot;: 42, # The `meaning` field should only be populated for backwards compatibility.
+            &quot;nullValue&quot;: &quot;A String&quot;, # A null value.
+            &quot;stringValue&quot;: &quot;A String&quot;, # A UTF-8 encoded string value. When `exclude_from_indexes` is false (it is indexed) , may have at most 1500 bytes. Otherwise, may be set to at most 1,000,000 bytes.
+            &quot;timestampValue&quot;: &quot;A String&quot;, # A timestamp value. When stored in the Datastore, precise only to microseconds; any additional precision is rounded down.
+          },
         },
       },
     },
@@ -503,7 +602,40 @@
           ],
         },
         &quot;properties&quot;: { # The entity&#x27;s properties. The map&#x27;s keys are property names. A property name matching regex `__.*__` is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. The name cannot be `&quot;&quot;`.
-          &quot;a_key&quot;: # Object with schema name: Value
+          &quot;a_key&quot;: { # A message that can hold any of the supported value types and associated metadata.
+            &quot;arrayValue&quot;: { # An array value. # An array value. Cannot contain another array value. A `Value` instance that sets field `array_value` must not set fields `meaning` or `exclude_from_indexes`.
+              &quot;values&quot;: [ # Values in the array. The order of values in an array is preserved as long as all values have identical settings for &#x27;exclude_from_indexes&#x27;.
+                # Object with schema name: Value
+              ],
+            },
+            &quot;blobValue&quot;: &quot;A String&quot;, # A blob value. May have at most 1,000,000 bytes. When `exclude_from_indexes` is false, may have at most 1500 bytes. In JSON requests, must be base64-encoded.
+            &quot;booleanValue&quot;: True or False, # A boolean value.
+            &quot;doubleValue&quot;: 3.14, # A double value.
+            &quot;entityValue&quot;: # Object with schema name: Entity # An entity value. - May have no key. - May have a key with an incomplete key path. - May have a reserved/read-only key.
+            &quot;excludeFromIndexes&quot;: True or False, # If the value should be excluded from all indexes including those defined explicitly.
+            &quot;geoPointValue&quot;: { # An object that represents a latitude/longitude pair. This is expressed as a pair of doubles to represent degrees latitude and degrees longitude. Unless specified otherwise, this object must conform to the WGS84 standard. Values must be within normalized ranges. # A geo point value representing a point on the surface of Earth.
+              &quot;latitude&quot;: 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+              &quot;longitude&quot;: 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+            },
+            &quot;integerValue&quot;: &quot;A String&quot;, # An integer value.
+            &quot;keyValue&quot;: { # A unique identifier for an entity. If a key&#x27;s partition ID or any of its path kinds or names are reserved/read-only, the key is reserved/read-only. A reserved/read-only key is forbidden in certain documented contexts. # A key value.
+              &quot;partitionId&quot;: { # A partition ID identifies a grouping of entities. The grouping is always by project and namespace, however the namespace ID may be empty. A partition ID contains several dimensions: project ID and namespace ID. Partition dimensions: - May be `&quot;&quot;`. - Must be valid UTF-8 bytes. - Must have values that match regex `[A-Za-z\d\.\-_]{1,100}` If the value of any dimension matches regex `__.*__`, the partition is reserved/read-only. A reserved/read-only partition ID is forbidden in certain documented contexts. Foreign partition IDs (in which the project ID does not match the context project ID ) are discouraged. Reads and writes of foreign partition IDs may fail if the project is not in an active state. # Entities are partitioned into subsets, currently identified by a project ID and namespace ID. Queries are scoped to a single partition.
+                &quot;namespaceId&quot;: &quot;A String&quot;, # If not empty, the ID of the namespace to which the entities belong.
+                &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project to which the entities belong.
+              },
+              &quot;path&quot;: [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a _root entity_, the second element identifies a _child_ of the root entity, the third element identifies a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element&#x27;s _ancestors_. An entity path is always fully complete: *all* of the entity&#x27;s ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. For example, the last path element of the key of `Mutation.insert` may have no identifier. A path can never be empty, and a path can have at most 100 elements.
+                { # A (kind, ID/name) pair used to construct a key path. If either name or ID is set, the element is complete. If neither is set, the element is incomplete.
+                  &quot;id&quot;: &quot;A String&quot;, # The auto-allocated ID of the entity. Never equal to zero. Values less than zero are discouraged and may not be supported in the future.
+                  &quot;kind&quot;: &quot;A String&quot;, # The kind of the entity. A kind matching regex `__.*__` is reserved/read-only. A kind must not contain more than 1500 bytes when UTF-8 encoded. Cannot be `&quot;&quot;`.
+                  &quot;name&quot;: &quot;A String&quot;, # The name of the entity. A name matching regex `__.*__` is reserved/read-only. A name must not be more than 1500 bytes when UTF-8 encoded. Cannot be `&quot;&quot;`.
+                },
+              ],
+            },
+            &quot;meaning&quot;: 42, # The `meaning` field should only be populated for backwards compatibility.
+            &quot;nullValue&quot;: &quot;A String&quot;, # A null value.
+            &quot;stringValue&quot;: &quot;A String&quot;, # A UTF-8 encoded string value. When `exclude_from_indexes` is false (it is indexed) , may have at most 1500 bytes. Otherwise, may be set to at most 1,000,000 bytes.
+            &quot;timestampValue&quot;: &quot;A String&quot;, # A timestamp value. When stored in the Datastore, precise only to microseconds; any additional precision is rounded down.
+          },
         },
       },
       &quot;version&quot;: &quot;A String&quot;, # The version of the entity, a strictly positive number that monotonically increases with changes to the entity. This field is set for `FULL` entity results. For missing entities in `LookupResponse`, this is the version of the snapshot that was used to look up the entity, and it is always set except for eventually consistent reads.
@@ -527,7 +659,40 @@
           ],
         },
         &quot;properties&quot;: { # The entity&#x27;s properties. The map&#x27;s keys are property names. A property name matching regex `__.*__` is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. The name cannot be `&quot;&quot;`.
-          &quot;a_key&quot;: # Object with schema name: Value
+          &quot;a_key&quot;: { # A message that can hold any of the supported value types and associated metadata.
+            &quot;arrayValue&quot;: { # An array value. # An array value. Cannot contain another array value. A `Value` instance that sets field `array_value` must not set fields `meaning` or `exclude_from_indexes`.
+              &quot;values&quot;: [ # Values in the array. The order of values in an array is preserved as long as all values have identical settings for &#x27;exclude_from_indexes&#x27;.
+                # Object with schema name: Value
+              ],
+            },
+            &quot;blobValue&quot;: &quot;A String&quot;, # A blob value. May have at most 1,000,000 bytes. When `exclude_from_indexes` is false, may have at most 1500 bytes. In JSON requests, must be base64-encoded.
+            &quot;booleanValue&quot;: True or False, # A boolean value.
+            &quot;doubleValue&quot;: 3.14, # A double value.
+            &quot;entityValue&quot;: # Object with schema name: Entity # An entity value. - May have no key. - May have a key with an incomplete key path. - May have a reserved/read-only key.
+            &quot;excludeFromIndexes&quot;: True or False, # If the value should be excluded from all indexes including those defined explicitly.
+            &quot;geoPointValue&quot;: { # An object that represents a latitude/longitude pair. This is expressed as a pair of doubles to represent degrees latitude and degrees longitude. Unless specified otherwise, this object must conform to the WGS84 standard. Values must be within normalized ranges. # A geo point value representing a point on the surface of Earth.
+              &quot;latitude&quot;: 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+              &quot;longitude&quot;: 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+            },
+            &quot;integerValue&quot;: &quot;A String&quot;, # An integer value.
+            &quot;keyValue&quot;: { # A unique identifier for an entity. If a key&#x27;s partition ID or any of its path kinds or names are reserved/read-only, the key is reserved/read-only. A reserved/read-only key is forbidden in certain documented contexts. # A key value.
+              &quot;partitionId&quot;: { # A partition ID identifies a grouping of entities. The grouping is always by project and namespace, however the namespace ID may be empty. A partition ID contains several dimensions: project ID and namespace ID. Partition dimensions: - May be `&quot;&quot;`. - Must be valid UTF-8 bytes. - Must have values that match regex `[A-Za-z\d\.\-_]{1,100}` If the value of any dimension matches regex `__.*__`, the partition is reserved/read-only. A reserved/read-only partition ID is forbidden in certain documented contexts. Foreign partition IDs (in which the project ID does not match the context project ID ) are discouraged. Reads and writes of foreign partition IDs may fail if the project is not in an active state. # Entities are partitioned into subsets, currently identified by a project ID and namespace ID. Queries are scoped to a single partition.
+                &quot;namespaceId&quot;: &quot;A String&quot;, # If not empty, the ID of the namespace to which the entities belong.
+                &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project to which the entities belong.
+              },
+              &quot;path&quot;: [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a _root entity_, the second element identifies a _child_ of the root entity, the third element identifies a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element&#x27;s _ancestors_. An entity path is always fully complete: *all* of the entity&#x27;s ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. For example, the last path element of the key of `Mutation.insert` may have no identifier. A path can never be empty, and a path can have at most 100 elements.
+                { # A (kind, ID/name) pair used to construct a key path. If either name or ID is set, the element is complete. If neither is set, the element is incomplete.
+                  &quot;id&quot;: &quot;A String&quot;, # The auto-allocated ID of the entity. Never equal to zero. Values less than zero are discouraged and may not be supported in the future.
+                  &quot;kind&quot;: &quot;A String&quot;, # The kind of the entity. A kind matching regex `__.*__` is reserved/read-only. A kind must not contain more than 1500 bytes when UTF-8 encoded. Cannot be `&quot;&quot;`.
+                  &quot;name&quot;: &quot;A String&quot;, # The name of the entity. A name matching regex `__.*__` is reserved/read-only. A name must not be more than 1500 bytes when UTF-8 encoded. Cannot be `&quot;&quot;`.
+                },
+              ],
+            },
+            &quot;meaning&quot;: 42, # The `meaning` field should only be populated for backwards compatibility.
+            &quot;nullValue&quot;: &quot;A String&quot;, # A null value.
+            &quot;stringValue&quot;: &quot;A String&quot;, # A UTF-8 encoded string value. When `exclude_from_indexes` is false (it is indexed) , may have at most 1500 bytes. Otherwise, may be set to at most 1,000,000 bytes.
+            &quot;timestampValue&quot;: &quot;A String&quot;, # A timestamp value. When stored in the Datastore, precise only to microseconds; any additional precision is rounded down.
+          },
         },
       },
       &quot;version&quot;: &quot;A String&quot;, # The version of the entity, a strictly positive number that monotonically increases with changes to the entity. This field is set for `FULL` entity results. For missing entities in `LookupResponse`, this is the version of the snapshot that was used to look up the entity, and it is always set except for eventually consistent reads.
@@ -625,24 +790,7 @@
           &quot;blobValue&quot;: &quot;A String&quot;, # A blob value. May have at most 1,000,000 bytes. When `exclude_from_indexes` is false, may have at most 1500 bytes. In JSON requests, must be base64-encoded.
           &quot;booleanValue&quot;: True or False, # A boolean value.
           &quot;doubleValue&quot;: 3.14, # A double value.
-          &quot;entityValue&quot;: { # A Datastore data object. An entity is limited to 1 megabyte when stored. That _roughly_ corresponds to a limit of 1 megabyte for the serialized form of this message. # An entity value. - May have no key. - May have a key with an incomplete key path. - May have a reserved/read-only key.
-            &quot;key&quot;: { # A unique identifier for an entity. If a key&#x27;s partition ID or any of its path kinds or names are reserved/read-only, the key is reserved/read-only. A reserved/read-only key is forbidden in certain documented contexts. # The entity&#x27;s key. An entity must have a key, unless otherwise documented (for example, an entity in `Value.entity_value` may have no key). An entity&#x27;s kind is its key path&#x27;s last element&#x27;s kind, or null if it has no key.
-              &quot;partitionId&quot;: { # A partition ID identifies a grouping of entities. The grouping is always by project and namespace, however the namespace ID may be empty. A partition ID contains several dimensions: project ID and namespace ID. Partition dimensions: - May be `&quot;&quot;`. - Must be valid UTF-8 bytes. - Must have values that match regex `[A-Za-z\d\.\-_]{1,100}` If the value of any dimension matches regex `__.*__`, the partition is reserved/read-only. A reserved/read-only partition ID is forbidden in certain documented contexts. Foreign partition IDs (in which the project ID does not match the context project ID ) are discouraged. Reads and writes of foreign partition IDs may fail if the project is not in an active state. # Entities are partitioned into subsets, currently identified by a project ID and namespace ID. Queries are scoped to a single partition.
-                &quot;namespaceId&quot;: &quot;A String&quot;, # If not empty, the ID of the namespace to which the entities belong.
-                &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project to which the entities belong.
-              },
-              &quot;path&quot;: [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a _root entity_, the second element identifies a _child_ of the root entity, the third element identifies a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element&#x27;s _ancestors_. An entity path is always fully complete: *all* of the entity&#x27;s ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. For example, the last path element of the key of `Mutation.insert` may have no identifier. A path can never be empty, and a path can have at most 100 elements.
-                { # A (kind, ID/name) pair used to construct a key path. If either name or ID is set, the element is complete. If neither is set, the element is incomplete.
-                  &quot;id&quot;: &quot;A String&quot;, # The auto-allocated ID of the entity. Never equal to zero. Values less than zero are discouraged and may not be supported in the future.
-                  &quot;kind&quot;: &quot;A String&quot;, # The kind of the entity. A kind matching regex `__.*__` is reserved/read-only. A kind must not contain more than 1500 bytes when UTF-8 encoded. Cannot be `&quot;&quot;`.
-                  &quot;name&quot;: &quot;A String&quot;, # The name of the entity. A name matching regex `__.*__` is reserved/read-only. A name must not be more than 1500 bytes when UTF-8 encoded. Cannot be `&quot;&quot;`.
-                },
-              ],
-            },
-            &quot;properties&quot;: { # The entity&#x27;s properties. The map&#x27;s keys are property names. A property name matching regex `__.*__` is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. The name cannot be `&quot;&quot;`.
-              &quot;a_key&quot;: # Object with schema name: Value
-            },
-          },
+          &quot;entityValue&quot;: # Object with schema name: Entity # An entity value. - May have no key. - May have a key with an incomplete key path. - May have a reserved/read-only key.
           &quot;excludeFromIndexes&quot;: True or False, # If the value should be excluded from all indexes including those defined explicitly.
           &quot;geoPointValue&quot;: { # An object that represents a latitude/longitude pair. This is expressed as a pair of doubles to represent degrees latitude and degrees longitude. Unless specified otherwise, this object must conform to the WGS84 standard. Values must be within normalized ranges. # A geo point value representing a point on the surface of Earth.
             &quot;latitude&quot;: 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
@@ -681,24 +829,7 @@
           &quot;blobValue&quot;: &quot;A String&quot;, # A blob value. May have at most 1,000,000 bytes. When `exclude_from_indexes` is false, may have at most 1500 bytes. In JSON requests, must be base64-encoded.
           &quot;booleanValue&quot;: True or False, # A boolean value.
           &quot;doubleValue&quot;: 3.14, # A double value.
-          &quot;entityValue&quot;: { # A Datastore data object. An entity is limited to 1 megabyte when stored. That _roughly_ corresponds to a limit of 1 megabyte for the serialized form of this message. # An entity value. - May have no key. - May have a key with an incomplete key path. - May have a reserved/read-only key.
-            &quot;key&quot;: { # A unique identifier for an entity. If a key&#x27;s partition ID or any of its path kinds or names are reserved/read-only, the key is reserved/read-only. A reserved/read-only key is forbidden in certain documented contexts. # The entity&#x27;s key. An entity must have a key, unless otherwise documented (for example, an entity in `Value.entity_value` may have no key). An entity&#x27;s kind is its key path&#x27;s last element&#x27;s kind, or null if it has no key.
-              &quot;partitionId&quot;: { # A partition ID identifies a grouping of entities. The grouping is always by project and namespace, however the namespace ID may be empty. A partition ID contains several dimensions: project ID and namespace ID. Partition dimensions: - May be `&quot;&quot;`. - Must be valid UTF-8 bytes. - Must have values that match regex `[A-Za-z\d\.\-_]{1,100}` If the value of any dimension matches regex `__.*__`, the partition is reserved/read-only. A reserved/read-only partition ID is forbidden in certain documented contexts. Foreign partition IDs (in which the project ID does not match the context project ID ) are discouraged. Reads and writes of foreign partition IDs may fail if the project is not in an active state. # Entities are partitioned into subsets, currently identified by a project ID and namespace ID. Queries are scoped to a single partition.
-                &quot;namespaceId&quot;: &quot;A String&quot;, # If not empty, the ID of the namespace to which the entities belong.
-                &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project to which the entities belong.
-              },
-              &quot;path&quot;: [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a _root entity_, the second element identifies a _child_ of the root entity, the third element identifies a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element&#x27;s _ancestors_. An entity path is always fully complete: *all* of the entity&#x27;s ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. For example, the last path element of the key of `Mutation.insert` may have no identifier. A path can never be empty, and a path can have at most 100 elements.
-                { # A (kind, ID/name) pair used to construct a key path. If either name or ID is set, the element is complete. If neither is set, the element is incomplete.
-                  &quot;id&quot;: &quot;A String&quot;, # The auto-allocated ID of the entity. Never equal to zero. Values less than zero are discouraged and may not be supported in the future.
-                  &quot;kind&quot;: &quot;A String&quot;, # The kind of the entity. A kind matching regex `__.*__` is reserved/read-only. A kind must not contain more than 1500 bytes when UTF-8 encoded. Cannot be `&quot;&quot;`.
-                  &quot;name&quot;: &quot;A String&quot;, # The name of the entity. A name matching regex `__.*__` is reserved/read-only. A name must not be more than 1500 bytes when UTF-8 encoded. Cannot be `&quot;&quot;`.
-                },
-              ],
-            },
-            &quot;properties&quot;: { # The entity&#x27;s properties. The map&#x27;s keys are property names. A property name matching regex `__.*__` is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. The name cannot be `&quot;&quot;`.
-              &quot;a_key&quot;: # Object with schema name: Value
-            },
-          },
+          &quot;entityValue&quot;: # Object with schema name: Entity # An entity value. - May have no key. - May have a key with an incomplete key path. - May have a reserved/read-only key.
           &quot;excludeFromIndexes&quot;: True or False, # If the value should be excluded from all indexes including those defined explicitly.
           &quot;geoPointValue&quot;: { # An object that represents a latitude/longitude pair. This is expressed as a pair of doubles to represent degrees latitude and degrees longitude. Unless specified otherwise, this object must conform to the WGS84 standard. Values must be within normalized ranges. # A geo point value representing a point on the surface of Earth.
             &quot;latitude&quot;: 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
@@ -759,24 +890,7 @@
           &quot;blobValue&quot;: &quot;A String&quot;, # A blob value. May have at most 1,000,000 bytes. When `exclude_from_indexes` is false, may have at most 1500 bytes. In JSON requests, must be base64-encoded.
           &quot;booleanValue&quot;: True or False, # A boolean value.
           &quot;doubleValue&quot;: 3.14, # A double value.
-          &quot;entityValue&quot;: { # A Datastore data object. An entity is limited to 1 megabyte when stored. That _roughly_ corresponds to a limit of 1 megabyte for the serialized form of this message. # An entity value. - May have no key. - May have a key with an incomplete key path. - May have a reserved/read-only key.
-            &quot;key&quot;: { # A unique identifier for an entity. If a key&#x27;s partition ID or any of its path kinds or names are reserved/read-only, the key is reserved/read-only. A reserved/read-only key is forbidden in certain documented contexts. # The entity&#x27;s key. An entity must have a key, unless otherwise documented (for example, an entity in `Value.entity_value` may have no key). An entity&#x27;s kind is its key path&#x27;s last element&#x27;s kind, or null if it has no key.
-              &quot;partitionId&quot;: { # A partition ID identifies a grouping of entities. The grouping is always by project and namespace, however the namespace ID may be empty. A partition ID contains several dimensions: project ID and namespace ID. Partition dimensions: - May be `&quot;&quot;`. - Must be valid UTF-8 bytes. - Must have values that match regex `[A-Za-z\d\.\-_]{1,100}` If the value of any dimension matches regex `__.*__`, the partition is reserved/read-only. A reserved/read-only partition ID is forbidden in certain documented contexts. Foreign partition IDs (in which the project ID does not match the context project ID ) are discouraged. Reads and writes of foreign partition IDs may fail if the project is not in an active state. # Entities are partitioned into subsets, currently identified by a project ID and namespace ID. Queries are scoped to a single partition.
-                &quot;namespaceId&quot;: &quot;A String&quot;, # If not empty, the ID of the namespace to which the entities belong.
-                &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project to which the entities belong.
-              },
-              &quot;path&quot;: [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a _root entity_, the second element identifies a _child_ of the root entity, the third element identifies a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element&#x27;s _ancestors_. An entity path is always fully complete: *all* of the entity&#x27;s ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. For example, the last path element of the key of `Mutation.insert` may have no identifier. A path can never be empty, and a path can have at most 100 elements.
-                { # A (kind, ID/name) pair used to construct a key path. If either name or ID is set, the element is complete. If neither is set, the element is incomplete.
-                  &quot;id&quot;: &quot;A String&quot;, # The auto-allocated ID of the entity. Never equal to zero. Values less than zero are discouraged and may not be supported in the future.
-                  &quot;kind&quot;: &quot;A String&quot;, # The kind of the entity. A kind matching regex `__.*__` is reserved/read-only. A kind must not contain more than 1500 bytes when UTF-8 encoded. Cannot be `&quot;&quot;`.
-                  &quot;name&quot;: &quot;A String&quot;, # The name of the entity. A name matching regex `__.*__` is reserved/read-only. A name must not be more than 1500 bytes when UTF-8 encoded. Cannot be `&quot;&quot;`.
-                },
-              ],
-            },
-            &quot;properties&quot;: { # The entity&#x27;s properties. The map&#x27;s keys are property names. A property name matching regex `__.*__` is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. The name cannot be `&quot;&quot;`.
-              &quot;a_key&quot;: # Object with schema name: Value
-            },
-          },
+          &quot;entityValue&quot;: # Object with schema name: Entity # An entity value. - May have no key. - May have a key with an incomplete key path. - May have a reserved/read-only key.
           &quot;excludeFromIndexes&quot;: True or False, # If the value should be excluded from all indexes including those defined explicitly.
           &quot;geoPointValue&quot;: { # An object that represents a latitude/longitude pair. This is expressed as a pair of doubles to represent degrees latitude and degrees longitude. Unless specified otherwise, this object must conform to the WGS84 standard. Values must be within normalized ranges. # A geo point value representing a point on the surface of Earth.
             &quot;latitude&quot;: 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
@@ -863,7 +977,40 @@
             ],
           },
           &quot;properties&quot;: { # The entity&#x27;s properties. The map&#x27;s keys are property names. A property name matching regex `__.*__` is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. The name cannot be `&quot;&quot;`.
-            &quot;a_key&quot;: # Object with schema name: Value
+            &quot;a_key&quot;: { # A message that can hold any of the supported value types and associated metadata.
+              &quot;arrayValue&quot;: { # An array value. # An array value. Cannot contain another array value. A `Value` instance that sets field `array_value` must not set fields `meaning` or `exclude_from_indexes`.
+                &quot;values&quot;: [ # Values in the array. The order of values in an array is preserved as long as all values have identical settings for &#x27;exclude_from_indexes&#x27;.
+                  # Object with schema name: Value
+                ],
+              },
+              &quot;blobValue&quot;: &quot;A String&quot;, # A blob value. May have at most 1,000,000 bytes. When `exclude_from_indexes` is false, may have at most 1500 bytes. In JSON requests, must be base64-encoded.
+              &quot;booleanValue&quot;: True or False, # A boolean value.
+              &quot;doubleValue&quot;: 3.14, # A double value.
+              &quot;entityValue&quot;: # Object with schema name: Entity # An entity value. - May have no key. - May have a key with an incomplete key path. - May have a reserved/read-only key.
+              &quot;excludeFromIndexes&quot;: True or False, # If the value should be excluded from all indexes including those defined explicitly.
+              &quot;geoPointValue&quot;: { # An object that represents a latitude/longitude pair. This is expressed as a pair of doubles to represent degrees latitude and degrees longitude. Unless specified otherwise, this object must conform to the WGS84 standard. Values must be within normalized ranges. # A geo point value representing a point on the surface of Earth.
+                &quot;latitude&quot;: 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+                &quot;longitude&quot;: 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+              },
+              &quot;integerValue&quot;: &quot;A String&quot;, # An integer value.
+              &quot;keyValue&quot;: { # A unique identifier for an entity. If a key&#x27;s partition ID or any of its path kinds or names are reserved/read-only, the key is reserved/read-only. A reserved/read-only key is forbidden in certain documented contexts. # A key value.
+                &quot;partitionId&quot;: { # A partition ID identifies a grouping of entities. The grouping is always by project and namespace, however the namespace ID may be empty. A partition ID contains several dimensions: project ID and namespace ID. Partition dimensions: - May be `&quot;&quot;`. - Must be valid UTF-8 bytes. - Must have values that match regex `[A-Za-z\d\.\-_]{1,100}` If the value of any dimension matches regex `__.*__`, the partition is reserved/read-only. A reserved/read-only partition ID is forbidden in certain documented contexts. Foreign partition IDs (in which the project ID does not match the context project ID ) are discouraged. Reads and writes of foreign partition IDs may fail if the project is not in an active state. # Entities are partitioned into subsets, currently identified by a project ID and namespace ID. Queries are scoped to a single partition.
+                  &quot;namespaceId&quot;: &quot;A String&quot;, # If not empty, the ID of the namespace to which the entities belong.
+                  &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project to which the entities belong.
+                },
+                &quot;path&quot;: [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a _root entity_, the second element identifies a _child_ of the root entity, the third element identifies a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element&#x27;s _ancestors_. An entity path is always fully complete: *all* of the entity&#x27;s ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. For example, the last path element of the key of `Mutation.insert` may have no identifier. A path can never be empty, and a path can have at most 100 elements.
+                  { # A (kind, ID/name) pair used to construct a key path. If either name or ID is set, the element is complete. If neither is set, the element is incomplete.
+                    &quot;id&quot;: &quot;A String&quot;, # The auto-allocated ID of the entity. Never equal to zero. Values less than zero are discouraged and may not be supported in the future.
+                    &quot;kind&quot;: &quot;A String&quot;, # The kind of the entity. A kind matching regex `__.*__` is reserved/read-only. A kind must not contain more than 1500 bytes when UTF-8 encoded. Cannot be `&quot;&quot;`.
+                    &quot;name&quot;: &quot;A String&quot;, # The name of the entity. A name matching regex `__.*__` is reserved/read-only. A name must not be more than 1500 bytes when UTF-8 encoded. Cannot be `&quot;&quot;`.
+                  },
+                ],
+              },
+              &quot;meaning&quot;: 42, # The `meaning` field should only be populated for backwards compatibility.
+              &quot;nullValue&quot;: &quot;A String&quot;, # A null value.
+              &quot;stringValue&quot;: &quot;A String&quot;, # A UTF-8 encoded string value. When `exclude_from_indexes` is false (it is indexed) , may have at most 1500 bytes. Otherwise, may be set to at most 1,000,000 bytes.
+              &quot;timestampValue&quot;: &quot;A String&quot;, # A timestamp value. When stored in the Datastore, precise only to microseconds; any additional precision is rounded down.
+            },
           },
         },
         &quot;version&quot;: &quot;A String&quot;, # The version of the entity, a strictly positive number that monotonically increases with changes to the entity. This field is set for `FULL` entity results. For missing entities in `LookupResponse`, this is the version of the snapshot that was used to look up the entity, and it is always set except for eventually consistent reads.
@@ -902,24 +1049,7 @@
           &quot;blobValue&quot;: &quot;A String&quot;, # A blob value. May have at most 1,000,000 bytes. When `exclude_from_indexes` is false, may have at most 1500 bytes. In JSON requests, must be base64-encoded.
           &quot;booleanValue&quot;: True or False, # A boolean value.
           &quot;doubleValue&quot;: 3.14, # A double value.
-          &quot;entityValue&quot;: { # A Datastore data object. An entity is limited to 1 megabyte when stored. That _roughly_ corresponds to a limit of 1 megabyte for the serialized form of this message. # An entity value. - May have no key. - May have a key with an incomplete key path. - May have a reserved/read-only key.
-            &quot;key&quot;: { # A unique identifier for an entity. If a key&#x27;s partition ID or any of its path kinds or names are reserved/read-only, the key is reserved/read-only. A reserved/read-only key is forbidden in certain documented contexts. # The entity&#x27;s key. An entity must have a key, unless otherwise documented (for example, an entity in `Value.entity_value` may have no key). An entity&#x27;s kind is its key path&#x27;s last element&#x27;s kind, or null if it has no key.
-              &quot;partitionId&quot;: { # A partition ID identifies a grouping of entities. The grouping is always by project and namespace, however the namespace ID may be empty. A partition ID contains several dimensions: project ID and namespace ID. Partition dimensions: - May be `&quot;&quot;`. - Must be valid UTF-8 bytes. - Must have values that match regex `[A-Za-z\d\.\-_]{1,100}` If the value of any dimension matches regex `__.*__`, the partition is reserved/read-only. A reserved/read-only partition ID is forbidden in certain documented contexts. Foreign partition IDs (in which the project ID does not match the context project ID ) are discouraged. Reads and writes of foreign partition IDs may fail if the project is not in an active state. # Entities are partitioned into subsets, currently identified by a project ID and namespace ID. Queries are scoped to a single partition.
-                &quot;namespaceId&quot;: &quot;A String&quot;, # If not empty, the ID of the namespace to which the entities belong.
-                &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project to which the entities belong.
-              },
-              &quot;path&quot;: [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a _root entity_, the second element identifies a _child_ of the root entity, the third element identifies a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element&#x27;s _ancestors_. An entity path is always fully complete: *all* of the entity&#x27;s ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. For example, the last path element of the key of `Mutation.insert` may have no identifier. A path can never be empty, and a path can have at most 100 elements.
-                { # A (kind, ID/name) pair used to construct a key path. If either name or ID is set, the element is complete. If neither is set, the element is incomplete.
-                  &quot;id&quot;: &quot;A String&quot;, # The auto-allocated ID of the entity. Never equal to zero. Values less than zero are discouraged and may not be supported in the future.
-                  &quot;kind&quot;: &quot;A String&quot;, # The kind of the entity. A kind matching regex `__.*__` is reserved/read-only. A kind must not contain more than 1500 bytes when UTF-8 encoded. Cannot be `&quot;&quot;`.
-                  &quot;name&quot;: &quot;A String&quot;, # The name of the entity. A name matching regex `__.*__` is reserved/read-only. A name must not be more than 1500 bytes when UTF-8 encoded. Cannot be `&quot;&quot;`.
-                },
-              ],
-            },
-            &quot;properties&quot;: { # The entity&#x27;s properties. The map&#x27;s keys are property names. A property name matching regex `__.*__` is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. The name cannot be `&quot;&quot;`.
-              &quot;a_key&quot;: # Object with schema name: Value
-            },
-          },
+          &quot;entityValue&quot;: # Object with schema name: Entity # An entity value. - May have no key. - May have a key with an incomplete key path. - May have a reserved/read-only key.
           &quot;excludeFromIndexes&quot;: True or False, # If the value should be excluded from all indexes including those defined explicitly.
           &quot;geoPointValue&quot;: { # An object that represents a latitude/longitude pair. This is expressed as a pair of doubles to represent degrees latitude and degrees longitude. Unless specified otherwise, this object must conform to the WGS84 standard. Values must be within normalized ranges. # A geo point value representing a point on the surface of Earth.
             &quot;latitude&quot;: 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
diff --git a/docs/dyn/dialogflow_v3.projects.locations.agents.environments.sessions.html b/docs/dyn/dialogflow_v3.projects.locations.agents.environments.sessions.html
index 8f47a90..b33ee7c 100644
--- a/docs/dyn/dialogflow_v3.projects.locations.agents.environments.sessions.html
+++ b/docs/dyn/dialogflow_v3.projects.locations.agents.environments.sessions.html
@@ -164,7 +164,7 @@
     &quot;parameters&quot;: { # Additional parameters to be put into session parameters. To remove a parameter from the session, clients should explicitly set the parameter value to null. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: - MapKey type: string - MapKey value: parameter name - MapValue type: - If parameter&#x27;s entity type is a composite entity: map - Else: depending on parameter value type, could be one of string, number, boolean, null, list or map - MapValue value: - If parameter&#x27;s entity type is a composite entity: map from composite entity property names to property values - Else: parameter value
       &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
     },
-    &quot;payload&quot;: { # This field can be used to pass custom data into the webhook associated with the agent. Arbitrary JSON objects are supported. Some integrations that query a Dialogflow agent may provide additional information in the payload. In particular, for the Dialogflow Phone Gateway integration, this field has the form: { &quot;telephony&quot;: { &quot;caller_id&quot;: &quot;+18558363987&quot; } }
+    &quot;payload&quot;: { # This field can be used to pass custom data into the webhook associated with the agent. Arbitrary JSON objects are supported. Some integrations that query a Dialogflow agent may provide additional information in the payload. In particular, for the Dialogflow Phone Gateway integration, this field has the form: ``` { &quot;telephony&quot;: { &quot;caller_id&quot;: &quot;+18558363987&quot; } } ```
       &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
     },
     &quot;sessionEntityTypes&quot;: [ # Additional session entity types to replace or extend developer entity types with. The entity synonyms apply to all languages and persist for the session of this query.
@@ -1041,7 +1041,7 @@
       &quot;parameters&quot;: { # Additional parameters to be put into session parameters. To remove a parameter from the session, clients should explicitly set the parameter value to null. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: - MapKey type: string - MapKey value: parameter name - MapValue type: - If parameter&#x27;s entity type is a composite entity: map - Else: depending on parameter value type, could be one of string, number, boolean, null, list or map - MapValue value: - If parameter&#x27;s entity type is a composite entity: map from composite entity property names to property values - Else: parameter value
         &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
       },
-      &quot;payload&quot;: { # This field can be used to pass custom data into the webhook associated with the agent. Arbitrary JSON objects are supported. Some integrations that query a Dialogflow agent may provide additional information in the payload. In particular, for the Dialogflow Phone Gateway integration, this field has the form: { &quot;telephony&quot;: { &quot;caller_id&quot;: &quot;+18558363987&quot; } }
+      &quot;payload&quot;: { # This field can be used to pass custom data into the webhook associated with the agent. Arbitrary JSON objects are supported. Some integrations that query a Dialogflow agent may provide additional information in the payload. In particular, for the Dialogflow Phone Gateway integration, this field has the form: ``` { &quot;telephony&quot;: { &quot;caller_id&quot;: &quot;+18558363987&quot; } } ```
         &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
       },
       &quot;sessionEntityTypes&quot;: [ # Additional session entity types to replace or extend developer entity types with. The entity synonyms apply to all languages and persist for the session of this query.
@@ -1895,7 +1895,7 @@
     &quot;parameters&quot;: { # Additional parameters to be put into session parameters. To remove a parameter from the session, clients should explicitly set the parameter value to null. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: - MapKey type: string - MapKey value: parameter name - MapValue type: - If parameter&#x27;s entity type is a composite entity: map - Else: depending on parameter value type, could be one of string, number, boolean, null, list or map - MapValue value: - If parameter&#x27;s entity type is a composite entity: map from composite entity property names to property values - Else: parameter value
       &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
     },
-    &quot;payload&quot;: { # This field can be used to pass custom data into the webhook associated with the agent. Arbitrary JSON objects are supported. Some integrations that query a Dialogflow agent may provide additional information in the payload. In particular, for the Dialogflow Phone Gateway integration, this field has the form: { &quot;telephony&quot;: { &quot;caller_id&quot;: &quot;+18558363987&quot; } }
+    &quot;payload&quot;: { # This field can be used to pass custom data into the webhook associated with the agent. Arbitrary JSON objects are supported. Some integrations that query a Dialogflow agent may provide additional information in the payload. In particular, for the Dialogflow Phone Gateway integration, this field has the form: ``` { &quot;telephony&quot;: { &quot;caller_id&quot;: &quot;+18558363987&quot; } } ```
       &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
     },
     &quot;sessionEntityTypes&quot;: [ # Additional session entity types to replace or extend developer entity types with. The entity synonyms apply to all languages and persist for the session of this query.
diff --git a/docs/dyn/dialogflow_v3.projects.locations.agents.sessions.html b/docs/dyn/dialogflow_v3.projects.locations.agents.sessions.html
index a536cf2..82d4421 100644
--- a/docs/dyn/dialogflow_v3.projects.locations.agents.sessions.html
+++ b/docs/dyn/dialogflow_v3.projects.locations.agents.sessions.html
@@ -164,7 +164,7 @@
     &quot;parameters&quot;: { # Additional parameters to be put into session parameters. To remove a parameter from the session, clients should explicitly set the parameter value to null. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: - MapKey type: string - MapKey value: parameter name - MapValue type: - If parameter&#x27;s entity type is a composite entity: map - Else: depending on parameter value type, could be one of string, number, boolean, null, list or map - MapValue value: - If parameter&#x27;s entity type is a composite entity: map from composite entity property names to property values - Else: parameter value
       &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
     },
-    &quot;payload&quot;: { # This field can be used to pass custom data into the webhook associated with the agent. Arbitrary JSON objects are supported. Some integrations that query a Dialogflow agent may provide additional information in the payload. In particular, for the Dialogflow Phone Gateway integration, this field has the form: { &quot;telephony&quot;: { &quot;caller_id&quot;: &quot;+18558363987&quot; } }
+    &quot;payload&quot;: { # This field can be used to pass custom data into the webhook associated with the agent. Arbitrary JSON objects are supported. Some integrations that query a Dialogflow agent may provide additional information in the payload. In particular, for the Dialogflow Phone Gateway integration, this field has the form: ``` { &quot;telephony&quot;: { &quot;caller_id&quot;: &quot;+18558363987&quot; } } ```
       &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
     },
     &quot;sessionEntityTypes&quot;: [ # Additional session entity types to replace or extend developer entity types with. The entity synonyms apply to all languages and persist for the session of this query.
@@ -1041,7 +1041,7 @@
       &quot;parameters&quot;: { # Additional parameters to be put into session parameters. To remove a parameter from the session, clients should explicitly set the parameter value to null. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: - MapKey type: string - MapKey value: parameter name - MapValue type: - If parameter&#x27;s entity type is a composite entity: map - Else: depending on parameter value type, could be one of string, number, boolean, null, list or map - MapValue value: - If parameter&#x27;s entity type is a composite entity: map from composite entity property names to property values - Else: parameter value
         &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
       },
-      &quot;payload&quot;: { # This field can be used to pass custom data into the webhook associated with the agent. Arbitrary JSON objects are supported. Some integrations that query a Dialogflow agent may provide additional information in the payload. In particular, for the Dialogflow Phone Gateway integration, this field has the form: { &quot;telephony&quot;: { &quot;caller_id&quot;: &quot;+18558363987&quot; } }
+      &quot;payload&quot;: { # This field can be used to pass custom data into the webhook associated with the agent. Arbitrary JSON objects are supported. Some integrations that query a Dialogflow agent may provide additional information in the payload. In particular, for the Dialogflow Phone Gateway integration, this field has the form: ``` { &quot;telephony&quot;: { &quot;caller_id&quot;: &quot;+18558363987&quot; } } ```
         &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
       },
       &quot;sessionEntityTypes&quot;: [ # Additional session entity types to replace or extend developer entity types with. The entity synonyms apply to all languages and persist for the session of this query.
@@ -1895,7 +1895,7 @@
     &quot;parameters&quot;: { # Additional parameters to be put into session parameters. To remove a parameter from the session, clients should explicitly set the parameter value to null. Depending on your protocol or client library language, this is a map, associative array, symbol table, dictionary, or JSON object composed of a collection of (MapKey, MapValue) pairs: - MapKey type: string - MapKey value: parameter name - MapValue type: - If parameter&#x27;s entity type is a composite entity: map - Else: depending on parameter value type, could be one of string, number, boolean, null, list or map - MapValue value: - If parameter&#x27;s entity type is a composite entity: map from composite entity property names to property values - Else: parameter value
       &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
     },
-    &quot;payload&quot;: { # This field can be used to pass custom data into the webhook associated with the agent. Arbitrary JSON objects are supported. Some integrations that query a Dialogflow agent may provide additional information in the payload. In particular, for the Dialogflow Phone Gateway integration, this field has the form: { &quot;telephony&quot;: { &quot;caller_id&quot;: &quot;+18558363987&quot; } }
+    &quot;payload&quot;: { # This field can be used to pass custom data into the webhook associated with the agent. Arbitrary JSON objects are supported. Some integrations that query a Dialogflow agent may provide additional information in the payload. In particular, for the Dialogflow Phone Gateway integration, this field has the form: ``` { &quot;telephony&quot;: { &quot;caller_id&quot;: &quot;+18558363987&quot; } } ```
       &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
     },
     &quot;sessionEntityTypes&quot;: [ # Additional session entity types to replace or extend developer entity types with. The entity synonyms apply to all languages and persist for the session of this query.
diff --git a/docs/dyn/dlp_v2.organizations.deidentifyTemplates.html b/docs/dyn/dlp_v2.organizations.deidentifyTemplates.html
index e1ea0b0..94bc0e0 100644
--- a/docs/dyn/dlp_v2.organizations.deidentifyTemplates.html
+++ b/docs/dyn/dlp_v2.organizations.deidentifyTemplates.html
@@ -383,7 +383,7 @@
                 &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
               },
             },
-            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
               { # General identifier of a data field in a storage service.
                 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
               },
@@ -1178,7 +1178,7 @@
               &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
             },
           },
-          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
             { # General identifier of a data field in a storage service.
               &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
             },
@@ -1995,7 +1995,7 @@
               &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
             },
           },
-          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
             { # General identifier of a data field in a storage service.
               &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
             },
@@ -2800,7 +2800,7 @@
                   &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
                 },
               },
-              &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+              &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
                 { # General identifier of a data field in a storage service.
                   &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
                 },
@@ -3612,7 +3612,7 @@
                 &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
               },
             },
-            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
               { # General identifier of a data field in a storage service.
                 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
               },
@@ -4406,7 +4406,7 @@
               &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
             },
           },
-          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
             { # General identifier of a data field in a storage service.
               &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
             },
diff --git a/docs/dyn/dlp_v2.organizations.locations.deidentifyTemplates.html b/docs/dyn/dlp_v2.organizations.locations.deidentifyTemplates.html
index b56c99e..421af29 100644
--- a/docs/dyn/dlp_v2.organizations.locations.deidentifyTemplates.html
+++ b/docs/dyn/dlp_v2.organizations.locations.deidentifyTemplates.html
@@ -383,7 +383,7 @@
                 &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
               },
             },
-            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
               { # General identifier of a data field in a storage service.
                 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
               },
@@ -1178,7 +1178,7 @@
               &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
             },
           },
-          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
             { # General identifier of a data field in a storage service.
               &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
             },
@@ -1995,7 +1995,7 @@
               &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
             },
           },
-          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
             { # General identifier of a data field in a storage service.
               &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
             },
@@ -2800,7 +2800,7 @@
                   &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
                 },
               },
-              &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+              &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
                 { # General identifier of a data field in a storage service.
                   &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
                 },
@@ -3612,7 +3612,7 @@
                 &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
               },
             },
-            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
               { # General identifier of a data field in a storage service.
                 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
               },
@@ -4406,7 +4406,7 @@
               &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
             },
           },
-          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
             { # General identifier of a data field in a storage service.
               &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
             },
diff --git a/docs/dyn/dlp_v2.projects.content.html b/docs/dyn/dlp_v2.projects.content.html
index 3eff83c..c43ec43 100644
--- a/docs/dyn/dlp_v2.projects.content.html
+++ b/docs/dyn/dlp_v2.projects.content.html
@@ -372,7 +372,7 @@
               &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
             },
           },
-          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
             { # General identifier of a data field in a storage service.
               &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
             },
@@ -1143,7 +1143,7 @@
                 &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
               },
             },
-            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
               { # General identifier of a data field in a storage service.
                 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
               },
@@ -2648,7 +2648,7 @@
               &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
             },
           },
-          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
             { # General identifier of a data field in a storage service.
               &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
             },
@@ -3247,7 +3247,7 @@
                 &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
               },
             },
-            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
               { # General identifier of a data field in a storage service.
                 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
               },
diff --git a/docs/dyn/dlp_v2.projects.deidentifyTemplates.html b/docs/dyn/dlp_v2.projects.deidentifyTemplates.html
index 8d4a938..dbd7294 100644
--- a/docs/dyn/dlp_v2.projects.deidentifyTemplates.html
+++ b/docs/dyn/dlp_v2.projects.deidentifyTemplates.html
@@ -383,7 +383,7 @@
                 &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
               },
             },
-            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
               { # General identifier of a data field in a storage service.
                 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
               },
@@ -1178,7 +1178,7 @@
               &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
             },
           },
-          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
             { # General identifier of a data field in a storage service.
               &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
             },
@@ -1995,7 +1995,7 @@
               &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
             },
           },
-          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
             { # General identifier of a data field in a storage service.
               &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
             },
@@ -2800,7 +2800,7 @@
                   &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
                 },
               },
-              &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+              &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
                 { # General identifier of a data field in a storage service.
                   &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
                 },
@@ -3612,7 +3612,7 @@
                 &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
               },
             },
-            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
               { # General identifier of a data field in a storage service.
                 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
               },
@@ -4406,7 +4406,7 @@
               &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
             },
           },
-          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
             { # General identifier of a data field in a storage service.
               &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
             },
diff --git a/docs/dyn/dlp_v2.projects.locations.content.html b/docs/dyn/dlp_v2.projects.locations.content.html
index 5e4b96f..bc47f7b 100644
--- a/docs/dyn/dlp_v2.projects.locations.content.html
+++ b/docs/dyn/dlp_v2.projects.locations.content.html
@@ -372,7 +372,7 @@
               &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
             },
           },
-          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
             { # General identifier of a data field in a storage service.
               &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
             },
@@ -1143,7 +1143,7 @@
                 &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
               },
             },
-            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
               { # General identifier of a data field in a storage service.
                 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
               },
@@ -2648,7 +2648,7 @@
               &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
             },
           },
-          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
             { # General identifier of a data field in a storage service.
               &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
             },
@@ -3247,7 +3247,7 @@
                 &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
               },
             },
-            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
               { # General identifier of a data field in a storage service.
                 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
               },
diff --git a/docs/dyn/dlp_v2.projects.locations.deidentifyTemplates.html b/docs/dyn/dlp_v2.projects.locations.deidentifyTemplates.html
index 2667dc1..20937c9 100644
--- a/docs/dyn/dlp_v2.projects.locations.deidentifyTemplates.html
+++ b/docs/dyn/dlp_v2.projects.locations.deidentifyTemplates.html
@@ -383,7 +383,7 @@
                 &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
               },
             },
-            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
               { # General identifier of a data field in a storage service.
                 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
               },
@@ -1178,7 +1178,7 @@
               &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
             },
           },
-          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
             { # General identifier of a data field in a storage service.
               &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
             },
@@ -1995,7 +1995,7 @@
               &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
             },
           },
-          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
             { # General identifier of a data field in a storage service.
               &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
             },
@@ -2800,7 +2800,7 @@
                   &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
                 },
               },
-              &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+              &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
                 { # General identifier of a data field in a storage service.
                   &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
                 },
@@ -3612,7 +3612,7 @@
                 &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
               },
             },
-            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+            &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
               { # General identifier of a data field in a storage service.
                 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
               },
@@ -4406,7 +4406,7 @@
               &quot;logicalOperator&quot;: &quot;A String&quot;, # The operator to apply to the result of conditions. Default and currently only supported value is `AND`.
             },
           },
-          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to.
+          &quot;fields&quot;: [ # Required. Input field(s) to apply the transformation to. When you have columns that reference their position within a list, omit the index from the FieldId. FieldId name matching ignores the index. For example, instead of &quot;contact.nums[0].type&quot;, use &quot;contact.nums.type&quot;.
             { # General identifier of a data field in a storage service.
               &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
             },
diff --git a/docs/dyn/documentai_v1.projects.locations.processors.html b/docs/dyn/documentai_v1.projects.locations.processors.html
index ebe79f8..ada58e4 100644
--- a/docs/dyn/documentai_v1.projects.locations.processors.html
+++ b/docs/dyn/documentai_v1.projects.locations.processors.html
@@ -239,6 +239,7 @@
                   },
                 ],
               },
+              &quot;confidence&quot;: 3.14, # Optional. Confidence of detected page element, if applicable. Range [0, 1].
               &quot;layoutId&quot;: &quot;A String&quot;, # Optional. Deprecated. Use PageRef.bounding_poly instead.
               &quot;layoutType&quot;: &quot;A String&quot;, # Optional. The type of the layout element that is being referenced if any.
               &quot;page&quot;: &quot;A String&quot;, # Required. Index into the Document.pages element, for example using Document.pages to locate the related page element.
@@ -941,6 +942,7 @@
                   },
                 ],
               },
+              &quot;confidence&quot;: 3.14, # Optional. Confidence of detected page element, if applicable. Range [0, 1].
               &quot;layoutId&quot;: &quot;A String&quot;, # Optional. Deprecated. Use PageRef.bounding_poly instead.
               &quot;layoutType&quot;: &quot;A String&quot;, # Optional. The type of the layout element that is being referenced if any.
               &quot;page&quot;: &quot;A String&quot;, # Required. Index into the Document.pages element, for example using Document.pages to locate the related page element.
diff --git a/docs/dyn/documentai_v1.projects.locations.processors.humanReviewConfig.html b/docs/dyn/documentai_v1.projects.locations.processors.humanReviewConfig.html
index 8c35219..2933639 100644
--- a/docs/dyn/documentai_v1.projects.locations.processors.humanReviewConfig.html
+++ b/docs/dyn/documentai_v1.projects.locations.processors.humanReviewConfig.html
@@ -166,6 +166,7 @@
                   },
                 ],
               },
+              &quot;confidence&quot;: 3.14, # Optional. Confidence of detected page element, if applicable. Range [0, 1].
               &quot;layoutId&quot;: &quot;A String&quot;, # Optional. Deprecated. Use PageRef.bounding_poly instead.
               &quot;layoutType&quot;: &quot;A String&quot;, # Optional. The type of the layout element that is being referenced if any.
               &quot;page&quot;: &quot;A String&quot;, # Required. Index into the Document.pages element, for example using Document.pages to locate the related page element.
diff --git a/docs/dyn/documentai_v1.projects.locations.processors.processorVersions.html b/docs/dyn/documentai_v1.projects.locations.processors.processorVersions.html
index dc869cc..92a0402 100644
--- a/docs/dyn/documentai_v1.projects.locations.processors.processorVersions.html
+++ b/docs/dyn/documentai_v1.projects.locations.processors.processorVersions.html
@@ -229,6 +229,7 @@
                   },
                 ],
               },
+              &quot;confidence&quot;: 3.14, # Optional. Confidence of detected page element, if applicable. Range [0, 1].
               &quot;layoutId&quot;: &quot;A String&quot;, # Optional. Deprecated. Use PageRef.bounding_poly instead.
               &quot;layoutType&quot;: &quot;A String&quot;, # Optional. The type of the layout element that is being referenced if any.
               &quot;page&quot;: &quot;A String&quot;, # Required. Index into the Document.pages element, for example using Document.pages to locate the related page element.
@@ -931,6 +932,7 @@
                   },
                 ],
               },
+              &quot;confidence&quot;: 3.14, # Optional. Confidence of detected page element, if applicable. Range [0, 1].
               &quot;layoutId&quot;: &quot;A String&quot;, # Optional. Deprecated. Use PageRef.bounding_poly instead.
               &quot;layoutType&quot;: &quot;A String&quot;, # Optional. The type of the layout element that is being referenced if any.
               &quot;page&quot;: &quot;A String&quot;, # Required. Index into the Document.pages element, for example using Document.pages to locate the related page element.
diff --git a/docs/dyn/documentai_v1beta2.projects.documents.html b/docs/dyn/documentai_v1beta2.projects.documents.html
index b621158..5d0c183 100644
--- a/docs/dyn/documentai_v1beta2.projects.documents.html
+++ b/docs/dyn/documentai_v1beta2.projects.documents.html
@@ -354,6 +354,7 @@
                 },
               ],
             },
+            &quot;confidence&quot;: 3.14, # Optional. Confidence of detected page element, if applicable. Range [0, 1].
             &quot;layoutId&quot;: &quot;A String&quot;, # Optional. Deprecated. Use PageRef.bounding_poly instead.
             &quot;layoutType&quot;: &quot;A String&quot;, # Optional. The type of the layout element that is being referenced if any.
             &quot;page&quot;: &quot;A String&quot;, # Required. Index into the Document.pages element, for example using Document.pages to locate the related page element.
diff --git a/docs/dyn/documentai_v1beta2.projects.locations.documents.html b/docs/dyn/documentai_v1beta2.projects.locations.documents.html
index 36685a1..115c276 100644
--- a/docs/dyn/documentai_v1beta2.projects.locations.documents.html
+++ b/docs/dyn/documentai_v1beta2.projects.locations.documents.html
@@ -354,6 +354,7 @@
                 },
               ],
             },
+            &quot;confidence&quot;: 3.14, # Optional. Confidence of detected page element, if applicable. Range [0, 1].
             &quot;layoutId&quot;: &quot;A String&quot;, # Optional. Deprecated. Use PageRef.bounding_poly instead.
             &quot;layoutType&quot;: &quot;A String&quot;, # Optional. The type of the layout element that is being referenced if any.
             &quot;page&quot;: &quot;A String&quot;, # Required. Index into the Document.pages element, for example using Document.pages to locate the related page element.
diff --git a/docs/dyn/documentai_v1beta3.projects.locations.processors.html b/docs/dyn/documentai_v1beta3.projects.locations.processors.html
index 703a0bb..78f680d 100644
--- a/docs/dyn/documentai_v1beta3.projects.locations.processors.html
+++ b/docs/dyn/documentai_v1beta3.projects.locations.processors.html
@@ -470,6 +470,7 @@
                   },
                 ],
               },
+              &quot;confidence&quot;: 3.14, # Optional. Confidence of detected page element, if applicable. Range [0, 1].
               &quot;layoutId&quot;: &quot;A String&quot;, # Optional. Deprecated. Use PageRef.bounding_poly instead.
               &quot;layoutType&quot;: &quot;A String&quot;, # Optional. The type of the layout element that is being referenced if any.
               &quot;page&quot;: &quot;A String&quot;, # Required. Index into the Document.pages element, for example using Document.pages to locate the related page element.
@@ -1156,6 +1157,7 @@
                   },
                 ],
               },
+              &quot;confidence&quot;: 3.14, # Optional. Confidence of detected page element, if applicable. Range [0, 1].
               &quot;layoutId&quot;: &quot;A String&quot;, # Optional. Deprecated. Use PageRef.bounding_poly instead.
               &quot;layoutType&quot;: &quot;A String&quot;, # Optional. The type of the layout element that is being referenced if any.
               &quot;page&quot;: &quot;A String&quot;, # Required. Index into the Document.pages element, for example using Document.pages to locate the related page element.
@@ -1858,6 +1860,7 @@
                   },
                 ],
               },
+              &quot;confidence&quot;: 3.14, # Optional. Confidence of detected page element, if applicable. Range [0, 1].
               &quot;layoutId&quot;: &quot;A String&quot;, # Optional. Deprecated. Use PageRef.bounding_poly instead.
               &quot;layoutType&quot;: &quot;A String&quot;, # Optional. The type of the layout element that is being referenced if any.
               &quot;page&quot;: &quot;A String&quot;, # Required. Index into the Document.pages element, for example using Document.pages to locate the related page element.
diff --git a/docs/dyn/documentai_v1beta3.projects.locations.processors.humanReviewConfig.html b/docs/dyn/documentai_v1beta3.projects.locations.processors.humanReviewConfig.html
index 569fbb9..ea67f45 100644
--- a/docs/dyn/documentai_v1beta3.projects.locations.processors.humanReviewConfig.html
+++ b/docs/dyn/documentai_v1beta3.projects.locations.processors.humanReviewConfig.html
@@ -166,6 +166,7 @@
                   },
                 ],
               },
+              &quot;confidence&quot;: 3.14, # Optional. Confidence of detected page element, if applicable. Range [0, 1].
               &quot;layoutId&quot;: &quot;A String&quot;, # Optional. Deprecated. Use PageRef.bounding_poly instead.
               &quot;layoutType&quot;: &quot;A String&quot;, # Optional. The type of the layout element that is being referenced if any.
               &quot;page&quot;: &quot;A String&quot;, # Required. Index into the Document.pages element, for example using Document.pages to locate the related page element.
@@ -852,6 +853,7 @@
                   },
                 ],
               },
+              &quot;confidence&quot;: 3.14, # Optional. Confidence of detected page element, if applicable. Range [0, 1].
               &quot;layoutId&quot;: &quot;A String&quot;, # Optional. Deprecated. Use PageRef.bounding_poly instead.
               &quot;layoutType&quot;: &quot;A String&quot;, # Optional. The type of the layout element that is being referenced if any.
               &quot;page&quot;: &quot;A String&quot;, # Required. Index into the Document.pages element, for example using Document.pages to locate the related page element.
diff --git a/docs/dyn/documentai_v1beta3.projects.locations.processors.processorVersions.html b/docs/dyn/documentai_v1beta3.projects.locations.processors.processorVersions.html
index 1afb368..c853f75 100644
--- a/docs/dyn/documentai_v1beta3.projects.locations.processors.processorVersions.html
+++ b/docs/dyn/documentai_v1beta3.projects.locations.processors.processorVersions.html
@@ -238,6 +238,7 @@
                   },
                 ],
               },
+              &quot;confidence&quot;: 3.14, # Optional. Confidence of detected page element, if applicable. Range [0, 1].
               &quot;layoutId&quot;: &quot;A String&quot;, # Optional. Deprecated. Use PageRef.bounding_poly instead.
               &quot;layoutType&quot;: &quot;A String&quot;, # Optional. The type of the layout element that is being referenced if any.
               &quot;page&quot;: &quot;A String&quot;, # Required. Index into the Document.pages element, for example using Document.pages to locate the related page element.
@@ -924,6 +925,7 @@
                   },
                 ],
               },
+              &quot;confidence&quot;: 3.14, # Optional. Confidence of detected page element, if applicable. Range [0, 1].
               &quot;layoutId&quot;: &quot;A String&quot;, # Optional. Deprecated. Use PageRef.bounding_poly instead.
               &quot;layoutType&quot;: &quot;A String&quot;, # Optional. The type of the layout element that is being referenced if any.
               &quot;page&quot;: &quot;A String&quot;, # Required. Index into the Document.pages element, for example using Document.pages to locate the related page element.
@@ -1626,6 +1628,7 @@
                   },
                 ],
               },
+              &quot;confidence&quot;: 3.14, # Optional. Confidence of detected page element, if applicable. Range [0, 1].
               &quot;layoutId&quot;: &quot;A String&quot;, # Optional. Deprecated. Use PageRef.bounding_poly instead.
               &quot;layoutType&quot;: &quot;A String&quot;, # Optional. The type of the layout element that is being referenced if any.
               &quot;page&quot;: &quot;A String&quot;, # Required. Index into the Document.pages element, for example using Document.pages to locate the related page element.
diff --git a/docs/dyn/gameservices_v1beta.projects.locations.realms.gameServerClusters.html b/docs/dyn/gameservices_v1beta.projects.locations.realms.gameServerClusters.html
index 227493c..26e3337 100644
--- a/docs/dyn/gameservices_v1beta.projects.locations.realms.gameServerClusters.html
+++ b/docs/dyn/gameservices_v1beta.projects.locations.realms.gameServerClusters.html
@@ -84,10 +84,10 @@
   <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
 <p class="firstline">Deletes a single game server cluster.</p>
 <p class="toc_element">
-  <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
+  <code><a href="#get">get(name, view=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Gets details of a single game server cluster.</p>
 <p class="toc_element">
-  <code><a href="#list">list(parent, filter=None, orderBy=None, pageSize=None, pageToken=None, x__xgafv=None)</a></code></p>
+  <code><a href="#list">list(parent, filter=None, orderBy=None, pageSize=None, pageToken=None, view=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Lists game server clusters in a given project and location.</p>
 <p class="toc_element">
   <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
@@ -96,7 +96,7 @@
   <code><a href="#patch">patch(name, body=None, updateMask=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Patches a single game server cluster.</p>
 <p class="toc_element">
-  <code><a href="#previewCreate">previewCreate(parent, body=None, gameServerClusterId=None, previewTime=None, x__xgafv=None)</a></code></p>
+  <code><a href="#previewCreate">previewCreate(parent, body=None, gameServerClusterId=None, previewTime=None, view=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Previews creation of a new game server cluster in a given project and location.</p>
 <p class="toc_element">
   <code><a href="#previewDelete">previewDelete(name, previewTime=None, x__xgafv=None)</a></code></p>
@@ -121,6 +121,14 @@
 
 { # A game server cluster resource.
   &quot;allocationPriority&quot;: &quot;A String&quot;, # Optional. The allocation priority assigned to the game server cluster. Game server clusters receive new game server allocations based on the relative allocation priorites set for each cluster, if the realm is configured for multicluster allocation.
+  &quot;clusterState&quot;: { # The state of the Kubernetes cluster. # Output only. The state of the Kubernetes cluster, this will be available if &#x27;view&#x27; is set to `FULL` in the relevant List/Get/Preview request.
+    &quot;agonesVersionInstalled&quot;: &quot;A String&quot;, # Output only. The version of Agones currently installed in the registered Kubernetes cluster.
+    &quot;agonesVersionTargeted&quot;: &quot;A String&quot;, # Output only. The version of Agones that is targeted to be installed in the cluster.
+    &quot;installationState&quot;: &quot;A String&quot;, # Output only. The state for the installed versions of Agones/Kubernetes.
+    &quot;kubernetesVersionInstalled&quot;: &quot;A String&quot;, # Output only. The version of Kubernetes that is currently used in the registered Kubernetes cluster (as detected by the Cloud Game Servers service).
+    &quot;provider&quot;: &quot;A String&quot;, # Output only. The cloud provider type reported by the first node&#x27;s providerID in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE-on-GCP), the provider type will be empty.
+    &quot;versionInstalledErrorMessage&quot;: &quot;A String&quot;, # Output only. The detailed error message for the installed versions of Agones/Kubernetes.
+  },
   &quot;connectionInfo&quot;: { # The game server cluster connection information. # The game server cluster connection information. This information is used to manage game server clusters.
     &quot;gkeClusterReference&quot;: { # A reference to a GKE cluster. # Reference to the GKE cluster where the game servers are installed.
       &quot;cluster&quot;: &quot;A String&quot;, # The full or partial name of a GKE cluster, using one of the following forms: * `projects/{project}/locations/{location}/clusters/{cluster}` * `locations/{location}/clusters/{cluster}` * `{cluster}` If project and location are not specified, the project and location of the GameServerCluster resource are used to generate the full name of the GKE cluster.
@@ -206,11 +214,16 @@
 </div>
 
 <div class="method">
-    <code class="details" id="get">get(name, x__xgafv=None)</code>
+    <code class="details" id="get">get(name, view=None, x__xgafv=None)</code>
   <pre>Gets details of a single game server cluster.
 
 Args:
   name: string, Required. The name of the game server cluster to retrieve, in the following form: `projects/{project}/locations/{location}/realms/{realm-id}/gameServerClusters/{cluster}`. (required)
+  view: string, Optional. View for the returned GameServerCluster objects. When `FULL` is specified, the `cluster_state` field is also returned in the GameServerCluster object, which includes the state of the referenced Kubernetes cluster such as versions and provider info. The default/unset value is GAME_SERVER_CLUSTER_VIEW_UNSPECIFIED, same as BASIC, which does not return the `cluster_state` field.
+    Allowed values
+      GAME_SERVER_CLUSTER_VIEW_UNSPECIFIED - The default / unset value. The API will default to the BASIC view.
+      BASIC - Include basic information of a GameServerCluster resource and omit `cluster_state`. This is the default value (for ListGameServerClusters, GetGameServerCluster and PreviewCreateGameServerCluster).
+      FULL - Include everything.
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
@@ -221,6 +234,14 @@
 
     { # A game server cluster resource.
   &quot;allocationPriority&quot;: &quot;A String&quot;, # Optional. The allocation priority assigned to the game server cluster. Game server clusters receive new game server allocations based on the relative allocation priorites set for each cluster, if the realm is configured for multicluster allocation.
+  &quot;clusterState&quot;: { # The state of the Kubernetes cluster. # Output only. The state of the Kubernetes cluster, this will be available if &#x27;view&#x27; is set to `FULL` in the relevant List/Get/Preview request.
+    &quot;agonesVersionInstalled&quot;: &quot;A String&quot;, # Output only. The version of Agones currently installed in the registered Kubernetes cluster.
+    &quot;agonesVersionTargeted&quot;: &quot;A String&quot;, # Output only. The version of Agones that is targeted to be installed in the cluster.
+    &quot;installationState&quot;: &quot;A String&quot;, # Output only. The state for the installed versions of Agones/Kubernetes.
+    &quot;kubernetesVersionInstalled&quot;: &quot;A String&quot;, # Output only. The version of Kubernetes that is currently used in the registered Kubernetes cluster (as detected by the Cloud Game Servers service).
+    &quot;provider&quot;: &quot;A String&quot;, # Output only. The cloud provider type reported by the first node&#x27;s providerID in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE-on-GCP), the provider type will be empty.
+    &quot;versionInstalledErrorMessage&quot;: &quot;A String&quot;, # Output only. The detailed error message for the installed versions of Agones/Kubernetes.
+  },
   &quot;connectionInfo&quot;: { # The game server cluster connection information. # The game server cluster connection information. This information is used to manage game server clusters.
     &quot;gkeClusterReference&quot;: { # A reference to a GKE cluster. # Reference to the GKE cluster where the game servers are installed.
       &quot;cluster&quot;: &quot;A String&quot;, # The full or partial name of a GKE cluster, using one of the following forms: * `projects/{project}/locations/{location}/clusters/{cluster}` * `locations/{location}/clusters/{cluster}` * `{cluster}` If project and location are not specified, the project and location of the GameServerCluster resource are used to generate the full name of the GKE cluster.
@@ -242,7 +263,7 @@
 </div>
 
 <div class="method">
-    <code class="details" id="list">list(parent, filter=None, orderBy=None, pageSize=None, pageToken=None, x__xgafv=None)</code>
+    <code class="details" id="list">list(parent, filter=None, orderBy=None, pageSize=None, pageToken=None, view=None, x__xgafv=None)</code>
   <pre>Lists game server clusters in a given project and location.
 
 Args:
@@ -251,6 +272,11 @@
   orderBy: string, Optional. Specifies the ordering of results following syntax at https://cloud.google.com/apis/design/design_patterns#sorting_order.
   pageSize: integer, Optional. The maximum number of items to return. If unspecified, the server will pick an appropriate default. The server may return fewer items than requested. A caller should only rely on response&#x27;s next_page_token to determine if there are more GameServerClusters left to be queried.
   pageToken: string, Optional. The next_page_token value returned from a previous List request, if any.
+  view: string, Optional. View for the returned GameServerCluster objects. When `FULL` is specified, the `cluster_state` field is also returned in the GameServerCluster object, which includes the state of the referenced Kubernetes cluster such as versions and provider info. The default/unset value is GAME_SERVER_CLUSTER_VIEW_UNSPECIFIED, same as BASIC, which does not return the `cluster_state` field.
+    Allowed values
+      GAME_SERVER_CLUSTER_VIEW_UNSPECIFIED - The default / unset value. The API will default to the BASIC view.
+      BASIC - Include basic information of a GameServerCluster resource and omit `cluster_state`. This is the default value (for ListGameServerClusters, GetGameServerCluster and PreviewCreateGameServerCluster).
+      FULL - Include everything.
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
@@ -263,6 +289,14 @@
   &quot;gameServerClusters&quot;: [ # The list of game server clusters.
     { # A game server cluster resource.
       &quot;allocationPriority&quot;: &quot;A String&quot;, # Optional. The allocation priority assigned to the game server cluster. Game server clusters receive new game server allocations based on the relative allocation priorites set for each cluster, if the realm is configured for multicluster allocation.
+      &quot;clusterState&quot;: { # The state of the Kubernetes cluster. # Output only. The state of the Kubernetes cluster, this will be available if &#x27;view&#x27; is set to `FULL` in the relevant List/Get/Preview request.
+        &quot;agonesVersionInstalled&quot;: &quot;A String&quot;, # Output only. The version of Agones currently installed in the registered Kubernetes cluster.
+        &quot;agonesVersionTargeted&quot;: &quot;A String&quot;, # Output only. The version of Agones that is targeted to be installed in the cluster.
+        &quot;installationState&quot;: &quot;A String&quot;, # Output only. The state for the installed versions of Agones/Kubernetes.
+        &quot;kubernetesVersionInstalled&quot;: &quot;A String&quot;, # Output only. The version of Kubernetes that is currently used in the registered Kubernetes cluster (as detected by the Cloud Game Servers service).
+        &quot;provider&quot;: &quot;A String&quot;, # Output only. The cloud provider type reported by the first node&#x27;s providerID in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE-on-GCP), the provider type will be empty.
+        &quot;versionInstalledErrorMessage&quot;: &quot;A String&quot;, # Output only. The detailed error message for the installed versions of Agones/Kubernetes.
+      },
       &quot;connectionInfo&quot;: { # The game server cluster connection information. # The game server cluster connection information. This information is used to manage game server clusters.
         &quot;gkeClusterReference&quot;: { # A reference to a GKE cluster. # Reference to the GKE cluster where the game servers are installed.
           &quot;cluster&quot;: &quot;A String&quot;, # The full or partial name of a GKE cluster, using one of the following forms: * `projects/{project}/locations/{location}/clusters/{cluster}` * `locations/{location}/clusters/{cluster}` * `{cluster}` If project and location are not specified, the project and location of the GameServerCluster resource are used to generate the full name of the GKE cluster.
@@ -314,6 +348,14 @@
 
 { # A game server cluster resource.
   &quot;allocationPriority&quot;: &quot;A String&quot;, # Optional. The allocation priority assigned to the game server cluster. Game server clusters receive new game server allocations based on the relative allocation priorites set for each cluster, if the realm is configured for multicluster allocation.
+  &quot;clusterState&quot;: { # The state of the Kubernetes cluster. # Output only. The state of the Kubernetes cluster, this will be available if &#x27;view&#x27; is set to `FULL` in the relevant List/Get/Preview request.
+    &quot;agonesVersionInstalled&quot;: &quot;A String&quot;, # Output only. The version of Agones currently installed in the registered Kubernetes cluster.
+    &quot;agonesVersionTargeted&quot;: &quot;A String&quot;, # Output only. The version of Agones that is targeted to be installed in the cluster.
+    &quot;installationState&quot;: &quot;A String&quot;, # Output only. The state for the installed versions of Agones/Kubernetes.
+    &quot;kubernetesVersionInstalled&quot;: &quot;A String&quot;, # Output only. The version of Kubernetes that is currently used in the registered Kubernetes cluster (as detected by the Cloud Game Servers service).
+    &quot;provider&quot;: &quot;A String&quot;, # Output only. The cloud provider type reported by the first node&#x27;s providerID in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE-on-GCP), the provider type will be empty.
+    &quot;versionInstalledErrorMessage&quot;: &quot;A String&quot;, # Output only. The detailed error message for the installed versions of Agones/Kubernetes.
+  },
   &quot;connectionInfo&quot;: { # The game server cluster connection information. # The game server cluster connection information. This information is used to manage game server clusters.
     &quot;gkeClusterReference&quot;: { # A reference to a GKE cluster. # Reference to the GKE cluster where the game servers are installed.
       &quot;cluster&quot;: &quot;A String&quot;, # The full or partial name of a GKE cluster, using one of the following forms: * `projects/{project}/locations/{location}/clusters/{cluster}` * `locations/{location}/clusters/{cluster}` * `{cluster}` If project and location are not specified, the project and location of the GameServerCluster resource are used to generate the full name of the GKE cluster.
@@ -364,7 +406,7 @@
 </div>
 
 <div class="method">
-    <code class="details" id="previewCreate">previewCreate(parent, body=None, gameServerClusterId=None, previewTime=None, x__xgafv=None)</code>
+    <code class="details" id="previewCreate">previewCreate(parent, body=None, gameServerClusterId=None, previewTime=None, view=None, x__xgafv=None)</code>
   <pre>Previews creation of a new game server cluster in a given project and location.
 
 Args:
@@ -374,6 +416,14 @@
 
 { # A game server cluster resource.
   &quot;allocationPriority&quot;: &quot;A String&quot;, # Optional. The allocation priority assigned to the game server cluster. Game server clusters receive new game server allocations based on the relative allocation priorites set for each cluster, if the realm is configured for multicluster allocation.
+  &quot;clusterState&quot;: { # The state of the Kubernetes cluster. # Output only. The state of the Kubernetes cluster, this will be available if &#x27;view&#x27; is set to `FULL` in the relevant List/Get/Preview request.
+    &quot;agonesVersionInstalled&quot;: &quot;A String&quot;, # Output only. The version of Agones currently installed in the registered Kubernetes cluster.
+    &quot;agonesVersionTargeted&quot;: &quot;A String&quot;, # Output only. The version of Agones that is targeted to be installed in the cluster.
+    &quot;installationState&quot;: &quot;A String&quot;, # Output only. The state for the installed versions of Agones/Kubernetes.
+    &quot;kubernetesVersionInstalled&quot;: &quot;A String&quot;, # Output only. The version of Kubernetes that is currently used in the registered Kubernetes cluster (as detected by the Cloud Game Servers service).
+    &quot;provider&quot;: &quot;A String&quot;, # Output only. The cloud provider type reported by the first node&#x27;s providerID in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE-on-GCP), the provider type will be empty.
+    &quot;versionInstalledErrorMessage&quot;: &quot;A String&quot;, # Output only. The detailed error message for the installed versions of Agones/Kubernetes.
+  },
   &quot;connectionInfo&quot;: { # The game server cluster connection information. # The game server cluster connection information. This information is used to manage game server clusters.
     &quot;gkeClusterReference&quot;: { # A reference to a GKE cluster. # Reference to the GKE cluster where the game servers are installed.
       &quot;cluster&quot;: &quot;A String&quot;, # The full or partial name of a GKE cluster, using one of the following forms: * `projects/{project}/locations/{location}/clusters/{cluster}` * `locations/{location}/clusters/{cluster}` * `{cluster}` If project and location are not specified, the project and location of the GameServerCluster resource are used to generate the full name of the GKE cluster.
@@ -395,6 +445,11 @@
 
   gameServerClusterId: string, Required. The ID of the game server cluster resource to be created.
   previewTime: string, Optional. The target timestamp to compute the preview.
+  view: string, Optional. This field is deprecated, preview will always return KubernetesClusterState.
+    Allowed values
+      GAME_SERVER_CLUSTER_VIEW_UNSPECIFIED - The default / unset value. The API will default to the BASIC view.
+      BASIC - Include basic information of a GameServerCluster resource and omit `cluster_state`. This is the default value (for ListGameServerClusters, GetGameServerCluster and PreviewCreateGameServerCluster).
+      FULL - Include everything.
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
@@ -404,6 +459,14 @@
   An object of the form:
 
     { # Response message for GameServerClustersService.PreviewCreateGameServerCluster.
+  &quot;clusterState&quot;: { # The state of the Kubernetes cluster. # Output only. The state of the Kubernetes cluster in preview, this will be available if &#x27;view&#x27; is set to `FULL` in the relevant List/Get/Preview request.
+    &quot;agonesVersionInstalled&quot;: &quot;A String&quot;, # Output only. The version of Agones currently installed in the registered Kubernetes cluster.
+    &quot;agonesVersionTargeted&quot;: &quot;A String&quot;, # Output only. The version of Agones that is targeted to be installed in the cluster.
+    &quot;installationState&quot;: &quot;A String&quot;, # Output only. The state for the installed versions of Agones/Kubernetes.
+    &quot;kubernetesVersionInstalled&quot;: &quot;A String&quot;, # Output only. The version of Kubernetes that is currently used in the registered Kubernetes cluster (as detected by the Cloud Game Servers service).
+    &quot;provider&quot;: &quot;A String&quot;, # Output only. The cloud provider type reported by the first node&#x27;s providerID in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE-on-GCP), the provider type will be empty.
+    &quot;versionInstalledErrorMessage&quot;: &quot;A String&quot;, # Output only. The detailed error message for the installed versions of Agones/Kubernetes.
+  },
   &quot;etag&quot;: &quot;A String&quot;, # The ETag of the game server cluster.
   &quot;targetState&quot;: { # Encapsulates the Target state. # The target state.
     &quot;details&quot;: [ # Details about Agones fleets.
@@ -491,6 +554,14 @@
 
 { # A game server cluster resource.
   &quot;allocationPriority&quot;: &quot;A String&quot;, # Optional. The allocation priority assigned to the game server cluster. Game server clusters receive new game server allocations based on the relative allocation priorites set for each cluster, if the realm is configured for multicluster allocation.
+  &quot;clusterState&quot;: { # The state of the Kubernetes cluster. # Output only. The state of the Kubernetes cluster, this will be available if &#x27;view&#x27; is set to `FULL` in the relevant List/Get/Preview request.
+    &quot;agonesVersionInstalled&quot;: &quot;A String&quot;, # Output only. The version of Agones currently installed in the registered Kubernetes cluster.
+    &quot;agonesVersionTargeted&quot;: &quot;A String&quot;, # Output only. The version of Agones that is targeted to be installed in the cluster.
+    &quot;installationState&quot;: &quot;A String&quot;, # Output only. The state for the installed versions of Agones/Kubernetes.
+    &quot;kubernetesVersionInstalled&quot;: &quot;A String&quot;, # Output only. The version of Kubernetes that is currently used in the registered Kubernetes cluster (as detected by the Cloud Game Servers service).
+    &quot;provider&quot;: &quot;A String&quot;, # Output only. The cloud provider type reported by the first node&#x27;s providerID in the list of nodes on the Kubernetes endpoint. On Kubernetes platforms that support zero-node clusters (like GKE-on-GCP), the provider type will be empty.
+    &quot;versionInstalledErrorMessage&quot;: &quot;A String&quot;, # Output only. The detailed error message for the installed versions of Agones/Kubernetes.
+  },
   &quot;connectionInfo&quot;: { # The game server cluster connection information. # The game server cluster connection information. This information is used to manage game server clusters.
     &quot;gkeClusterReference&quot;: { # A reference to a GKE cluster. # Reference to the GKE cluster where the game servers are installed.
       &quot;cluster&quot;: &quot;A String&quot;, # The full or partial name of a GKE cluster, using one of the following forms: * `projects/{project}/locations/{location}/clusters/{cluster}` * `locations/{location}/clusters/{cluster}` * `{cluster}` If project and location are not specified, the project and location of the GameServerCluster resource are used to generate the full name of the GKE cluster.
diff --git a/docs/dyn/index.md b/docs/dyn/index.md
index 733d22c..e9c5b04 100644
--- a/docs/dyn/index.md
+++ b/docs/dyn/index.md
@@ -118,6 +118,10 @@
 * [v1](http://googleapis.github.io/google-api-python-client/docs/dyn/assuredworkloads_v1.html)
 
 
+## baremetalsolution
+* [v1](http://googleapis.github.io/google-api-python-client/docs/dyn/baremetalsolution_v1.html)
+
+
 ## bigquery
 * [v2](http://googleapis.github.io/google-api-python-client/docs/dyn/bigquery_v2.html)
 
diff --git a/docs/dyn/logging_v2.billingAccounts.logs.html b/docs/dyn/logging_v2.billingAccounts.logs.html
index 540a62c..447deb5 100644
--- a/docs/dyn/logging_v2.billingAccounts.logs.html
+++ b/docs/dyn/logging_v2.billingAccounts.logs.html
@@ -97,7 +97,7 @@
   <pre>Deletes all the log entries in a log for the _Default Log Bucket. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted. Entries received after the delete operation with a timestamp before the operation will be deleted.
 
 Args:
-  logName: string, Required. The resource name of the log to delete: projects/[PROJECT_ID]/logs/[LOG_ID] organizations/[ORGANIZATION_ID]/logs/[LOG_ID] billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID] folders/[FOLDER_ID]/logs/[LOG_ID][LOG_ID] must be URL-encoded. For example, &quot;projects/my-project-id/logs/syslog&quot;, &quot;organizations/123/logs/cloudaudit.googleapis.com%2Factivity&quot;.For more information about log names, see LogEntry. (required)
+  logName: string, Required. The resource name of the log to delete: projects/[PROJECT_ID]/logs/[LOG_ID] organizations/[ORGANIZATION_ID]/logs/[LOG_ID] billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID] folders/[FOLDER_ID]/logs/[LOG_ID][LOG_ID] must be URL-encoded. For example, &quot;projects/my-project-id/logs/syslog&quot;.For more information about log names, see LogEntry. (required)
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
diff --git a/docs/dyn/logging_v2.folders.logs.html b/docs/dyn/logging_v2.folders.logs.html
index 268bee8..a390b12 100644
--- a/docs/dyn/logging_v2.folders.logs.html
+++ b/docs/dyn/logging_v2.folders.logs.html
@@ -97,7 +97,7 @@
   <pre>Deletes all the log entries in a log for the _Default Log Bucket. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted. Entries received after the delete operation with a timestamp before the operation will be deleted.
 
 Args:
-  logName: string, Required. The resource name of the log to delete: projects/[PROJECT_ID]/logs/[LOG_ID] organizations/[ORGANIZATION_ID]/logs/[LOG_ID] billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID] folders/[FOLDER_ID]/logs/[LOG_ID][LOG_ID] must be URL-encoded. For example, &quot;projects/my-project-id/logs/syslog&quot;, &quot;organizations/123/logs/cloudaudit.googleapis.com%2Factivity&quot;.For more information about log names, see LogEntry. (required)
+  logName: string, Required. The resource name of the log to delete: projects/[PROJECT_ID]/logs/[LOG_ID] organizations/[ORGANIZATION_ID]/logs/[LOG_ID] billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID] folders/[FOLDER_ID]/logs/[LOG_ID][LOG_ID] must be URL-encoded. For example, &quot;projects/my-project-id/logs/syslog&quot;.For more information about log names, see LogEntry. (required)
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
diff --git a/docs/dyn/logging_v2.logs.html b/docs/dyn/logging_v2.logs.html
index 83cab71..b68eb2e 100644
--- a/docs/dyn/logging_v2.logs.html
+++ b/docs/dyn/logging_v2.logs.html
@@ -97,7 +97,7 @@
   <pre>Deletes all the log entries in a log for the _Default Log Bucket. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted. Entries received after the delete operation with a timestamp before the operation will be deleted.
 
 Args:
-  logName: string, Required. The resource name of the log to delete: projects/[PROJECT_ID]/logs/[LOG_ID] organizations/[ORGANIZATION_ID]/logs/[LOG_ID] billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID] folders/[FOLDER_ID]/logs/[LOG_ID][LOG_ID] must be URL-encoded. For example, &quot;projects/my-project-id/logs/syslog&quot;, &quot;organizations/123/logs/cloudaudit.googleapis.com%2Factivity&quot;.For more information about log names, see LogEntry. (required)
+  logName: string, Required. The resource name of the log to delete: projects/[PROJECT_ID]/logs/[LOG_ID] organizations/[ORGANIZATION_ID]/logs/[LOG_ID] billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID] folders/[FOLDER_ID]/logs/[LOG_ID][LOG_ID] must be URL-encoded. For example, &quot;projects/my-project-id/logs/syslog&quot;.For more information about log names, see LogEntry. (required)
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
diff --git a/docs/dyn/logging_v2.organizations.logs.html b/docs/dyn/logging_v2.organizations.logs.html
index dc7612e..878a359 100644
--- a/docs/dyn/logging_v2.organizations.logs.html
+++ b/docs/dyn/logging_v2.organizations.logs.html
@@ -97,7 +97,7 @@
   <pre>Deletes all the log entries in a log for the _Default Log Bucket. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted. Entries received after the delete operation with a timestamp before the operation will be deleted.
 
 Args:
-  logName: string, Required. The resource name of the log to delete: projects/[PROJECT_ID]/logs/[LOG_ID] organizations/[ORGANIZATION_ID]/logs/[LOG_ID] billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID] folders/[FOLDER_ID]/logs/[LOG_ID][LOG_ID] must be URL-encoded. For example, &quot;projects/my-project-id/logs/syslog&quot;, &quot;organizations/123/logs/cloudaudit.googleapis.com%2Factivity&quot;.For more information about log names, see LogEntry. (required)
+  logName: string, Required. The resource name of the log to delete: projects/[PROJECT_ID]/logs/[LOG_ID] organizations/[ORGANIZATION_ID]/logs/[LOG_ID] billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID] folders/[FOLDER_ID]/logs/[LOG_ID][LOG_ID] must be URL-encoded. For example, &quot;projects/my-project-id/logs/syslog&quot;.For more information about log names, see LogEntry. (required)
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
diff --git a/docs/dyn/logging_v2.projects.logs.html b/docs/dyn/logging_v2.projects.logs.html
index 7b0ad27..da288b4 100644
--- a/docs/dyn/logging_v2.projects.logs.html
+++ b/docs/dyn/logging_v2.projects.logs.html
@@ -97,7 +97,7 @@
   <pre>Deletes all the log entries in a log for the _Default Log Bucket. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted. Entries received after the delete operation with a timestamp before the operation will be deleted.
 
 Args:
-  logName: string, Required. The resource name of the log to delete: projects/[PROJECT_ID]/logs/[LOG_ID] organizations/[ORGANIZATION_ID]/logs/[LOG_ID] billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID] folders/[FOLDER_ID]/logs/[LOG_ID][LOG_ID] must be URL-encoded. For example, &quot;projects/my-project-id/logs/syslog&quot;, &quot;organizations/123/logs/cloudaudit.googleapis.com%2Factivity&quot;.For more information about log names, see LogEntry. (required)
+  logName: string, Required. The resource name of the log to delete: projects/[PROJECT_ID]/logs/[LOG_ID] organizations/[ORGANIZATION_ID]/logs/[LOG_ID] billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID] folders/[FOLDER_ID]/logs/[LOG_ID][LOG_ID] must be URL-encoded. For example, &quot;projects/my-project-id/logs/syslog&quot;.For more information about log names, see LogEntry. (required)
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
diff --git a/docs/dyn/memcache_v1.projects.locations.html b/docs/dyn/memcache_v1.projects.locations.html
index 78873b1..f0b8ad5 100644
--- a/docs/dyn/memcache_v1.projects.locations.html
+++ b/docs/dyn/memcache_v1.projects.locations.html
@@ -136,7 +136,7 @@
 Args:
   name: string, The resource that owns the locations collection, if applicable. (required)
   filter: string, A filter to narrow down results to a preferred subset. The filtering language accepts strings like &quot;displayName=tokyo&quot;, and is documented in more detail in [AIP-160](https://google.aip.dev/160).
-  pageSize: integer, The maximum number of results to return. If not set, the service will select a default.
+  pageSize: integer, The maximum number of results to return. If not set, the service selects a default.
   pageToken: string, A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page.
   x__xgafv: string, V1 error format.
     Allowed values
diff --git a/docs/dyn/memcache_v1beta2.projects.locations.html b/docs/dyn/memcache_v1beta2.projects.locations.html
index 0246783..abb66e0 100644
--- a/docs/dyn/memcache_v1beta2.projects.locations.html
+++ b/docs/dyn/memcache_v1beta2.projects.locations.html
@@ -136,7 +136,7 @@
 Args:
   name: string, The resource that owns the locations collection, if applicable. (required)
   filter: string, A filter to narrow down results to a preferred subset. The filtering language accepts strings like &quot;displayName=tokyo&quot;, and is documented in more detail in [AIP-160](https://google.aip.dev/160).
-  pageSize: integer, The maximum number of results to return. If not set, the service will select a default.
+  pageSize: integer, The maximum number of results to return. If not set, the service selects a default.
   pageToken: string, A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page.
   x__xgafv: string, V1 error format.
     Allowed values
diff --git a/docs/dyn/metastore_v1beta.projects.locations.services.metadataImports.html b/docs/dyn/metastore_v1beta.projects.locations.services.metadataImports.html
index ccdffdb..a7d3c4b 100644
--- a/docs/dyn/metastore_v1beta.projects.locations.services.metadataImports.html
+++ b/docs/dyn/metastore_v1beta.projects.locations.services.metadataImports.html
@@ -108,7 +108,7 @@
     The object takes the form of:
 
 { # A metastore resource that imports metadata.
-  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time when the metadata import was created.
+  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time when the metadata import was started.
   &quot;databaseDump&quot;: { # A specification of the location of and metadata about a database dump from a relational database management system. # Immutable. A database dump from a pre-existing metastore&#x27;s database.
     &quot;databaseType&quot;: &quot;A String&quot;, # The type of the database.
     &quot;gcsUri&quot;: &quot;A String&quot;, # A Cloud Storage object or folder URI that specifies the source from which to import metadata. It must begin with gs://.
@@ -167,7 +167,7 @@
   An object of the form:
 
     { # A metastore resource that imports metadata.
-  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time when the metadata import was created.
+  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time when the metadata import was started.
   &quot;databaseDump&quot;: { # A specification of the location of and metadata about a database dump from a relational database management system. # Immutable. A database dump from a pre-existing metastore&#x27;s database.
     &quot;databaseType&quot;: &quot;A String&quot;, # The type of the database.
     &quot;gcsUri&quot;: &quot;A String&quot;, # A Cloud Storage object or folder URI that specifies the source from which to import metadata. It must begin with gs://.
@@ -202,7 +202,7 @@
     { # Response message for DataprocMetastore.ListMetadataImports.
   &quot;metadataImports&quot;: [ # The imports in the specified service.
     { # A metastore resource that imports metadata.
-      &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time when the metadata import was created.
+      &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time when the metadata import was started.
       &quot;databaseDump&quot;: { # A specification of the location of and metadata about a database dump from a relational database management system. # Immutable. A database dump from a pre-existing metastore&#x27;s database.
         &quot;databaseType&quot;: &quot;A String&quot;, # The type of the database.
         &quot;gcsUri&quot;: &quot;A String&quot;, # A Cloud Storage object or folder URI that specifies the source from which to import metadata. It must begin with gs://.
@@ -246,7 +246,7 @@
     The object takes the form of:
 
 { # A metastore resource that imports metadata.
-  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time when the metadata import was created.
+  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time when the metadata import was started.
   &quot;databaseDump&quot;: { # A specification of the location of and metadata about a database dump from a relational database management system. # Immutable. A database dump from a pre-existing metastore&#x27;s database.
     &quot;databaseType&quot;: &quot;A String&quot;, # The type of the database.
     &quot;gcsUri&quot;: &quot;A String&quot;, # A Cloud Storage object or folder URI that specifies the source from which to import metadata. It must begin with gs://.
diff --git a/docs/dyn/monitoring_v1.projects.dashboards.html b/docs/dyn/monitoring_v1.projects.dashboards.html
index 6034c73..7146c53 100644
--- a/docs/dyn/monitoring_v1.projects.dashboards.html
+++ b/docs/dyn/monitoring_v1.projects.dashboards.html
@@ -78,7 +78,7 @@
   <code><a href="#close">close()</a></code></p>
 <p class="firstline">Close httplib2 connections.</p>
 <p class="toc_element">
-  <code><a href="#create">create(parent, body=None, x__xgafv=None)</a></code></p>
+  <code><a href="#create">create(parent, body=None, validateOnly=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Creates a new custom dashboard. For examples on how you can use this API to create dashboards, see Managing dashboards by API. This method requires the monitoring.dashboards.create permission on the specified project. For more information about permissions, see Cloud Identity and Access Management.</p>
 <p class="toc_element">
   <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
@@ -93,7 +93,7 @@
   <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
 <p class="firstline">Retrieves the next page of results.</p>
 <p class="toc_element">
-  <code><a href="#patch">patch(name, body=None, x__xgafv=None)</a></code></p>
+  <code><a href="#patch">patch(name, body=None, validateOnly=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Replaces an existing custom dashboard with a new definition.This method requires the monitoring.dashboards.update permission on the specified dashboard. For more information, see Cloud Identity and Access Management (https://cloud.google.com/iam).</p>
 <h3>Method Details</h3>
 <div class="method">
@@ -102,7 +102,7 @@
 </div>
 
 <div class="method">
-    <code class="details" id="create">create(parent, body=None, x__xgafv=None)</code>
+    <code class="details" id="create">create(parent, body=None, validateOnly=None, x__xgafv=None)</code>
   <pre>Creates a new custom dashboard. For examples on how you can use this API to create dashboards, see Managing dashboards by API. This method requires the monitoring.dashboards.create permission on the specified project. For more information about permissions, see Cloud Identity and Access Management.
 
 Args:
@@ -958,6 +958,7 @@
   },
 }
 
+  validateOnly: boolean, If set, validate the request and preview the review, but do not actually save it.
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
@@ -3581,7 +3582,7 @@
 </div>
 
 <div class="method">
-    <code class="details" id="patch">patch(name, body=None, x__xgafv=None)</code>
+    <code class="details" id="patch">patch(name, body=None, validateOnly=None, x__xgafv=None)</code>
   <pre>Replaces an existing custom dashboard with a new definition.This method requires the monitoring.dashboards.update permission on the specified dashboard. For more information, see Cloud Identity and Access Management (https://cloud.google.com/iam).
 
 Args:
@@ -4437,6 +4438,7 @@
   },
 }
 
+  validateOnly: boolean, If set, validate the request and preview the review, but do not actually save it.
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
diff --git a/docs/dyn/mybusinessaccountmanagement_v1.locations.html b/docs/dyn/mybusinessaccountmanagement_v1.locations.html
index 00b2ab9..5095990 100644
--- a/docs/dyn/mybusinessaccountmanagement_v1.locations.html
+++ b/docs/dyn/mybusinessaccountmanagement_v1.locations.html
@@ -83,7 +83,7 @@
   <code><a href="#close">close()</a></code></p>
 <p class="firstline">Close httplib2 connections.</p>
 <p class="toc_element">
-  <code><a href="#transferLocation">transferLocation(locationsId, body=None, x__xgafv=None)</a></code></p>
+  <code><a href="#transfer">transfer(name, body=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Moves a location from an account that the user owns to another account that the same user administers. The user must be an owner of the account the location is currently associated with and must also be at least a manager of the destination account.</p>
 <h3>Method Details</h3>
 <div class="method">
@@ -92,17 +92,16 @@
 </div>
 
 <div class="method">
-    <code class="details" id="transferLocation">transferLocation(locationsId, body=None, x__xgafv=None)</code>
+    <code class="details" id="transfer">transfer(name, body=None, x__xgafv=None)</code>
   <pre>Moves a location from an account that the user owns to another account that the same user administers. The user must be an owner of the account the location is currently associated with and must also be at least a manager of the destination account.
 
 Args:
-  locationsId: string, A parameter (required)
+  name: string, Required. The name of the location to transfer. `locations/{location_id}`. (required)
   body: object, The request body.
     The object takes the form of:
 
 { # Request message for AccessControl.TransferLocation.
   &quot;destinationAccount&quot;: &quot;A String&quot;, # Required. Name of the account resource to transfer the location to (for example, &quot;accounts/{account}&quot;).
-  &quot;name&quot;: &quot;A String&quot;, # Required. The name of the location to transfer. `locations/{location_id}`.
 }
 
   x__xgafv: string, V1 error format.
diff --git a/docs/dyn/networkmanagement_v1.projects.locations.global_.connectivityTests.html b/docs/dyn/networkmanagement_v1.projects.locations.global_.connectivityTests.html
index 83a8670..d7c4f74 100644
--- a/docs/dyn/networkmanagement_v1.projects.locations.global_.connectivityTests.html
+++ b/docs/dyn/networkmanagement_v1.projects.locations.global_.connectivityTests.html
@@ -126,6 +126,8 @@
   &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time the test was created.
   &quot;description&quot;: &quot;A String&quot;, # The user-supplied description of the Connectivity Test. Maximum of 512 characters.
   &quot;destination&quot;: { # Source or destination of the Connectivity Test. # Required. Destination specification of the Connectivity Test. You can use a combination of destination IP address, Compute Engine VM instance, or VPC network to uniquely identify the destination location. Even if the destination IP address is not unique, the source IP location is unique. Usually, the analysis can infer the destination endpoint from route information. If the destination you specify is a VM instance and the instance has multiple network interfaces, then you must also specify either a destination IP address or VPC network to identify the destination interface. A reachability analysis proceeds even if the destination location is ambiguous. However, the result can include endpoints that you don&#x27;t intend to test.
+    &quot;cloudSqlInstance&quot;: &quot;A String&quot;, # A [Cloud SQL](https://cloud.google.com/sql) instance URI.
+    &quot;gkeMasterCluster&quot;: &quot;A String&quot;, # A cluster URI for [Google Kubernetes Engine master](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture).
     &quot;instance&quot;: &quot;A String&quot;, # A Compute Engine instance URI.
     &quot;ipAddress&quot;: &quot;A String&quot;, # The IP address of the endpoint, which can be an external or internal IP. An IPv6 address is only allowed when the test&#x27;s destination is a [global load balancer VIP](/load-balancing/docs/load-balancing-overview).
     &quot;network&quot;: &quot;A String&quot;, # A Compute Engine network URI.
@@ -163,29 +165,29 @@
         },
         &quot;steps&quot;: [ # A trace of a test contains multiple steps from the initial state to the final state (delivered, dropped, forwarded, or aborted). The steps are ordered by the processing sequence within the simulated network state machine. It is critical to preserve the order of the steps and avoid reordering or sorting them.
           { # A simulated forwarding path is composed of multiple steps. Each step has a well-defined state and an associated configuration.
-            &quot;abort&quot;: { # Details of the final state &quot;abort&quot; and associated resource. # Display info of the final state &quot;abort&quot; and reason.
+            &quot;abort&quot;: { # Details of the final state &quot;abort&quot; and associated resource. # Display information of the final state &quot;abort&quot; and reason.
               &quot;cause&quot;: &quot;A String&quot;, # Causes that the analysis is aborted.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that caused the abort.
             },
             &quot;causesDrop&quot;: True or False, # This is a step that leads to the final state Drop.
-            &quot;cloudSqlInstance&quot;: { # For display only. Metadata associated with a Cloud SQL instance. # Display info of a Cloud SQL instance.
+            &quot;cloudSqlInstance&quot;: { # For display only. Metadata associated with a Cloud SQL instance. # Display information of a Cloud SQL instance.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Cloud SQL instance.
-              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of Cloud SQL instance.
-              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of Cloud SQL instance.
-              &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance network or empty string if instance does not have one.
+              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a Cloud SQL instance.
+              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a Cloud SQL instance.
+              &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance network or empty string if the instance does not have one.
               &quot;region&quot;: &quot;A String&quot;, # Region in which the Cloud SQL instance is running.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance.
             },
-            &quot;deliver&quot;: { # Details of the final state &quot;deliver&quot; and associated resource. # Display info of the final state &quot;deliver&quot; and reason.
+            &quot;deliver&quot;: { # Details of the final state &quot;deliver&quot; and associated resource. # Display information of the final state &quot;deliver&quot; and reason.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that the packet is delivered to.
               &quot;target&quot;: &quot;A String&quot;, # Target type where the packet is delivered to.
             },
             &quot;description&quot;: &quot;A String&quot;, # A description of the step. Usually this is a summary of the state.
-            &quot;drop&quot;: { # Details of the final state &quot;drop&quot; and associated resource. # Display info of the final state &quot;drop&quot; and reason.
+            &quot;drop&quot;: { # Details of the final state &quot;drop&quot; and associated resource. # Display information of the final state &quot;drop&quot; and reason.
               &quot;cause&quot;: &quot;A String&quot;, # Cause that the packet is dropped.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that caused the drop.
             },
-            &quot;endpoint&quot;: { # For display only. The specification of the endpoints for the test. EndpointInfo is derived from source and destination Endpoint and validated by the backend data plane model. # Display info of the source and destination under analysis. The endpoint info in an intermediate state may differ with the initial input, as it might be modified by state like NAT, or Connection Proxy.
+            &quot;endpoint&quot;: { # For display only. The specification of the endpoints for the test. EndpointInfo is derived from source and destination Endpoint and validated by the backend data plane model. # Display information of the source and destination under analysis. The endpoint information in an intermediate state may differ with the initial input, as it might be modified by state like NAT, or Connection Proxy.
               &quot;destinationIp&quot;: &quot;A String&quot;, # Destination IP address.
               &quot;destinationNetworkUri&quot;: &quot;A String&quot;, # URI of the network where this packet is sent to.
               &quot;destinationPort&quot;: 42, # Destination port. Only valid when protocol is TCP or UDP.
@@ -194,7 +196,7 @@
               &quot;sourceNetworkUri&quot;: &quot;A String&quot;, # URI of the network where this packet originates from.
               &quot;sourcePort&quot;: 42, # Source port. Only valid when protocol is TCP or UDP.
             },
-            &quot;firewall&quot;: { # For display only. Metadata associated with a VPC firewall rule, an implied VPC firewall rule, or a hierarchical firewall policy rule. # Display info of a Compute Engine firewall rule.
+            &quot;firewall&quot;: { # For display only. Metadata associated with a VPC firewall rule, an implied VPC firewall rule, or a hierarchical firewall policy rule. # Display information of a Compute Engine firewall rule.
               &quot;action&quot;: &quot;A String&quot;, # Possible values: ALLOW, DENY
               &quot;direction&quot;: &quot;A String&quot;, # Possible values: INGRESS, EGRESS
               &quot;displayName&quot;: &quot;A String&quot;, # The display name of the VPC firewall rule. This field is not applicable to hierarchical firewall policy rules.
@@ -210,11 +212,11 @@
               ],
               &quot;uri&quot;: &quot;A String&quot;, # The URI of the VPC firewall rule. This field is not applicable to implied firewall rules or hierarchical firewall policy rules.
             },
-            &quot;forward&quot;: { # Details of the final state &quot;forward&quot; and associated resource. # Display info of the final state &quot;forward&quot; and reason.
+            &quot;forward&quot;: { # Details of the final state &quot;forward&quot; and associated resource. # Display information of the final state &quot;forward&quot; and reason.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that the packet is forwarded to.
               &quot;target&quot;: &quot;A String&quot;, # Target type where this packet is forwarded to.
             },
-            &quot;forwardingRule&quot;: { # For display only. Metadata associated with a Compute Engine forwarding rule. # Display info of a Compute Engine forwarding rule.
+            &quot;forwardingRule&quot;: { # For display only. Metadata associated with a Compute Engine forwarding rule. # Display information of a Compute Engine forwarding rule.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine forwarding rule.
               &quot;matchedPortRange&quot;: &quot;A String&quot;, # Port range defined in the forwarding rule that matches the test.
               &quot;matchedProtocol&quot;: &quot;A String&quot;, # Protocol defined in the forwarding rule that matches the test.
@@ -223,13 +225,13 @@
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine forwarding rule.
               &quot;vip&quot;: &quot;A String&quot;, # VIP of the forwarding rule.
             },
-            &quot;gkeMaster&quot;: { # For display only. Metadata associated with a Google Kubernetes Engine cluster master. # Display info of a Google Kubernetes Engine cluster master.
-              &quot;clusterNetworkUri&quot;: &quot;A String&quot;, # URI of a Google Kubernetes Engine cluster network.
-              &quot;clusterUri&quot;: &quot;A String&quot;, # URI of a Google Kubernetes Engine cluster.
-              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a Google Kubernetes Engine cluster master.
-              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a Google Kubernetes Engine cluster master.
+            &quot;gkeMaster&quot;: { # For display only. Metadata associated with a Google Kubernetes Engine (GKE) cluster master. # Display information of a Google Kubernetes Engine cluster master.
+              &quot;clusterNetworkUri&quot;: &quot;A String&quot;, # URI of a GKE cluster network.
+              &quot;clusterUri&quot;: &quot;A String&quot;, # URI of a GKE cluster.
+              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a GKE cluster master.
+              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a GKE cluster master.
             },
-            &quot;instance&quot;: { # For display only. Metadata associated with a Compute Engine instance. # Display info of a Compute Engine instance.
+            &quot;instance&quot;: { # For display only. Metadata associated with a Compute Engine instance. # Display information of a Compute Engine instance.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine instance.
               &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of the network interface.
               &quot;interface&quot;: &quot;A String&quot;, # Name of the network interface of a Compute Engine instance.
@@ -241,7 +243,7 @@
               &quot;serviceAccount&quot;: &quot;A String&quot;, # Service account authorized for the instance.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine instance.
             },
-            &quot;loadBalancer&quot;: { # For display only. Metadata associated with a load balancer. # Display info of the load balancers.
+            &quot;loadBalancer&quot;: { # For display only. Metadata associated with a load balancer. # Display information of the load balancers.
               &quot;backendType&quot;: &quot;A String&quot;, # Type of load balancer&#x27;s backend configuration.
               &quot;backendUri&quot;: &quot;A String&quot;, # Backend configuration URI.
               &quot;backends&quot;: [ # Information for the loadbalancer backends.
@@ -260,13 +262,13 @@
               &quot;healthCheckUri&quot;: &quot;A String&quot;, # URI of the health check for the load balancer.
               &quot;loadBalancerType&quot;: &quot;A String&quot;, # Type of the load balancer.
             },
-            &quot;network&quot;: { # For display only. Metadata associated with a Compute Engine network. # Display info of a GCP network.
+            &quot;network&quot;: { # For display only. Metadata associated with a Compute Engine network. # Display information of a Google Cloud network.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine network.
               &quot;matchedIpRange&quot;: &quot;A String&quot;, # The IP range that matches the test.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine network.
             },
             &quot;projectId&quot;: &quot;A String&quot;, # Project ID that contains the configuration this step is validating.
-            &quot;route&quot;: { # For display only. Metadata associated with a Compute Engine route. # Display info of a Compute Engine route.
+            &quot;route&quot;: { # For display only. Metadata associated with a Compute Engine route. # Display information of a Compute Engine route.
               &quot;destIpRange&quot;: &quot;A String&quot;, # Destination IP range of the route.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine route.
               &quot;instanceTags&quot;: [ # Instance tags of the route.
@@ -280,18 +282,18 @@
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine route. Dynamic route from cloud router does not have a URI. Advertised route from Google Cloud VPC to on-premises network also does not have a URI.
             },
             &quot;state&quot;: &quot;A String&quot;, # Each step is in one of the pre-defined states.
-            &quot;vpnGateway&quot;: { # For display only. Metadata associated with a Compute Engine VPN gateway. # Display info of a Compute Engine VPN gateway.
+            &quot;vpnGateway&quot;: { # For display only. Metadata associated with a Compute Engine VPN gateway. # Display information of a Compute Engine VPN gateway.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a VPN gateway.
               &quot;ipAddress&quot;: &quot;A String&quot;, # IP address of the VPN gateway.
               &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Compute Engine network where the VPN gateway is configured.
-              &quot;region&quot;: &quot;A String&quot;, # Name of a GCP region where this VPN gateway is configured.
+              &quot;region&quot;: &quot;A String&quot;, # Name of a Google Cloud region where this VPN gateway is configured.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a VPN gateway.
               &quot;vpnTunnelUri&quot;: &quot;A String&quot;, # A VPN tunnel that is associated with this VPN gateway. There may be multiple VPN tunnels configured on a VPN gateway, and only the one relevant to the test is displayed.
             },
-            &quot;vpnTunnel&quot;: { # For display only. Metadata associated with a Compute Engine VPN tunnel. # Display info of a Compute Engine VPN tunnel.
+            &quot;vpnTunnel&quot;: { # For display only. Metadata associated with a Compute Engine VPN tunnel. # Display information of a Compute Engine VPN tunnel.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a VPN tunnel.
               &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Compute Engine network where the VPN tunnel is configured.
-              &quot;region&quot;: &quot;A String&quot;, # Name of a GCP region where this VPN tunnel is configured.
+              &quot;region&quot;: &quot;A String&quot;, # Name of a Google Cloud region where this VPN tunnel is configured.
               &quot;remoteGateway&quot;: &quot;A String&quot;, # URI of a VPN gateway at remote end of the tunnel.
               &quot;remoteGatewayIp&quot;: &quot;A String&quot;, # Remote VPN gateway&#x27;s IP address.
               &quot;routingType&quot;: &quot;A String&quot;, # Type of the routing policy.
@@ -309,6 +311,8 @@
     &quot;A String&quot;,
   ],
   &quot;source&quot;: { # Source or destination of the Connectivity Test. # Required. Source specification of the Connectivity Test. You can use a combination of source IP address, virtual machine (VM) instance, or Compute Engine network to uniquely identify the source location. Examples: If the source IP address is an internal IP address within a Google Cloud Virtual Private Cloud (VPC) network, then you must also specify the VPC network. Otherwise, specify the VM instance, which already contains its internal IP address and VPC network information. If the source of the test is within an on-premises network, then you must provide the destination VPC network. If the source endpoint is a Compute Engine VM instance with multiple network interfaces, the instance itself is not sufficient to identify the endpoint. So, you must also specify the source IP address or VPC network. A reachability analysis proceeds even if the source location is ambiguous. However, the test result may include endpoints that you don&#x27;t intend to test.
+    &quot;cloudSqlInstance&quot;: &quot;A String&quot;, # A [Cloud SQL](https://cloud.google.com/sql) instance URI.
+    &quot;gkeMasterCluster&quot;: &quot;A String&quot;, # A cluster URI for [Google Kubernetes Engine master](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture).
     &quot;instance&quot;: &quot;A String&quot;, # A Compute Engine instance URI.
     &quot;ipAddress&quot;: &quot;A String&quot;, # The IP address of the endpoint, which can be an external or internal IP. An IPv6 address is only allowed when the test&#x27;s destination is a [global load balancer VIP](/load-balancing/docs/load-balancing-overview).
     &quot;network&quot;: &quot;A String&quot;, # A Compute Engine network URI.
@@ -402,6 +406,8 @@
   &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time the test was created.
   &quot;description&quot;: &quot;A String&quot;, # The user-supplied description of the Connectivity Test. Maximum of 512 characters.
   &quot;destination&quot;: { # Source or destination of the Connectivity Test. # Required. Destination specification of the Connectivity Test. You can use a combination of destination IP address, Compute Engine VM instance, or VPC network to uniquely identify the destination location. Even if the destination IP address is not unique, the source IP location is unique. Usually, the analysis can infer the destination endpoint from route information. If the destination you specify is a VM instance and the instance has multiple network interfaces, then you must also specify either a destination IP address or VPC network to identify the destination interface. A reachability analysis proceeds even if the destination location is ambiguous. However, the result can include endpoints that you don&#x27;t intend to test.
+    &quot;cloudSqlInstance&quot;: &quot;A String&quot;, # A [Cloud SQL](https://cloud.google.com/sql) instance URI.
+    &quot;gkeMasterCluster&quot;: &quot;A String&quot;, # A cluster URI for [Google Kubernetes Engine master](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture).
     &quot;instance&quot;: &quot;A String&quot;, # A Compute Engine instance URI.
     &quot;ipAddress&quot;: &quot;A String&quot;, # The IP address of the endpoint, which can be an external or internal IP. An IPv6 address is only allowed when the test&#x27;s destination is a [global load balancer VIP](/load-balancing/docs/load-balancing-overview).
     &quot;network&quot;: &quot;A String&quot;, # A Compute Engine network URI.
@@ -439,29 +445,29 @@
         },
         &quot;steps&quot;: [ # A trace of a test contains multiple steps from the initial state to the final state (delivered, dropped, forwarded, or aborted). The steps are ordered by the processing sequence within the simulated network state machine. It is critical to preserve the order of the steps and avoid reordering or sorting them.
           { # A simulated forwarding path is composed of multiple steps. Each step has a well-defined state and an associated configuration.
-            &quot;abort&quot;: { # Details of the final state &quot;abort&quot; and associated resource. # Display info of the final state &quot;abort&quot; and reason.
+            &quot;abort&quot;: { # Details of the final state &quot;abort&quot; and associated resource. # Display information of the final state &quot;abort&quot; and reason.
               &quot;cause&quot;: &quot;A String&quot;, # Causes that the analysis is aborted.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that caused the abort.
             },
             &quot;causesDrop&quot;: True or False, # This is a step that leads to the final state Drop.
-            &quot;cloudSqlInstance&quot;: { # For display only. Metadata associated with a Cloud SQL instance. # Display info of a Cloud SQL instance.
+            &quot;cloudSqlInstance&quot;: { # For display only. Metadata associated with a Cloud SQL instance. # Display information of a Cloud SQL instance.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Cloud SQL instance.
-              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of Cloud SQL instance.
-              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of Cloud SQL instance.
-              &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance network or empty string if instance does not have one.
+              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a Cloud SQL instance.
+              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a Cloud SQL instance.
+              &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance network or empty string if the instance does not have one.
               &quot;region&quot;: &quot;A String&quot;, # Region in which the Cloud SQL instance is running.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance.
             },
-            &quot;deliver&quot;: { # Details of the final state &quot;deliver&quot; and associated resource. # Display info of the final state &quot;deliver&quot; and reason.
+            &quot;deliver&quot;: { # Details of the final state &quot;deliver&quot; and associated resource. # Display information of the final state &quot;deliver&quot; and reason.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that the packet is delivered to.
               &quot;target&quot;: &quot;A String&quot;, # Target type where the packet is delivered to.
             },
             &quot;description&quot;: &quot;A String&quot;, # A description of the step. Usually this is a summary of the state.
-            &quot;drop&quot;: { # Details of the final state &quot;drop&quot; and associated resource. # Display info of the final state &quot;drop&quot; and reason.
+            &quot;drop&quot;: { # Details of the final state &quot;drop&quot; and associated resource. # Display information of the final state &quot;drop&quot; and reason.
               &quot;cause&quot;: &quot;A String&quot;, # Cause that the packet is dropped.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that caused the drop.
             },
-            &quot;endpoint&quot;: { # For display only. The specification of the endpoints for the test. EndpointInfo is derived from source and destination Endpoint and validated by the backend data plane model. # Display info of the source and destination under analysis. The endpoint info in an intermediate state may differ with the initial input, as it might be modified by state like NAT, or Connection Proxy.
+            &quot;endpoint&quot;: { # For display only. The specification of the endpoints for the test. EndpointInfo is derived from source and destination Endpoint and validated by the backend data plane model. # Display information of the source and destination under analysis. The endpoint information in an intermediate state may differ with the initial input, as it might be modified by state like NAT, or Connection Proxy.
               &quot;destinationIp&quot;: &quot;A String&quot;, # Destination IP address.
               &quot;destinationNetworkUri&quot;: &quot;A String&quot;, # URI of the network where this packet is sent to.
               &quot;destinationPort&quot;: 42, # Destination port. Only valid when protocol is TCP or UDP.
@@ -470,7 +476,7 @@
               &quot;sourceNetworkUri&quot;: &quot;A String&quot;, # URI of the network where this packet originates from.
               &quot;sourcePort&quot;: 42, # Source port. Only valid when protocol is TCP or UDP.
             },
-            &quot;firewall&quot;: { # For display only. Metadata associated with a VPC firewall rule, an implied VPC firewall rule, or a hierarchical firewall policy rule. # Display info of a Compute Engine firewall rule.
+            &quot;firewall&quot;: { # For display only. Metadata associated with a VPC firewall rule, an implied VPC firewall rule, or a hierarchical firewall policy rule. # Display information of a Compute Engine firewall rule.
               &quot;action&quot;: &quot;A String&quot;, # Possible values: ALLOW, DENY
               &quot;direction&quot;: &quot;A String&quot;, # Possible values: INGRESS, EGRESS
               &quot;displayName&quot;: &quot;A String&quot;, # The display name of the VPC firewall rule. This field is not applicable to hierarchical firewall policy rules.
@@ -486,11 +492,11 @@
               ],
               &quot;uri&quot;: &quot;A String&quot;, # The URI of the VPC firewall rule. This field is not applicable to implied firewall rules or hierarchical firewall policy rules.
             },
-            &quot;forward&quot;: { # Details of the final state &quot;forward&quot; and associated resource. # Display info of the final state &quot;forward&quot; and reason.
+            &quot;forward&quot;: { # Details of the final state &quot;forward&quot; and associated resource. # Display information of the final state &quot;forward&quot; and reason.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that the packet is forwarded to.
               &quot;target&quot;: &quot;A String&quot;, # Target type where this packet is forwarded to.
             },
-            &quot;forwardingRule&quot;: { # For display only. Metadata associated with a Compute Engine forwarding rule. # Display info of a Compute Engine forwarding rule.
+            &quot;forwardingRule&quot;: { # For display only. Metadata associated with a Compute Engine forwarding rule. # Display information of a Compute Engine forwarding rule.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine forwarding rule.
               &quot;matchedPortRange&quot;: &quot;A String&quot;, # Port range defined in the forwarding rule that matches the test.
               &quot;matchedProtocol&quot;: &quot;A String&quot;, # Protocol defined in the forwarding rule that matches the test.
@@ -499,13 +505,13 @@
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine forwarding rule.
               &quot;vip&quot;: &quot;A String&quot;, # VIP of the forwarding rule.
             },
-            &quot;gkeMaster&quot;: { # For display only. Metadata associated with a Google Kubernetes Engine cluster master. # Display info of a Google Kubernetes Engine cluster master.
-              &quot;clusterNetworkUri&quot;: &quot;A String&quot;, # URI of a Google Kubernetes Engine cluster network.
-              &quot;clusterUri&quot;: &quot;A String&quot;, # URI of a Google Kubernetes Engine cluster.
-              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a Google Kubernetes Engine cluster master.
-              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a Google Kubernetes Engine cluster master.
+            &quot;gkeMaster&quot;: { # For display only. Metadata associated with a Google Kubernetes Engine (GKE) cluster master. # Display information of a Google Kubernetes Engine cluster master.
+              &quot;clusterNetworkUri&quot;: &quot;A String&quot;, # URI of a GKE cluster network.
+              &quot;clusterUri&quot;: &quot;A String&quot;, # URI of a GKE cluster.
+              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a GKE cluster master.
+              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a GKE cluster master.
             },
-            &quot;instance&quot;: { # For display only. Metadata associated with a Compute Engine instance. # Display info of a Compute Engine instance.
+            &quot;instance&quot;: { # For display only. Metadata associated with a Compute Engine instance. # Display information of a Compute Engine instance.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine instance.
               &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of the network interface.
               &quot;interface&quot;: &quot;A String&quot;, # Name of the network interface of a Compute Engine instance.
@@ -517,7 +523,7 @@
               &quot;serviceAccount&quot;: &quot;A String&quot;, # Service account authorized for the instance.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine instance.
             },
-            &quot;loadBalancer&quot;: { # For display only. Metadata associated with a load balancer. # Display info of the load balancers.
+            &quot;loadBalancer&quot;: { # For display only. Metadata associated with a load balancer. # Display information of the load balancers.
               &quot;backendType&quot;: &quot;A String&quot;, # Type of load balancer&#x27;s backend configuration.
               &quot;backendUri&quot;: &quot;A String&quot;, # Backend configuration URI.
               &quot;backends&quot;: [ # Information for the loadbalancer backends.
@@ -536,13 +542,13 @@
               &quot;healthCheckUri&quot;: &quot;A String&quot;, # URI of the health check for the load balancer.
               &quot;loadBalancerType&quot;: &quot;A String&quot;, # Type of the load balancer.
             },
-            &quot;network&quot;: { # For display only. Metadata associated with a Compute Engine network. # Display info of a GCP network.
+            &quot;network&quot;: { # For display only. Metadata associated with a Compute Engine network. # Display information of a Google Cloud network.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine network.
               &quot;matchedIpRange&quot;: &quot;A String&quot;, # The IP range that matches the test.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine network.
             },
             &quot;projectId&quot;: &quot;A String&quot;, # Project ID that contains the configuration this step is validating.
-            &quot;route&quot;: { # For display only. Metadata associated with a Compute Engine route. # Display info of a Compute Engine route.
+            &quot;route&quot;: { # For display only. Metadata associated with a Compute Engine route. # Display information of a Compute Engine route.
               &quot;destIpRange&quot;: &quot;A String&quot;, # Destination IP range of the route.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine route.
               &quot;instanceTags&quot;: [ # Instance tags of the route.
@@ -556,18 +562,18 @@
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine route. Dynamic route from cloud router does not have a URI. Advertised route from Google Cloud VPC to on-premises network also does not have a URI.
             },
             &quot;state&quot;: &quot;A String&quot;, # Each step is in one of the pre-defined states.
-            &quot;vpnGateway&quot;: { # For display only. Metadata associated with a Compute Engine VPN gateway. # Display info of a Compute Engine VPN gateway.
+            &quot;vpnGateway&quot;: { # For display only. Metadata associated with a Compute Engine VPN gateway. # Display information of a Compute Engine VPN gateway.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a VPN gateway.
               &quot;ipAddress&quot;: &quot;A String&quot;, # IP address of the VPN gateway.
               &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Compute Engine network where the VPN gateway is configured.
-              &quot;region&quot;: &quot;A String&quot;, # Name of a GCP region where this VPN gateway is configured.
+              &quot;region&quot;: &quot;A String&quot;, # Name of a Google Cloud region where this VPN gateway is configured.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a VPN gateway.
               &quot;vpnTunnelUri&quot;: &quot;A String&quot;, # A VPN tunnel that is associated with this VPN gateway. There may be multiple VPN tunnels configured on a VPN gateway, and only the one relevant to the test is displayed.
             },
-            &quot;vpnTunnel&quot;: { # For display only. Metadata associated with a Compute Engine VPN tunnel. # Display info of a Compute Engine VPN tunnel.
+            &quot;vpnTunnel&quot;: { # For display only. Metadata associated with a Compute Engine VPN tunnel. # Display information of a Compute Engine VPN tunnel.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a VPN tunnel.
               &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Compute Engine network where the VPN tunnel is configured.
-              &quot;region&quot;: &quot;A String&quot;, # Name of a GCP region where this VPN tunnel is configured.
+              &quot;region&quot;: &quot;A String&quot;, # Name of a Google Cloud region where this VPN tunnel is configured.
               &quot;remoteGateway&quot;: &quot;A String&quot;, # URI of a VPN gateway at remote end of the tunnel.
               &quot;remoteGatewayIp&quot;: &quot;A String&quot;, # Remote VPN gateway&#x27;s IP address.
               &quot;routingType&quot;: &quot;A String&quot;, # Type of the routing policy.
@@ -585,6 +591,8 @@
     &quot;A String&quot;,
   ],
   &quot;source&quot;: { # Source or destination of the Connectivity Test. # Required. Source specification of the Connectivity Test. You can use a combination of source IP address, virtual machine (VM) instance, or Compute Engine network to uniquely identify the source location. Examples: If the source IP address is an internal IP address within a Google Cloud Virtual Private Cloud (VPC) network, then you must also specify the VPC network. Otherwise, specify the VM instance, which already contains its internal IP address and VPC network information. If the source of the test is within an on-premises network, then you must provide the destination VPC network. If the source endpoint is a Compute Engine VM instance with multiple network interfaces, the instance itself is not sufficient to identify the endpoint. So, you must also specify the source IP address or VPC network. A reachability analysis proceeds even if the source location is ambiguous. However, the test result may include endpoints that you don&#x27;t intend to test.
+    &quot;cloudSqlInstance&quot;: &quot;A String&quot;, # A [Cloud SQL](https://cloud.google.com/sql) instance URI.
+    &quot;gkeMasterCluster&quot;: &quot;A String&quot;, # A cluster URI for [Google Kubernetes Engine master](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture).
     &quot;instance&quot;: &quot;A String&quot;, # A Compute Engine instance URI.
     &quot;ipAddress&quot;: &quot;A String&quot;, # The IP address of the endpoint, which can be an external or internal IP. An IPv6 address is only allowed when the test&#x27;s destination is a [global load balancer VIP](/load-balancing/docs/load-balancing-overview).
     &quot;network&quot;: &quot;A String&quot;, # A Compute Engine network URI.
@@ -669,6 +677,8 @@
       &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time the test was created.
       &quot;description&quot;: &quot;A String&quot;, # The user-supplied description of the Connectivity Test. Maximum of 512 characters.
       &quot;destination&quot;: { # Source or destination of the Connectivity Test. # Required. Destination specification of the Connectivity Test. You can use a combination of destination IP address, Compute Engine VM instance, or VPC network to uniquely identify the destination location. Even if the destination IP address is not unique, the source IP location is unique. Usually, the analysis can infer the destination endpoint from route information. If the destination you specify is a VM instance and the instance has multiple network interfaces, then you must also specify either a destination IP address or VPC network to identify the destination interface. A reachability analysis proceeds even if the destination location is ambiguous. However, the result can include endpoints that you don&#x27;t intend to test.
+        &quot;cloudSqlInstance&quot;: &quot;A String&quot;, # A [Cloud SQL](https://cloud.google.com/sql) instance URI.
+        &quot;gkeMasterCluster&quot;: &quot;A String&quot;, # A cluster URI for [Google Kubernetes Engine master](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture).
         &quot;instance&quot;: &quot;A String&quot;, # A Compute Engine instance URI.
         &quot;ipAddress&quot;: &quot;A String&quot;, # The IP address of the endpoint, which can be an external or internal IP. An IPv6 address is only allowed when the test&#x27;s destination is a [global load balancer VIP](/load-balancing/docs/load-balancing-overview).
         &quot;network&quot;: &quot;A String&quot;, # A Compute Engine network URI.
@@ -706,29 +716,29 @@
             },
             &quot;steps&quot;: [ # A trace of a test contains multiple steps from the initial state to the final state (delivered, dropped, forwarded, or aborted). The steps are ordered by the processing sequence within the simulated network state machine. It is critical to preserve the order of the steps and avoid reordering or sorting them.
               { # A simulated forwarding path is composed of multiple steps. Each step has a well-defined state and an associated configuration.
-                &quot;abort&quot;: { # Details of the final state &quot;abort&quot; and associated resource. # Display info of the final state &quot;abort&quot; and reason.
+                &quot;abort&quot;: { # Details of the final state &quot;abort&quot; and associated resource. # Display information of the final state &quot;abort&quot; and reason.
                   &quot;cause&quot;: &quot;A String&quot;, # Causes that the analysis is aborted.
                   &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that caused the abort.
                 },
                 &quot;causesDrop&quot;: True or False, # This is a step that leads to the final state Drop.
-                &quot;cloudSqlInstance&quot;: { # For display only. Metadata associated with a Cloud SQL instance. # Display info of a Cloud SQL instance.
+                &quot;cloudSqlInstance&quot;: { # For display only. Metadata associated with a Cloud SQL instance. # Display information of a Cloud SQL instance.
                   &quot;displayName&quot;: &quot;A String&quot;, # Name of a Cloud SQL instance.
-                  &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of Cloud SQL instance.
-                  &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of Cloud SQL instance.
-                  &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance network or empty string if instance does not have one.
+                  &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a Cloud SQL instance.
+                  &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a Cloud SQL instance.
+                  &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance network or empty string if the instance does not have one.
                   &quot;region&quot;: &quot;A String&quot;, # Region in which the Cloud SQL instance is running.
                   &quot;uri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance.
                 },
-                &quot;deliver&quot;: { # Details of the final state &quot;deliver&quot; and associated resource. # Display info of the final state &quot;deliver&quot; and reason.
+                &quot;deliver&quot;: { # Details of the final state &quot;deliver&quot; and associated resource. # Display information of the final state &quot;deliver&quot; and reason.
                   &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that the packet is delivered to.
                   &quot;target&quot;: &quot;A String&quot;, # Target type where the packet is delivered to.
                 },
                 &quot;description&quot;: &quot;A String&quot;, # A description of the step. Usually this is a summary of the state.
-                &quot;drop&quot;: { # Details of the final state &quot;drop&quot; and associated resource. # Display info of the final state &quot;drop&quot; and reason.
+                &quot;drop&quot;: { # Details of the final state &quot;drop&quot; and associated resource. # Display information of the final state &quot;drop&quot; and reason.
                   &quot;cause&quot;: &quot;A String&quot;, # Cause that the packet is dropped.
                   &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that caused the drop.
                 },
-                &quot;endpoint&quot;: { # For display only. The specification of the endpoints for the test. EndpointInfo is derived from source and destination Endpoint and validated by the backend data plane model. # Display info of the source and destination under analysis. The endpoint info in an intermediate state may differ with the initial input, as it might be modified by state like NAT, or Connection Proxy.
+                &quot;endpoint&quot;: { # For display only. The specification of the endpoints for the test. EndpointInfo is derived from source and destination Endpoint and validated by the backend data plane model. # Display information of the source and destination under analysis. The endpoint information in an intermediate state may differ with the initial input, as it might be modified by state like NAT, or Connection Proxy.
                   &quot;destinationIp&quot;: &quot;A String&quot;, # Destination IP address.
                   &quot;destinationNetworkUri&quot;: &quot;A String&quot;, # URI of the network where this packet is sent to.
                   &quot;destinationPort&quot;: 42, # Destination port. Only valid when protocol is TCP or UDP.
@@ -737,7 +747,7 @@
                   &quot;sourceNetworkUri&quot;: &quot;A String&quot;, # URI of the network where this packet originates from.
                   &quot;sourcePort&quot;: 42, # Source port. Only valid when protocol is TCP or UDP.
                 },
-                &quot;firewall&quot;: { # For display only. Metadata associated with a VPC firewall rule, an implied VPC firewall rule, or a hierarchical firewall policy rule. # Display info of a Compute Engine firewall rule.
+                &quot;firewall&quot;: { # For display only. Metadata associated with a VPC firewall rule, an implied VPC firewall rule, or a hierarchical firewall policy rule. # Display information of a Compute Engine firewall rule.
                   &quot;action&quot;: &quot;A String&quot;, # Possible values: ALLOW, DENY
                   &quot;direction&quot;: &quot;A String&quot;, # Possible values: INGRESS, EGRESS
                   &quot;displayName&quot;: &quot;A String&quot;, # The display name of the VPC firewall rule. This field is not applicable to hierarchical firewall policy rules.
@@ -753,11 +763,11 @@
                   ],
                   &quot;uri&quot;: &quot;A String&quot;, # The URI of the VPC firewall rule. This field is not applicable to implied firewall rules or hierarchical firewall policy rules.
                 },
-                &quot;forward&quot;: { # Details of the final state &quot;forward&quot; and associated resource. # Display info of the final state &quot;forward&quot; and reason.
+                &quot;forward&quot;: { # Details of the final state &quot;forward&quot; and associated resource. # Display information of the final state &quot;forward&quot; and reason.
                   &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that the packet is forwarded to.
                   &quot;target&quot;: &quot;A String&quot;, # Target type where this packet is forwarded to.
                 },
-                &quot;forwardingRule&quot;: { # For display only. Metadata associated with a Compute Engine forwarding rule. # Display info of a Compute Engine forwarding rule.
+                &quot;forwardingRule&quot;: { # For display only. Metadata associated with a Compute Engine forwarding rule. # Display information of a Compute Engine forwarding rule.
                   &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine forwarding rule.
                   &quot;matchedPortRange&quot;: &quot;A String&quot;, # Port range defined in the forwarding rule that matches the test.
                   &quot;matchedProtocol&quot;: &quot;A String&quot;, # Protocol defined in the forwarding rule that matches the test.
@@ -766,13 +776,13 @@
                   &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine forwarding rule.
                   &quot;vip&quot;: &quot;A String&quot;, # VIP of the forwarding rule.
                 },
-                &quot;gkeMaster&quot;: { # For display only. Metadata associated with a Google Kubernetes Engine cluster master. # Display info of a Google Kubernetes Engine cluster master.
-                  &quot;clusterNetworkUri&quot;: &quot;A String&quot;, # URI of a Google Kubernetes Engine cluster network.
-                  &quot;clusterUri&quot;: &quot;A String&quot;, # URI of a Google Kubernetes Engine cluster.
-                  &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a Google Kubernetes Engine cluster master.
-                  &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a Google Kubernetes Engine cluster master.
+                &quot;gkeMaster&quot;: { # For display only. Metadata associated with a Google Kubernetes Engine (GKE) cluster master. # Display information of a Google Kubernetes Engine cluster master.
+                  &quot;clusterNetworkUri&quot;: &quot;A String&quot;, # URI of a GKE cluster network.
+                  &quot;clusterUri&quot;: &quot;A String&quot;, # URI of a GKE cluster.
+                  &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a GKE cluster master.
+                  &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a GKE cluster master.
                 },
-                &quot;instance&quot;: { # For display only. Metadata associated with a Compute Engine instance. # Display info of a Compute Engine instance.
+                &quot;instance&quot;: { # For display only. Metadata associated with a Compute Engine instance. # Display information of a Compute Engine instance.
                   &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine instance.
                   &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of the network interface.
                   &quot;interface&quot;: &quot;A String&quot;, # Name of the network interface of a Compute Engine instance.
@@ -784,7 +794,7 @@
                   &quot;serviceAccount&quot;: &quot;A String&quot;, # Service account authorized for the instance.
                   &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine instance.
                 },
-                &quot;loadBalancer&quot;: { # For display only. Metadata associated with a load balancer. # Display info of the load balancers.
+                &quot;loadBalancer&quot;: { # For display only. Metadata associated with a load balancer. # Display information of the load balancers.
                   &quot;backendType&quot;: &quot;A String&quot;, # Type of load balancer&#x27;s backend configuration.
                   &quot;backendUri&quot;: &quot;A String&quot;, # Backend configuration URI.
                   &quot;backends&quot;: [ # Information for the loadbalancer backends.
@@ -803,13 +813,13 @@
                   &quot;healthCheckUri&quot;: &quot;A String&quot;, # URI of the health check for the load balancer.
                   &quot;loadBalancerType&quot;: &quot;A String&quot;, # Type of the load balancer.
                 },
-                &quot;network&quot;: { # For display only. Metadata associated with a Compute Engine network. # Display info of a GCP network.
+                &quot;network&quot;: { # For display only. Metadata associated with a Compute Engine network. # Display information of a Google Cloud network.
                   &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine network.
                   &quot;matchedIpRange&quot;: &quot;A String&quot;, # The IP range that matches the test.
                   &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine network.
                 },
                 &quot;projectId&quot;: &quot;A String&quot;, # Project ID that contains the configuration this step is validating.
-                &quot;route&quot;: { # For display only. Metadata associated with a Compute Engine route. # Display info of a Compute Engine route.
+                &quot;route&quot;: { # For display only. Metadata associated with a Compute Engine route. # Display information of a Compute Engine route.
                   &quot;destIpRange&quot;: &quot;A String&quot;, # Destination IP range of the route.
                   &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine route.
                   &quot;instanceTags&quot;: [ # Instance tags of the route.
@@ -823,18 +833,18 @@
                   &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine route. Dynamic route from cloud router does not have a URI. Advertised route from Google Cloud VPC to on-premises network also does not have a URI.
                 },
                 &quot;state&quot;: &quot;A String&quot;, # Each step is in one of the pre-defined states.
-                &quot;vpnGateway&quot;: { # For display only. Metadata associated with a Compute Engine VPN gateway. # Display info of a Compute Engine VPN gateway.
+                &quot;vpnGateway&quot;: { # For display only. Metadata associated with a Compute Engine VPN gateway. # Display information of a Compute Engine VPN gateway.
                   &quot;displayName&quot;: &quot;A String&quot;, # Name of a VPN gateway.
                   &quot;ipAddress&quot;: &quot;A String&quot;, # IP address of the VPN gateway.
                   &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Compute Engine network where the VPN gateway is configured.
-                  &quot;region&quot;: &quot;A String&quot;, # Name of a GCP region where this VPN gateway is configured.
+                  &quot;region&quot;: &quot;A String&quot;, # Name of a Google Cloud region where this VPN gateway is configured.
                   &quot;uri&quot;: &quot;A String&quot;, # URI of a VPN gateway.
                   &quot;vpnTunnelUri&quot;: &quot;A String&quot;, # A VPN tunnel that is associated with this VPN gateway. There may be multiple VPN tunnels configured on a VPN gateway, and only the one relevant to the test is displayed.
                 },
-                &quot;vpnTunnel&quot;: { # For display only. Metadata associated with a Compute Engine VPN tunnel. # Display info of a Compute Engine VPN tunnel.
+                &quot;vpnTunnel&quot;: { # For display only. Metadata associated with a Compute Engine VPN tunnel. # Display information of a Compute Engine VPN tunnel.
                   &quot;displayName&quot;: &quot;A String&quot;, # Name of a VPN tunnel.
                   &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Compute Engine network where the VPN tunnel is configured.
-                  &quot;region&quot;: &quot;A String&quot;, # Name of a GCP region where this VPN tunnel is configured.
+                  &quot;region&quot;: &quot;A String&quot;, # Name of a Google Cloud region where this VPN tunnel is configured.
                   &quot;remoteGateway&quot;: &quot;A String&quot;, # URI of a VPN gateway at remote end of the tunnel.
                   &quot;remoteGatewayIp&quot;: &quot;A String&quot;, # Remote VPN gateway&#x27;s IP address.
                   &quot;routingType&quot;: &quot;A String&quot;, # Type of the routing policy.
@@ -852,6 +862,8 @@
         &quot;A String&quot;,
       ],
       &quot;source&quot;: { # Source or destination of the Connectivity Test. # Required. Source specification of the Connectivity Test. You can use a combination of source IP address, virtual machine (VM) instance, or Compute Engine network to uniquely identify the source location. Examples: If the source IP address is an internal IP address within a Google Cloud Virtual Private Cloud (VPC) network, then you must also specify the VPC network. Otherwise, specify the VM instance, which already contains its internal IP address and VPC network information. If the source of the test is within an on-premises network, then you must provide the destination VPC network. If the source endpoint is a Compute Engine VM instance with multiple network interfaces, the instance itself is not sufficient to identify the endpoint. So, you must also specify the source IP address or VPC network. A reachability analysis proceeds even if the source location is ambiguous. However, the test result may include endpoints that you don&#x27;t intend to test.
+        &quot;cloudSqlInstance&quot;: &quot;A String&quot;, # A [Cloud SQL](https://cloud.google.com/sql) instance URI.
+        &quot;gkeMasterCluster&quot;: &quot;A String&quot;, # A cluster URI for [Google Kubernetes Engine master](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture).
         &quot;instance&quot;: &quot;A String&quot;, # A Compute Engine instance URI.
         &quot;ipAddress&quot;: &quot;A String&quot;, # The IP address of the endpoint, which can be an external or internal IP. An IPv6 address is only allowed when the test&#x27;s destination is a [global load balancer VIP](/load-balancing/docs/load-balancing-overview).
         &quot;network&quot;: &quot;A String&quot;, # A Compute Engine network URI.
@@ -895,6 +907,8 @@
   &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time the test was created.
   &quot;description&quot;: &quot;A String&quot;, # The user-supplied description of the Connectivity Test. Maximum of 512 characters.
   &quot;destination&quot;: { # Source or destination of the Connectivity Test. # Required. Destination specification of the Connectivity Test. You can use a combination of destination IP address, Compute Engine VM instance, or VPC network to uniquely identify the destination location. Even if the destination IP address is not unique, the source IP location is unique. Usually, the analysis can infer the destination endpoint from route information. If the destination you specify is a VM instance and the instance has multiple network interfaces, then you must also specify either a destination IP address or VPC network to identify the destination interface. A reachability analysis proceeds even if the destination location is ambiguous. However, the result can include endpoints that you don&#x27;t intend to test.
+    &quot;cloudSqlInstance&quot;: &quot;A String&quot;, # A [Cloud SQL](https://cloud.google.com/sql) instance URI.
+    &quot;gkeMasterCluster&quot;: &quot;A String&quot;, # A cluster URI for [Google Kubernetes Engine master](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture).
     &quot;instance&quot;: &quot;A String&quot;, # A Compute Engine instance URI.
     &quot;ipAddress&quot;: &quot;A String&quot;, # The IP address of the endpoint, which can be an external or internal IP. An IPv6 address is only allowed when the test&#x27;s destination is a [global load balancer VIP](/load-balancing/docs/load-balancing-overview).
     &quot;network&quot;: &quot;A String&quot;, # A Compute Engine network URI.
@@ -932,29 +946,29 @@
         },
         &quot;steps&quot;: [ # A trace of a test contains multiple steps from the initial state to the final state (delivered, dropped, forwarded, or aborted). The steps are ordered by the processing sequence within the simulated network state machine. It is critical to preserve the order of the steps and avoid reordering or sorting them.
           { # A simulated forwarding path is composed of multiple steps. Each step has a well-defined state and an associated configuration.
-            &quot;abort&quot;: { # Details of the final state &quot;abort&quot; and associated resource. # Display info of the final state &quot;abort&quot; and reason.
+            &quot;abort&quot;: { # Details of the final state &quot;abort&quot; and associated resource. # Display information of the final state &quot;abort&quot; and reason.
               &quot;cause&quot;: &quot;A String&quot;, # Causes that the analysis is aborted.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that caused the abort.
             },
             &quot;causesDrop&quot;: True or False, # This is a step that leads to the final state Drop.
-            &quot;cloudSqlInstance&quot;: { # For display only. Metadata associated with a Cloud SQL instance. # Display info of a Cloud SQL instance.
+            &quot;cloudSqlInstance&quot;: { # For display only. Metadata associated with a Cloud SQL instance. # Display information of a Cloud SQL instance.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Cloud SQL instance.
-              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of Cloud SQL instance.
-              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of Cloud SQL instance.
-              &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance network or empty string if instance does not have one.
+              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a Cloud SQL instance.
+              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a Cloud SQL instance.
+              &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance network or empty string if the instance does not have one.
               &quot;region&quot;: &quot;A String&quot;, # Region in which the Cloud SQL instance is running.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance.
             },
-            &quot;deliver&quot;: { # Details of the final state &quot;deliver&quot; and associated resource. # Display info of the final state &quot;deliver&quot; and reason.
+            &quot;deliver&quot;: { # Details of the final state &quot;deliver&quot; and associated resource. # Display information of the final state &quot;deliver&quot; and reason.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that the packet is delivered to.
               &quot;target&quot;: &quot;A String&quot;, # Target type where the packet is delivered to.
             },
             &quot;description&quot;: &quot;A String&quot;, # A description of the step. Usually this is a summary of the state.
-            &quot;drop&quot;: { # Details of the final state &quot;drop&quot; and associated resource. # Display info of the final state &quot;drop&quot; and reason.
+            &quot;drop&quot;: { # Details of the final state &quot;drop&quot; and associated resource. # Display information of the final state &quot;drop&quot; and reason.
               &quot;cause&quot;: &quot;A String&quot;, # Cause that the packet is dropped.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that caused the drop.
             },
-            &quot;endpoint&quot;: { # For display only. The specification of the endpoints for the test. EndpointInfo is derived from source and destination Endpoint and validated by the backend data plane model. # Display info of the source and destination under analysis. The endpoint info in an intermediate state may differ with the initial input, as it might be modified by state like NAT, or Connection Proxy.
+            &quot;endpoint&quot;: { # For display only. The specification of the endpoints for the test. EndpointInfo is derived from source and destination Endpoint and validated by the backend data plane model. # Display information of the source and destination under analysis. The endpoint information in an intermediate state may differ with the initial input, as it might be modified by state like NAT, or Connection Proxy.
               &quot;destinationIp&quot;: &quot;A String&quot;, # Destination IP address.
               &quot;destinationNetworkUri&quot;: &quot;A String&quot;, # URI of the network where this packet is sent to.
               &quot;destinationPort&quot;: 42, # Destination port. Only valid when protocol is TCP or UDP.
@@ -963,7 +977,7 @@
               &quot;sourceNetworkUri&quot;: &quot;A String&quot;, # URI of the network where this packet originates from.
               &quot;sourcePort&quot;: 42, # Source port. Only valid when protocol is TCP or UDP.
             },
-            &quot;firewall&quot;: { # For display only. Metadata associated with a VPC firewall rule, an implied VPC firewall rule, or a hierarchical firewall policy rule. # Display info of a Compute Engine firewall rule.
+            &quot;firewall&quot;: { # For display only. Metadata associated with a VPC firewall rule, an implied VPC firewall rule, or a hierarchical firewall policy rule. # Display information of a Compute Engine firewall rule.
               &quot;action&quot;: &quot;A String&quot;, # Possible values: ALLOW, DENY
               &quot;direction&quot;: &quot;A String&quot;, # Possible values: INGRESS, EGRESS
               &quot;displayName&quot;: &quot;A String&quot;, # The display name of the VPC firewall rule. This field is not applicable to hierarchical firewall policy rules.
@@ -979,11 +993,11 @@
               ],
               &quot;uri&quot;: &quot;A String&quot;, # The URI of the VPC firewall rule. This field is not applicable to implied firewall rules or hierarchical firewall policy rules.
             },
-            &quot;forward&quot;: { # Details of the final state &quot;forward&quot; and associated resource. # Display info of the final state &quot;forward&quot; and reason.
+            &quot;forward&quot;: { # Details of the final state &quot;forward&quot; and associated resource. # Display information of the final state &quot;forward&quot; and reason.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that the packet is forwarded to.
               &quot;target&quot;: &quot;A String&quot;, # Target type where this packet is forwarded to.
             },
-            &quot;forwardingRule&quot;: { # For display only. Metadata associated with a Compute Engine forwarding rule. # Display info of a Compute Engine forwarding rule.
+            &quot;forwardingRule&quot;: { # For display only. Metadata associated with a Compute Engine forwarding rule. # Display information of a Compute Engine forwarding rule.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine forwarding rule.
               &quot;matchedPortRange&quot;: &quot;A String&quot;, # Port range defined in the forwarding rule that matches the test.
               &quot;matchedProtocol&quot;: &quot;A String&quot;, # Protocol defined in the forwarding rule that matches the test.
@@ -992,13 +1006,13 @@
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine forwarding rule.
               &quot;vip&quot;: &quot;A String&quot;, # VIP of the forwarding rule.
             },
-            &quot;gkeMaster&quot;: { # For display only. Metadata associated with a Google Kubernetes Engine cluster master. # Display info of a Google Kubernetes Engine cluster master.
-              &quot;clusterNetworkUri&quot;: &quot;A String&quot;, # URI of a Google Kubernetes Engine cluster network.
-              &quot;clusterUri&quot;: &quot;A String&quot;, # URI of a Google Kubernetes Engine cluster.
-              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a Google Kubernetes Engine cluster master.
-              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a Google Kubernetes Engine cluster master.
+            &quot;gkeMaster&quot;: { # For display only. Metadata associated with a Google Kubernetes Engine (GKE) cluster master. # Display information of a Google Kubernetes Engine cluster master.
+              &quot;clusterNetworkUri&quot;: &quot;A String&quot;, # URI of a GKE cluster network.
+              &quot;clusterUri&quot;: &quot;A String&quot;, # URI of a GKE cluster.
+              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a GKE cluster master.
+              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a GKE cluster master.
             },
-            &quot;instance&quot;: { # For display only. Metadata associated with a Compute Engine instance. # Display info of a Compute Engine instance.
+            &quot;instance&quot;: { # For display only. Metadata associated with a Compute Engine instance. # Display information of a Compute Engine instance.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine instance.
               &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of the network interface.
               &quot;interface&quot;: &quot;A String&quot;, # Name of the network interface of a Compute Engine instance.
@@ -1010,7 +1024,7 @@
               &quot;serviceAccount&quot;: &quot;A String&quot;, # Service account authorized for the instance.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine instance.
             },
-            &quot;loadBalancer&quot;: { # For display only. Metadata associated with a load balancer. # Display info of the load balancers.
+            &quot;loadBalancer&quot;: { # For display only. Metadata associated with a load balancer. # Display information of the load balancers.
               &quot;backendType&quot;: &quot;A String&quot;, # Type of load balancer&#x27;s backend configuration.
               &quot;backendUri&quot;: &quot;A String&quot;, # Backend configuration URI.
               &quot;backends&quot;: [ # Information for the loadbalancer backends.
@@ -1029,13 +1043,13 @@
               &quot;healthCheckUri&quot;: &quot;A String&quot;, # URI of the health check for the load balancer.
               &quot;loadBalancerType&quot;: &quot;A String&quot;, # Type of the load balancer.
             },
-            &quot;network&quot;: { # For display only. Metadata associated with a Compute Engine network. # Display info of a GCP network.
+            &quot;network&quot;: { # For display only. Metadata associated with a Compute Engine network. # Display information of a Google Cloud network.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine network.
               &quot;matchedIpRange&quot;: &quot;A String&quot;, # The IP range that matches the test.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine network.
             },
             &quot;projectId&quot;: &quot;A String&quot;, # Project ID that contains the configuration this step is validating.
-            &quot;route&quot;: { # For display only. Metadata associated with a Compute Engine route. # Display info of a Compute Engine route.
+            &quot;route&quot;: { # For display only. Metadata associated with a Compute Engine route. # Display information of a Compute Engine route.
               &quot;destIpRange&quot;: &quot;A String&quot;, # Destination IP range of the route.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine route.
               &quot;instanceTags&quot;: [ # Instance tags of the route.
@@ -1049,18 +1063,18 @@
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine route. Dynamic route from cloud router does not have a URI. Advertised route from Google Cloud VPC to on-premises network also does not have a URI.
             },
             &quot;state&quot;: &quot;A String&quot;, # Each step is in one of the pre-defined states.
-            &quot;vpnGateway&quot;: { # For display only. Metadata associated with a Compute Engine VPN gateway. # Display info of a Compute Engine VPN gateway.
+            &quot;vpnGateway&quot;: { # For display only. Metadata associated with a Compute Engine VPN gateway. # Display information of a Compute Engine VPN gateway.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a VPN gateway.
               &quot;ipAddress&quot;: &quot;A String&quot;, # IP address of the VPN gateway.
               &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Compute Engine network where the VPN gateway is configured.
-              &quot;region&quot;: &quot;A String&quot;, # Name of a GCP region where this VPN gateway is configured.
+              &quot;region&quot;: &quot;A String&quot;, # Name of a Google Cloud region where this VPN gateway is configured.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a VPN gateway.
               &quot;vpnTunnelUri&quot;: &quot;A String&quot;, # A VPN tunnel that is associated with this VPN gateway. There may be multiple VPN tunnels configured on a VPN gateway, and only the one relevant to the test is displayed.
             },
-            &quot;vpnTunnel&quot;: { # For display only. Metadata associated with a Compute Engine VPN tunnel. # Display info of a Compute Engine VPN tunnel.
+            &quot;vpnTunnel&quot;: { # For display only. Metadata associated with a Compute Engine VPN tunnel. # Display information of a Compute Engine VPN tunnel.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a VPN tunnel.
               &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Compute Engine network where the VPN tunnel is configured.
-              &quot;region&quot;: &quot;A String&quot;, # Name of a GCP region where this VPN tunnel is configured.
+              &quot;region&quot;: &quot;A String&quot;, # Name of a Google Cloud region where this VPN tunnel is configured.
               &quot;remoteGateway&quot;: &quot;A String&quot;, # URI of a VPN gateway at remote end of the tunnel.
               &quot;remoteGatewayIp&quot;: &quot;A String&quot;, # Remote VPN gateway&#x27;s IP address.
               &quot;routingType&quot;: &quot;A String&quot;, # Type of the routing policy.
@@ -1078,6 +1092,8 @@
     &quot;A String&quot;,
   ],
   &quot;source&quot;: { # Source or destination of the Connectivity Test. # Required. Source specification of the Connectivity Test. You can use a combination of source IP address, virtual machine (VM) instance, or Compute Engine network to uniquely identify the source location. Examples: If the source IP address is an internal IP address within a Google Cloud Virtual Private Cloud (VPC) network, then you must also specify the VPC network. Otherwise, specify the VM instance, which already contains its internal IP address and VPC network information. If the source of the test is within an on-premises network, then you must provide the destination VPC network. If the source endpoint is a Compute Engine VM instance with multiple network interfaces, the instance itself is not sufficient to identify the endpoint. So, you must also specify the source IP address or VPC network. A reachability analysis proceeds even if the source location is ambiguous. However, the test result may include endpoints that you don&#x27;t intend to test.
+    &quot;cloudSqlInstance&quot;: &quot;A String&quot;, # A [Cloud SQL](https://cloud.google.com/sql) instance URI.
+    &quot;gkeMasterCluster&quot;: &quot;A String&quot;, # A cluster URI for [Google Kubernetes Engine master](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture).
     &quot;instance&quot;: &quot;A String&quot;, # A Compute Engine instance URI.
     &quot;ipAddress&quot;: &quot;A String&quot;, # The IP address of the endpoint, which can be an external or internal IP. An IPv6 address is only allowed when the test&#x27;s destination is a [global load balancer VIP](/load-balancing/docs/load-balancing-overview).
     &quot;network&quot;: &quot;A String&quot;, # A Compute Engine network URI.
diff --git a/docs/dyn/networkmanagement_v1beta1.projects.locations.global_.connectivityTests.html b/docs/dyn/networkmanagement_v1beta1.projects.locations.global_.connectivityTests.html
index be3f628..e31ee63 100644
--- a/docs/dyn/networkmanagement_v1beta1.projects.locations.global_.connectivityTests.html
+++ b/docs/dyn/networkmanagement_v1beta1.projects.locations.global_.connectivityTests.html
@@ -198,29 +198,29 @@
         },
         &quot;steps&quot;: [ # A trace of a test contains multiple steps from the initial state to the final state (delivered, dropped, forwarded, or aborted). The steps are ordered by the processing sequence within the simulated network state machine. It is critical to preserve the order of the steps and avoid reordering or sorting them.
           { # A simulated forwarding path is composed of multiple steps. Each step has a well-defined state and an associated configuration.
-            &quot;abort&quot;: { # Details of the final state &quot;abort&quot; and associated resource. # Display info of the final state &quot;abort&quot; and reason.
+            &quot;abort&quot;: { # Details of the final state &quot;abort&quot; and associated resource. # Display information of the final state &quot;abort&quot; and reason.
               &quot;cause&quot;: &quot;A String&quot;, # Causes that the analysis is aborted.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that caused the abort.
             },
             &quot;causesDrop&quot;: True or False, # This is a step that leads to the final state Drop.
-            &quot;cloudSqlInstance&quot;: { # For display only. Metadata associated with a Cloud SQL instance. # Display info of a Cloud SQL instance.
+            &quot;cloudSqlInstance&quot;: { # For display only. Metadata associated with a Cloud SQL instance. # Display information of a Cloud SQL instance.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Cloud SQL instance.
-              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of Cloud SQL instance.
-              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of Cloud SQL instance.
-              &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance network or empty string if instance does not have one.
+              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a Cloud SQL instance.
+              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a Cloud SQL instance.
+              &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance network or empty string if the instance does not have one.
               &quot;region&quot;: &quot;A String&quot;, # Region in which the Cloud SQL instance is running.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance.
             },
-            &quot;deliver&quot;: { # Details of the final state &quot;deliver&quot; and associated resource. # Display info of the final state &quot;deliver&quot; and reason.
+            &quot;deliver&quot;: { # Details of the final state &quot;deliver&quot; and associated resource. # Display information of the final state &quot;deliver&quot; and reason.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that the packet is delivered to.
               &quot;target&quot;: &quot;A String&quot;, # Target type where the packet is delivered to.
             },
             &quot;description&quot;: &quot;A String&quot;, # A description of the step. Usually this is a summary of the state.
-            &quot;drop&quot;: { # Details of the final state &quot;drop&quot; and associated resource. # Display info of the final state &quot;drop&quot; and reason.
+            &quot;drop&quot;: { # Details of the final state &quot;drop&quot; and associated resource. # Display information of the final state &quot;drop&quot; and reason.
               &quot;cause&quot;: &quot;A String&quot;, # Cause that the packet is dropped.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that caused the drop.
             },
-            &quot;endpoint&quot;: { # For display only. The specification of the endpoints for the test. EndpointInfo is derived from source and destination Endpoint and validated by the backend data plane model. # Display info of the source and destination under analysis. The endpoint info in an intermediate state may differ with the initial input, as it might be modified by state like NAT, or Connection Proxy.
+            &quot;endpoint&quot;: { # For display only. The specification of the endpoints for the test. EndpointInfo is derived from source and destination Endpoint and validated by the backend data plane model. # Display information of the source and destination under analysis. The endpoint information in an intermediate state may differ with the initial input, as it might be modified by state like NAT, or Connection Proxy.
               &quot;destinationIp&quot;: &quot;A String&quot;, # Destination IP address.
               &quot;destinationNetworkUri&quot;: &quot;A String&quot;, # URI of the network where this packet is sent to.
               &quot;destinationPort&quot;: 42, # Destination port. Only valid when protocol is TCP or UDP.
@@ -229,7 +229,7 @@
               &quot;sourceNetworkUri&quot;: &quot;A String&quot;, # URI of the network where this packet originates from.
               &quot;sourcePort&quot;: 42, # Source port. Only valid when protocol is TCP or UDP.
             },
-            &quot;firewall&quot;: { # For display only. Metadata associated with a VPC firewall rule, an implied VPC firewall rule, or a hierarchical firewall policy rule. # Display info of a Compute Engine firewall rule.
+            &quot;firewall&quot;: { # For display only. Metadata associated with a VPC firewall rule, an implied VPC firewall rule, or a hierarchical firewall policy rule. # Display information of a Compute Engine firewall rule.
               &quot;action&quot;: &quot;A String&quot;, # Possible values: ALLOW, DENY
               &quot;direction&quot;: &quot;A String&quot;, # Possible values: INGRESS, EGRESS
               &quot;displayName&quot;: &quot;A String&quot;, # The display name of the VPC firewall rule. This field is not applicable to hierarchical firewall policy rules.
@@ -245,11 +245,11 @@
               ],
               &quot;uri&quot;: &quot;A String&quot;, # The URI of the VPC firewall rule. This field is not applicable to implied firewall rules or hierarchical firewall policy rules.
             },
-            &quot;forward&quot;: { # Details of the final state &quot;forward&quot; and associated resource. # Display info of the final state &quot;forward&quot; and reason.
+            &quot;forward&quot;: { # Details of the final state &quot;forward&quot; and associated resource. # Display information of the final state &quot;forward&quot; and reason.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that the packet is forwarded to.
               &quot;target&quot;: &quot;A String&quot;, # Target type where this packet is forwarded to.
             },
-            &quot;forwardingRule&quot;: { # For display only. Metadata associated with a Compute Engine forwarding rule. # Display info of a Compute Engine forwarding rule.
+            &quot;forwardingRule&quot;: { # For display only. Metadata associated with a Compute Engine forwarding rule. # Display information of a Compute Engine forwarding rule.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine forwarding rule.
               &quot;matchedPortRange&quot;: &quot;A String&quot;, # Port range defined in the forwarding rule that matches the test.
               &quot;matchedProtocol&quot;: &quot;A String&quot;, # Protocol defined in the forwarding rule that matches the test.
@@ -258,13 +258,13 @@
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine forwarding rule.
               &quot;vip&quot;: &quot;A String&quot;, # VIP of the forwarding rule.
             },
-            &quot;gkeMaster&quot;: { # For display only. Metadata associated with a Google Kubernetes Engine cluster master. # Display info of a Google Kubernetes Engine cluster master.
-              &quot;clusterNetworkUri&quot;: &quot;A String&quot;, # URI of a Google Kubernetes Engine cluster network.
-              &quot;clusterUri&quot;: &quot;A String&quot;, # URI of a Google Kubernetes Engine cluster.
-              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a Google Kubernetes Engine cluster master.
-              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a Google Kubernetes Engine cluster master.
+            &quot;gkeMaster&quot;: { # For display only. Metadata associated with a Google Kubernetes Engine (GKE) cluster master. # Display information of a Google Kubernetes Engine cluster master.
+              &quot;clusterNetworkUri&quot;: &quot;A String&quot;, # URI of a GKE cluster network.
+              &quot;clusterUri&quot;: &quot;A String&quot;, # URI of a GKE cluster.
+              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a GKE cluster master.
+              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a GKE cluster master.
             },
-            &quot;instance&quot;: { # For display only. Metadata associated with a Compute Engine instance. # Display info of a Compute Engine instance.
+            &quot;instance&quot;: { # For display only. Metadata associated with a Compute Engine instance. # Display information of a Compute Engine instance.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine instance.
               &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of the network interface.
               &quot;interface&quot;: &quot;A String&quot;, # Name of the network interface of a Compute Engine instance.
@@ -276,7 +276,7 @@
               &quot;serviceAccount&quot;: &quot;A String&quot;, # Service account authorized for the instance.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine instance.
             },
-            &quot;loadBalancer&quot;: { # For display only. Metadata associated with a load balancer. # Display info of the load balancers.
+            &quot;loadBalancer&quot;: { # For display only. Metadata associated with a load balancer. # Display information of the load balancers.
               &quot;backendType&quot;: &quot;A String&quot;, # Type of load balancer&#x27;s backend configuration.
               &quot;backendUri&quot;: &quot;A String&quot;, # Backend configuration URI.
               &quot;backends&quot;: [ # Information for the loadbalancer backends.
@@ -295,13 +295,13 @@
               &quot;healthCheckUri&quot;: &quot;A String&quot;, # URI of the health check for the load balancer.
               &quot;loadBalancerType&quot;: &quot;A String&quot;, # Type of the load balancer.
             },
-            &quot;network&quot;: { # For display only. Metadata associated with a Compute Engine network. # Display info of a GCP network.
+            &quot;network&quot;: { # For display only. Metadata associated with a Compute Engine network. # Display information of a Google Cloud network.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine network.
               &quot;matchedIpRange&quot;: &quot;A String&quot;, # The IP range that matches the test.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine network.
             },
             &quot;projectId&quot;: &quot;A String&quot;, # Project ID that contains the configuration this step is validating.
-            &quot;route&quot;: { # For display only. Metadata associated with a Compute Engine route. # Display info of a Compute Engine route.
+            &quot;route&quot;: { # For display only. Metadata associated with a Compute Engine route. # Display information of a Compute Engine route.
               &quot;destIpRange&quot;: &quot;A String&quot;, # Destination IP range of the route.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine route.
               &quot;instanceTags&quot;: [ # Instance tags of the route.
@@ -315,18 +315,18 @@
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine route. Dynamic route from cloud router does not have a URI. Advertised route from Google Cloud VPC to on-premises network also does not have a URI.
             },
             &quot;state&quot;: &quot;A String&quot;, # Each step is in one of the pre-defined states.
-            &quot;vpnGateway&quot;: { # For display only. Metadata associated with a Compute Engine VPN gateway. # Display info of a Compute Engine VPN gateway.
+            &quot;vpnGateway&quot;: { # For display only. Metadata associated with a Compute Engine VPN gateway. # Display information of a Compute Engine VPN gateway.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a VPN gateway.
               &quot;ipAddress&quot;: &quot;A String&quot;, # IP address of the VPN gateway.
               &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Compute Engine network where the VPN gateway is configured.
-              &quot;region&quot;: &quot;A String&quot;, # Name of a GCP region where this VPN gateway is configured.
+              &quot;region&quot;: &quot;A String&quot;, # Name of a Google Cloud region where this VPN gateway is configured.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a VPN gateway.
               &quot;vpnTunnelUri&quot;: &quot;A String&quot;, # A VPN tunnel that is associated with this VPN gateway. There may be multiple VPN tunnels configured on a VPN gateway, and only the one relevant to the test is displayed.
             },
-            &quot;vpnTunnel&quot;: { # For display only. Metadata associated with a Compute Engine VPN tunnel. # Display info of a Compute Engine VPN tunnel.
+            &quot;vpnTunnel&quot;: { # For display only. Metadata associated with a Compute Engine VPN tunnel. # Display information of a Compute Engine VPN tunnel.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a VPN tunnel.
               &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Compute Engine network where the VPN tunnel is configured.
-              &quot;region&quot;: &quot;A String&quot;, # Name of a GCP region where this VPN tunnel is configured.
+              &quot;region&quot;: &quot;A String&quot;, # Name of a Google Cloud region where this VPN tunnel is configured.
               &quot;remoteGateway&quot;: &quot;A String&quot;, # URI of a VPN gateway at remote end of the tunnel.
               &quot;remoteGatewayIp&quot;: &quot;A String&quot;, # Remote VPN gateway&#x27;s IP address.
               &quot;routingType&quot;: &quot;A String&quot;, # Type of the routing policy.
@@ -511,29 +511,29 @@
         },
         &quot;steps&quot;: [ # A trace of a test contains multiple steps from the initial state to the final state (delivered, dropped, forwarded, or aborted). The steps are ordered by the processing sequence within the simulated network state machine. It is critical to preserve the order of the steps and avoid reordering or sorting them.
           { # A simulated forwarding path is composed of multiple steps. Each step has a well-defined state and an associated configuration.
-            &quot;abort&quot;: { # Details of the final state &quot;abort&quot; and associated resource. # Display info of the final state &quot;abort&quot; and reason.
+            &quot;abort&quot;: { # Details of the final state &quot;abort&quot; and associated resource. # Display information of the final state &quot;abort&quot; and reason.
               &quot;cause&quot;: &quot;A String&quot;, # Causes that the analysis is aborted.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that caused the abort.
             },
             &quot;causesDrop&quot;: True or False, # This is a step that leads to the final state Drop.
-            &quot;cloudSqlInstance&quot;: { # For display only. Metadata associated with a Cloud SQL instance. # Display info of a Cloud SQL instance.
+            &quot;cloudSqlInstance&quot;: { # For display only. Metadata associated with a Cloud SQL instance. # Display information of a Cloud SQL instance.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Cloud SQL instance.
-              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of Cloud SQL instance.
-              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of Cloud SQL instance.
-              &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance network or empty string if instance does not have one.
+              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a Cloud SQL instance.
+              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a Cloud SQL instance.
+              &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance network or empty string if the instance does not have one.
               &quot;region&quot;: &quot;A String&quot;, # Region in which the Cloud SQL instance is running.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance.
             },
-            &quot;deliver&quot;: { # Details of the final state &quot;deliver&quot; and associated resource. # Display info of the final state &quot;deliver&quot; and reason.
+            &quot;deliver&quot;: { # Details of the final state &quot;deliver&quot; and associated resource. # Display information of the final state &quot;deliver&quot; and reason.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that the packet is delivered to.
               &quot;target&quot;: &quot;A String&quot;, # Target type where the packet is delivered to.
             },
             &quot;description&quot;: &quot;A String&quot;, # A description of the step. Usually this is a summary of the state.
-            &quot;drop&quot;: { # Details of the final state &quot;drop&quot; and associated resource. # Display info of the final state &quot;drop&quot; and reason.
+            &quot;drop&quot;: { # Details of the final state &quot;drop&quot; and associated resource. # Display information of the final state &quot;drop&quot; and reason.
               &quot;cause&quot;: &quot;A String&quot;, # Cause that the packet is dropped.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that caused the drop.
             },
-            &quot;endpoint&quot;: { # For display only. The specification of the endpoints for the test. EndpointInfo is derived from source and destination Endpoint and validated by the backend data plane model. # Display info of the source and destination under analysis. The endpoint info in an intermediate state may differ with the initial input, as it might be modified by state like NAT, or Connection Proxy.
+            &quot;endpoint&quot;: { # For display only. The specification of the endpoints for the test. EndpointInfo is derived from source and destination Endpoint and validated by the backend data plane model. # Display information of the source and destination under analysis. The endpoint information in an intermediate state may differ with the initial input, as it might be modified by state like NAT, or Connection Proxy.
               &quot;destinationIp&quot;: &quot;A String&quot;, # Destination IP address.
               &quot;destinationNetworkUri&quot;: &quot;A String&quot;, # URI of the network where this packet is sent to.
               &quot;destinationPort&quot;: 42, # Destination port. Only valid when protocol is TCP or UDP.
@@ -542,7 +542,7 @@
               &quot;sourceNetworkUri&quot;: &quot;A String&quot;, # URI of the network where this packet originates from.
               &quot;sourcePort&quot;: 42, # Source port. Only valid when protocol is TCP or UDP.
             },
-            &quot;firewall&quot;: { # For display only. Metadata associated with a VPC firewall rule, an implied VPC firewall rule, or a hierarchical firewall policy rule. # Display info of a Compute Engine firewall rule.
+            &quot;firewall&quot;: { # For display only. Metadata associated with a VPC firewall rule, an implied VPC firewall rule, or a hierarchical firewall policy rule. # Display information of a Compute Engine firewall rule.
               &quot;action&quot;: &quot;A String&quot;, # Possible values: ALLOW, DENY
               &quot;direction&quot;: &quot;A String&quot;, # Possible values: INGRESS, EGRESS
               &quot;displayName&quot;: &quot;A String&quot;, # The display name of the VPC firewall rule. This field is not applicable to hierarchical firewall policy rules.
@@ -558,11 +558,11 @@
               ],
               &quot;uri&quot;: &quot;A String&quot;, # The URI of the VPC firewall rule. This field is not applicable to implied firewall rules or hierarchical firewall policy rules.
             },
-            &quot;forward&quot;: { # Details of the final state &quot;forward&quot; and associated resource. # Display info of the final state &quot;forward&quot; and reason.
+            &quot;forward&quot;: { # Details of the final state &quot;forward&quot; and associated resource. # Display information of the final state &quot;forward&quot; and reason.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that the packet is forwarded to.
               &quot;target&quot;: &quot;A String&quot;, # Target type where this packet is forwarded to.
             },
-            &quot;forwardingRule&quot;: { # For display only. Metadata associated with a Compute Engine forwarding rule. # Display info of a Compute Engine forwarding rule.
+            &quot;forwardingRule&quot;: { # For display only. Metadata associated with a Compute Engine forwarding rule. # Display information of a Compute Engine forwarding rule.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine forwarding rule.
               &quot;matchedPortRange&quot;: &quot;A String&quot;, # Port range defined in the forwarding rule that matches the test.
               &quot;matchedProtocol&quot;: &quot;A String&quot;, # Protocol defined in the forwarding rule that matches the test.
@@ -571,13 +571,13 @@
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine forwarding rule.
               &quot;vip&quot;: &quot;A String&quot;, # VIP of the forwarding rule.
             },
-            &quot;gkeMaster&quot;: { # For display only. Metadata associated with a Google Kubernetes Engine cluster master. # Display info of a Google Kubernetes Engine cluster master.
-              &quot;clusterNetworkUri&quot;: &quot;A String&quot;, # URI of a Google Kubernetes Engine cluster network.
-              &quot;clusterUri&quot;: &quot;A String&quot;, # URI of a Google Kubernetes Engine cluster.
-              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a Google Kubernetes Engine cluster master.
-              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a Google Kubernetes Engine cluster master.
+            &quot;gkeMaster&quot;: { # For display only. Metadata associated with a Google Kubernetes Engine (GKE) cluster master. # Display information of a Google Kubernetes Engine cluster master.
+              &quot;clusterNetworkUri&quot;: &quot;A String&quot;, # URI of a GKE cluster network.
+              &quot;clusterUri&quot;: &quot;A String&quot;, # URI of a GKE cluster.
+              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a GKE cluster master.
+              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a GKE cluster master.
             },
-            &quot;instance&quot;: { # For display only. Metadata associated with a Compute Engine instance. # Display info of a Compute Engine instance.
+            &quot;instance&quot;: { # For display only. Metadata associated with a Compute Engine instance. # Display information of a Compute Engine instance.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine instance.
               &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of the network interface.
               &quot;interface&quot;: &quot;A String&quot;, # Name of the network interface of a Compute Engine instance.
@@ -589,7 +589,7 @@
               &quot;serviceAccount&quot;: &quot;A String&quot;, # Service account authorized for the instance.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine instance.
             },
-            &quot;loadBalancer&quot;: { # For display only. Metadata associated with a load balancer. # Display info of the load balancers.
+            &quot;loadBalancer&quot;: { # For display only. Metadata associated with a load balancer. # Display information of the load balancers.
               &quot;backendType&quot;: &quot;A String&quot;, # Type of load balancer&#x27;s backend configuration.
               &quot;backendUri&quot;: &quot;A String&quot;, # Backend configuration URI.
               &quot;backends&quot;: [ # Information for the loadbalancer backends.
@@ -608,13 +608,13 @@
               &quot;healthCheckUri&quot;: &quot;A String&quot;, # URI of the health check for the load balancer.
               &quot;loadBalancerType&quot;: &quot;A String&quot;, # Type of the load balancer.
             },
-            &quot;network&quot;: { # For display only. Metadata associated with a Compute Engine network. # Display info of a GCP network.
+            &quot;network&quot;: { # For display only. Metadata associated with a Compute Engine network. # Display information of a Google Cloud network.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine network.
               &quot;matchedIpRange&quot;: &quot;A String&quot;, # The IP range that matches the test.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine network.
             },
             &quot;projectId&quot;: &quot;A String&quot;, # Project ID that contains the configuration this step is validating.
-            &quot;route&quot;: { # For display only. Metadata associated with a Compute Engine route. # Display info of a Compute Engine route.
+            &quot;route&quot;: { # For display only. Metadata associated with a Compute Engine route. # Display information of a Compute Engine route.
               &quot;destIpRange&quot;: &quot;A String&quot;, # Destination IP range of the route.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine route.
               &quot;instanceTags&quot;: [ # Instance tags of the route.
@@ -628,18 +628,18 @@
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine route. Dynamic route from cloud router does not have a URI. Advertised route from Google Cloud VPC to on-premises network also does not have a URI.
             },
             &quot;state&quot;: &quot;A String&quot;, # Each step is in one of the pre-defined states.
-            &quot;vpnGateway&quot;: { # For display only. Metadata associated with a Compute Engine VPN gateway. # Display info of a Compute Engine VPN gateway.
+            &quot;vpnGateway&quot;: { # For display only. Metadata associated with a Compute Engine VPN gateway. # Display information of a Compute Engine VPN gateway.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a VPN gateway.
               &quot;ipAddress&quot;: &quot;A String&quot;, # IP address of the VPN gateway.
               &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Compute Engine network where the VPN gateway is configured.
-              &quot;region&quot;: &quot;A String&quot;, # Name of a GCP region where this VPN gateway is configured.
+              &quot;region&quot;: &quot;A String&quot;, # Name of a Google Cloud region where this VPN gateway is configured.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a VPN gateway.
               &quot;vpnTunnelUri&quot;: &quot;A String&quot;, # A VPN tunnel that is associated with this VPN gateway. There may be multiple VPN tunnels configured on a VPN gateway, and only the one relevant to the test is displayed.
             },
-            &quot;vpnTunnel&quot;: { # For display only. Metadata associated with a Compute Engine VPN tunnel. # Display info of a Compute Engine VPN tunnel.
+            &quot;vpnTunnel&quot;: { # For display only. Metadata associated with a Compute Engine VPN tunnel. # Display information of a Compute Engine VPN tunnel.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a VPN tunnel.
               &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Compute Engine network where the VPN tunnel is configured.
-              &quot;region&quot;: &quot;A String&quot;, # Name of a GCP region where this VPN tunnel is configured.
+              &quot;region&quot;: &quot;A String&quot;, # Name of a Google Cloud region where this VPN tunnel is configured.
               &quot;remoteGateway&quot;: &quot;A String&quot;, # URI of a VPN gateway at remote end of the tunnel.
               &quot;remoteGatewayIp&quot;: &quot;A String&quot;, # Remote VPN gateway&#x27;s IP address.
               &quot;routingType&quot;: &quot;A String&quot;, # Type of the routing policy.
@@ -815,29 +815,29 @@
             },
             &quot;steps&quot;: [ # A trace of a test contains multiple steps from the initial state to the final state (delivered, dropped, forwarded, or aborted). The steps are ordered by the processing sequence within the simulated network state machine. It is critical to preserve the order of the steps and avoid reordering or sorting them.
               { # A simulated forwarding path is composed of multiple steps. Each step has a well-defined state and an associated configuration.
-                &quot;abort&quot;: { # Details of the final state &quot;abort&quot; and associated resource. # Display info of the final state &quot;abort&quot; and reason.
+                &quot;abort&quot;: { # Details of the final state &quot;abort&quot; and associated resource. # Display information of the final state &quot;abort&quot; and reason.
                   &quot;cause&quot;: &quot;A String&quot;, # Causes that the analysis is aborted.
                   &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that caused the abort.
                 },
                 &quot;causesDrop&quot;: True or False, # This is a step that leads to the final state Drop.
-                &quot;cloudSqlInstance&quot;: { # For display only. Metadata associated with a Cloud SQL instance. # Display info of a Cloud SQL instance.
+                &quot;cloudSqlInstance&quot;: { # For display only. Metadata associated with a Cloud SQL instance. # Display information of a Cloud SQL instance.
                   &quot;displayName&quot;: &quot;A String&quot;, # Name of a Cloud SQL instance.
-                  &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of Cloud SQL instance.
-                  &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of Cloud SQL instance.
-                  &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance network or empty string if instance does not have one.
+                  &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a Cloud SQL instance.
+                  &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a Cloud SQL instance.
+                  &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance network or empty string if the instance does not have one.
                   &quot;region&quot;: &quot;A String&quot;, # Region in which the Cloud SQL instance is running.
                   &quot;uri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance.
                 },
-                &quot;deliver&quot;: { # Details of the final state &quot;deliver&quot; and associated resource. # Display info of the final state &quot;deliver&quot; and reason.
+                &quot;deliver&quot;: { # Details of the final state &quot;deliver&quot; and associated resource. # Display information of the final state &quot;deliver&quot; and reason.
                   &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that the packet is delivered to.
                   &quot;target&quot;: &quot;A String&quot;, # Target type where the packet is delivered to.
                 },
                 &quot;description&quot;: &quot;A String&quot;, # A description of the step. Usually this is a summary of the state.
-                &quot;drop&quot;: { # Details of the final state &quot;drop&quot; and associated resource. # Display info of the final state &quot;drop&quot; and reason.
+                &quot;drop&quot;: { # Details of the final state &quot;drop&quot; and associated resource. # Display information of the final state &quot;drop&quot; and reason.
                   &quot;cause&quot;: &quot;A String&quot;, # Cause that the packet is dropped.
                   &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that caused the drop.
                 },
-                &quot;endpoint&quot;: { # For display only. The specification of the endpoints for the test. EndpointInfo is derived from source and destination Endpoint and validated by the backend data plane model. # Display info of the source and destination under analysis. The endpoint info in an intermediate state may differ with the initial input, as it might be modified by state like NAT, or Connection Proxy.
+                &quot;endpoint&quot;: { # For display only. The specification of the endpoints for the test. EndpointInfo is derived from source and destination Endpoint and validated by the backend data plane model. # Display information of the source and destination under analysis. The endpoint information in an intermediate state may differ with the initial input, as it might be modified by state like NAT, or Connection Proxy.
                   &quot;destinationIp&quot;: &quot;A String&quot;, # Destination IP address.
                   &quot;destinationNetworkUri&quot;: &quot;A String&quot;, # URI of the network where this packet is sent to.
                   &quot;destinationPort&quot;: 42, # Destination port. Only valid when protocol is TCP or UDP.
@@ -846,7 +846,7 @@
                   &quot;sourceNetworkUri&quot;: &quot;A String&quot;, # URI of the network where this packet originates from.
                   &quot;sourcePort&quot;: 42, # Source port. Only valid when protocol is TCP or UDP.
                 },
-                &quot;firewall&quot;: { # For display only. Metadata associated with a VPC firewall rule, an implied VPC firewall rule, or a hierarchical firewall policy rule. # Display info of a Compute Engine firewall rule.
+                &quot;firewall&quot;: { # For display only. Metadata associated with a VPC firewall rule, an implied VPC firewall rule, or a hierarchical firewall policy rule. # Display information of a Compute Engine firewall rule.
                   &quot;action&quot;: &quot;A String&quot;, # Possible values: ALLOW, DENY
                   &quot;direction&quot;: &quot;A String&quot;, # Possible values: INGRESS, EGRESS
                   &quot;displayName&quot;: &quot;A String&quot;, # The display name of the VPC firewall rule. This field is not applicable to hierarchical firewall policy rules.
@@ -862,11 +862,11 @@
                   ],
                   &quot;uri&quot;: &quot;A String&quot;, # The URI of the VPC firewall rule. This field is not applicable to implied firewall rules or hierarchical firewall policy rules.
                 },
-                &quot;forward&quot;: { # Details of the final state &quot;forward&quot; and associated resource. # Display info of the final state &quot;forward&quot; and reason.
+                &quot;forward&quot;: { # Details of the final state &quot;forward&quot; and associated resource. # Display information of the final state &quot;forward&quot; and reason.
                   &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that the packet is forwarded to.
                   &quot;target&quot;: &quot;A String&quot;, # Target type where this packet is forwarded to.
                 },
-                &quot;forwardingRule&quot;: { # For display only. Metadata associated with a Compute Engine forwarding rule. # Display info of a Compute Engine forwarding rule.
+                &quot;forwardingRule&quot;: { # For display only. Metadata associated with a Compute Engine forwarding rule. # Display information of a Compute Engine forwarding rule.
                   &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine forwarding rule.
                   &quot;matchedPortRange&quot;: &quot;A String&quot;, # Port range defined in the forwarding rule that matches the test.
                   &quot;matchedProtocol&quot;: &quot;A String&quot;, # Protocol defined in the forwarding rule that matches the test.
@@ -875,13 +875,13 @@
                   &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine forwarding rule.
                   &quot;vip&quot;: &quot;A String&quot;, # VIP of the forwarding rule.
                 },
-                &quot;gkeMaster&quot;: { # For display only. Metadata associated with a Google Kubernetes Engine cluster master. # Display info of a Google Kubernetes Engine cluster master.
-                  &quot;clusterNetworkUri&quot;: &quot;A String&quot;, # URI of a Google Kubernetes Engine cluster network.
-                  &quot;clusterUri&quot;: &quot;A String&quot;, # URI of a Google Kubernetes Engine cluster.
-                  &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a Google Kubernetes Engine cluster master.
-                  &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a Google Kubernetes Engine cluster master.
+                &quot;gkeMaster&quot;: { # For display only. Metadata associated with a Google Kubernetes Engine (GKE) cluster master. # Display information of a Google Kubernetes Engine cluster master.
+                  &quot;clusterNetworkUri&quot;: &quot;A String&quot;, # URI of a GKE cluster network.
+                  &quot;clusterUri&quot;: &quot;A String&quot;, # URI of a GKE cluster.
+                  &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a GKE cluster master.
+                  &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a GKE cluster master.
                 },
-                &quot;instance&quot;: { # For display only. Metadata associated with a Compute Engine instance. # Display info of a Compute Engine instance.
+                &quot;instance&quot;: { # For display only. Metadata associated with a Compute Engine instance. # Display information of a Compute Engine instance.
                   &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine instance.
                   &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of the network interface.
                   &quot;interface&quot;: &quot;A String&quot;, # Name of the network interface of a Compute Engine instance.
@@ -893,7 +893,7 @@
                   &quot;serviceAccount&quot;: &quot;A String&quot;, # Service account authorized for the instance.
                   &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine instance.
                 },
-                &quot;loadBalancer&quot;: { # For display only. Metadata associated with a load balancer. # Display info of the load balancers.
+                &quot;loadBalancer&quot;: { # For display only. Metadata associated with a load balancer. # Display information of the load balancers.
                   &quot;backendType&quot;: &quot;A String&quot;, # Type of load balancer&#x27;s backend configuration.
                   &quot;backendUri&quot;: &quot;A String&quot;, # Backend configuration URI.
                   &quot;backends&quot;: [ # Information for the loadbalancer backends.
@@ -912,13 +912,13 @@
                   &quot;healthCheckUri&quot;: &quot;A String&quot;, # URI of the health check for the load balancer.
                   &quot;loadBalancerType&quot;: &quot;A String&quot;, # Type of the load balancer.
                 },
-                &quot;network&quot;: { # For display only. Metadata associated with a Compute Engine network. # Display info of a GCP network.
+                &quot;network&quot;: { # For display only. Metadata associated with a Compute Engine network. # Display information of a Google Cloud network.
                   &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine network.
                   &quot;matchedIpRange&quot;: &quot;A String&quot;, # The IP range that matches the test.
                   &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine network.
                 },
                 &quot;projectId&quot;: &quot;A String&quot;, # Project ID that contains the configuration this step is validating.
-                &quot;route&quot;: { # For display only. Metadata associated with a Compute Engine route. # Display info of a Compute Engine route.
+                &quot;route&quot;: { # For display only. Metadata associated with a Compute Engine route. # Display information of a Compute Engine route.
                   &quot;destIpRange&quot;: &quot;A String&quot;, # Destination IP range of the route.
                   &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine route.
                   &quot;instanceTags&quot;: [ # Instance tags of the route.
@@ -932,18 +932,18 @@
                   &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine route. Dynamic route from cloud router does not have a URI. Advertised route from Google Cloud VPC to on-premises network also does not have a URI.
                 },
                 &quot;state&quot;: &quot;A String&quot;, # Each step is in one of the pre-defined states.
-                &quot;vpnGateway&quot;: { # For display only. Metadata associated with a Compute Engine VPN gateway. # Display info of a Compute Engine VPN gateway.
+                &quot;vpnGateway&quot;: { # For display only. Metadata associated with a Compute Engine VPN gateway. # Display information of a Compute Engine VPN gateway.
                   &quot;displayName&quot;: &quot;A String&quot;, # Name of a VPN gateway.
                   &quot;ipAddress&quot;: &quot;A String&quot;, # IP address of the VPN gateway.
                   &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Compute Engine network where the VPN gateway is configured.
-                  &quot;region&quot;: &quot;A String&quot;, # Name of a GCP region where this VPN gateway is configured.
+                  &quot;region&quot;: &quot;A String&quot;, # Name of a Google Cloud region where this VPN gateway is configured.
                   &quot;uri&quot;: &quot;A String&quot;, # URI of a VPN gateway.
                   &quot;vpnTunnelUri&quot;: &quot;A String&quot;, # A VPN tunnel that is associated with this VPN gateway. There may be multiple VPN tunnels configured on a VPN gateway, and only the one relevant to the test is displayed.
                 },
-                &quot;vpnTunnel&quot;: { # For display only. Metadata associated with a Compute Engine VPN tunnel. # Display info of a Compute Engine VPN tunnel.
+                &quot;vpnTunnel&quot;: { # For display only. Metadata associated with a Compute Engine VPN tunnel. # Display information of a Compute Engine VPN tunnel.
                   &quot;displayName&quot;: &quot;A String&quot;, # Name of a VPN tunnel.
                   &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Compute Engine network where the VPN tunnel is configured.
-                  &quot;region&quot;: &quot;A String&quot;, # Name of a GCP region where this VPN tunnel is configured.
+                  &quot;region&quot;: &quot;A String&quot;, # Name of a Google Cloud region where this VPN tunnel is configured.
                   &quot;remoteGateway&quot;: &quot;A String&quot;, # URI of a VPN gateway at remote end of the tunnel.
                   &quot;remoteGatewayIp&quot;: &quot;A String&quot;, # Remote VPN gateway&#x27;s IP address.
                   &quot;routingType&quot;: &quot;A String&quot;, # Type of the routing policy.
@@ -1078,29 +1078,29 @@
         },
         &quot;steps&quot;: [ # A trace of a test contains multiple steps from the initial state to the final state (delivered, dropped, forwarded, or aborted). The steps are ordered by the processing sequence within the simulated network state machine. It is critical to preserve the order of the steps and avoid reordering or sorting them.
           { # A simulated forwarding path is composed of multiple steps. Each step has a well-defined state and an associated configuration.
-            &quot;abort&quot;: { # Details of the final state &quot;abort&quot; and associated resource. # Display info of the final state &quot;abort&quot; and reason.
+            &quot;abort&quot;: { # Details of the final state &quot;abort&quot; and associated resource. # Display information of the final state &quot;abort&quot; and reason.
               &quot;cause&quot;: &quot;A String&quot;, # Causes that the analysis is aborted.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that caused the abort.
             },
             &quot;causesDrop&quot;: True or False, # This is a step that leads to the final state Drop.
-            &quot;cloudSqlInstance&quot;: { # For display only. Metadata associated with a Cloud SQL instance. # Display info of a Cloud SQL instance.
+            &quot;cloudSqlInstance&quot;: { # For display only. Metadata associated with a Cloud SQL instance. # Display information of a Cloud SQL instance.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Cloud SQL instance.
-              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of Cloud SQL instance.
-              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of Cloud SQL instance.
-              &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance network or empty string if instance does not have one.
+              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a Cloud SQL instance.
+              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a Cloud SQL instance.
+              &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance network or empty string if the instance does not have one.
               &quot;region&quot;: &quot;A String&quot;, # Region in which the Cloud SQL instance is running.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Cloud SQL instance.
             },
-            &quot;deliver&quot;: { # Details of the final state &quot;deliver&quot; and associated resource. # Display info of the final state &quot;deliver&quot; and reason.
+            &quot;deliver&quot;: { # Details of the final state &quot;deliver&quot; and associated resource. # Display information of the final state &quot;deliver&quot; and reason.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that the packet is delivered to.
               &quot;target&quot;: &quot;A String&quot;, # Target type where the packet is delivered to.
             },
             &quot;description&quot;: &quot;A String&quot;, # A description of the step. Usually this is a summary of the state.
-            &quot;drop&quot;: { # Details of the final state &quot;drop&quot; and associated resource. # Display info of the final state &quot;drop&quot; and reason.
+            &quot;drop&quot;: { # Details of the final state &quot;drop&quot; and associated resource. # Display information of the final state &quot;drop&quot; and reason.
               &quot;cause&quot;: &quot;A String&quot;, # Cause that the packet is dropped.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that caused the drop.
             },
-            &quot;endpoint&quot;: { # For display only. The specification of the endpoints for the test. EndpointInfo is derived from source and destination Endpoint and validated by the backend data plane model. # Display info of the source and destination under analysis. The endpoint info in an intermediate state may differ with the initial input, as it might be modified by state like NAT, or Connection Proxy.
+            &quot;endpoint&quot;: { # For display only. The specification of the endpoints for the test. EndpointInfo is derived from source and destination Endpoint and validated by the backend data plane model. # Display information of the source and destination under analysis. The endpoint information in an intermediate state may differ with the initial input, as it might be modified by state like NAT, or Connection Proxy.
               &quot;destinationIp&quot;: &quot;A String&quot;, # Destination IP address.
               &quot;destinationNetworkUri&quot;: &quot;A String&quot;, # URI of the network where this packet is sent to.
               &quot;destinationPort&quot;: 42, # Destination port. Only valid when protocol is TCP or UDP.
@@ -1109,7 +1109,7 @@
               &quot;sourceNetworkUri&quot;: &quot;A String&quot;, # URI of the network where this packet originates from.
               &quot;sourcePort&quot;: 42, # Source port. Only valid when protocol is TCP or UDP.
             },
-            &quot;firewall&quot;: { # For display only. Metadata associated with a VPC firewall rule, an implied VPC firewall rule, or a hierarchical firewall policy rule. # Display info of a Compute Engine firewall rule.
+            &quot;firewall&quot;: { # For display only. Metadata associated with a VPC firewall rule, an implied VPC firewall rule, or a hierarchical firewall policy rule. # Display information of a Compute Engine firewall rule.
               &quot;action&quot;: &quot;A String&quot;, # Possible values: ALLOW, DENY
               &quot;direction&quot;: &quot;A String&quot;, # Possible values: INGRESS, EGRESS
               &quot;displayName&quot;: &quot;A String&quot;, # The display name of the VPC firewall rule. This field is not applicable to hierarchical firewall policy rules.
@@ -1125,11 +1125,11 @@
               ],
               &quot;uri&quot;: &quot;A String&quot;, # The URI of the VPC firewall rule. This field is not applicable to implied firewall rules or hierarchical firewall policy rules.
             },
-            &quot;forward&quot;: { # Details of the final state &quot;forward&quot; and associated resource. # Display info of the final state &quot;forward&quot; and reason.
+            &quot;forward&quot;: { # Details of the final state &quot;forward&quot; and associated resource. # Display information of the final state &quot;forward&quot; and reason.
               &quot;resourceUri&quot;: &quot;A String&quot;, # URI of the resource that the packet is forwarded to.
               &quot;target&quot;: &quot;A String&quot;, # Target type where this packet is forwarded to.
             },
-            &quot;forwardingRule&quot;: { # For display only. Metadata associated with a Compute Engine forwarding rule. # Display info of a Compute Engine forwarding rule.
+            &quot;forwardingRule&quot;: { # For display only. Metadata associated with a Compute Engine forwarding rule. # Display information of a Compute Engine forwarding rule.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine forwarding rule.
               &quot;matchedPortRange&quot;: &quot;A String&quot;, # Port range defined in the forwarding rule that matches the test.
               &quot;matchedProtocol&quot;: &quot;A String&quot;, # Protocol defined in the forwarding rule that matches the test.
@@ -1138,13 +1138,13 @@
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine forwarding rule.
               &quot;vip&quot;: &quot;A String&quot;, # VIP of the forwarding rule.
             },
-            &quot;gkeMaster&quot;: { # For display only. Metadata associated with a Google Kubernetes Engine cluster master. # Display info of a Google Kubernetes Engine cluster master.
-              &quot;clusterNetworkUri&quot;: &quot;A String&quot;, # URI of a Google Kubernetes Engine cluster network.
-              &quot;clusterUri&quot;: &quot;A String&quot;, # URI of a Google Kubernetes Engine cluster.
-              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a Google Kubernetes Engine cluster master.
-              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a Google Kubernetes Engine cluster master.
+            &quot;gkeMaster&quot;: { # For display only. Metadata associated with a Google Kubernetes Engine (GKE) cluster master. # Display information of a Google Kubernetes Engine cluster master.
+              &quot;clusterNetworkUri&quot;: &quot;A String&quot;, # URI of a GKE cluster network.
+              &quot;clusterUri&quot;: &quot;A String&quot;, # URI of a GKE cluster.
+              &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of a GKE cluster master.
+              &quot;internalIp&quot;: &quot;A String&quot;, # Internal IP address of a GKE cluster master.
             },
-            &quot;instance&quot;: { # For display only. Metadata associated with a Compute Engine instance. # Display info of a Compute Engine instance.
+            &quot;instance&quot;: { # For display only. Metadata associated with a Compute Engine instance. # Display information of a Compute Engine instance.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine instance.
               &quot;externalIp&quot;: &quot;A String&quot;, # External IP address of the network interface.
               &quot;interface&quot;: &quot;A String&quot;, # Name of the network interface of a Compute Engine instance.
@@ -1156,7 +1156,7 @@
               &quot;serviceAccount&quot;: &quot;A String&quot;, # Service account authorized for the instance.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine instance.
             },
-            &quot;loadBalancer&quot;: { # For display only. Metadata associated with a load balancer. # Display info of the load balancers.
+            &quot;loadBalancer&quot;: { # For display only. Metadata associated with a load balancer. # Display information of the load balancers.
               &quot;backendType&quot;: &quot;A String&quot;, # Type of load balancer&#x27;s backend configuration.
               &quot;backendUri&quot;: &quot;A String&quot;, # Backend configuration URI.
               &quot;backends&quot;: [ # Information for the loadbalancer backends.
@@ -1175,13 +1175,13 @@
               &quot;healthCheckUri&quot;: &quot;A String&quot;, # URI of the health check for the load balancer.
               &quot;loadBalancerType&quot;: &quot;A String&quot;, # Type of the load balancer.
             },
-            &quot;network&quot;: { # For display only. Metadata associated with a Compute Engine network. # Display info of a GCP network.
+            &quot;network&quot;: { # For display only. Metadata associated with a Compute Engine network. # Display information of a Google Cloud network.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine network.
               &quot;matchedIpRange&quot;: &quot;A String&quot;, # The IP range that matches the test.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine network.
             },
             &quot;projectId&quot;: &quot;A String&quot;, # Project ID that contains the configuration this step is validating.
-            &quot;route&quot;: { # For display only. Metadata associated with a Compute Engine route. # Display info of a Compute Engine route.
+            &quot;route&quot;: { # For display only. Metadata associated with a Compute Engine route. # Display information of a Compute Engine route.
               &quot;destIpRange&quot;: &quot;A String&quot;, # Destination IP range of the route.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a Compute Engine route.
               &quot;instanceTags&quot;: [ # Instance tags of the route.
@@ -1195,18 +1195,18 @@
               &quot;uri&quot;: &quot;A String&quot;, # URI of a Compute Engine route. Dynamic route from cloud router does not have a URI. Advertised route from Google Cloud VPC to on-premises network also does not have a URI.
             },
             &quot;state&quot;: &quot;A String&quot;, # Each step is in one of the pre-defined states.
-            &quot;vpnGateway&quot;: { # For display only. Metadata associated with a Compute Engine VPN gateway. # Display info of a Compute Engine VPN gateway.
+            &quot;vpnGateway&quot;: { # For display only. Metadata associated with a Compute Engine VPN gateway. # Display information of a Compute Engine VPN gateway.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a VPN gateway.
               &quot;ipAddress&quot;: &quot;A String&quot;, # IP address of the VPN gateway.
               &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Compute Engine network where the VPN gateway is configured.
-              &quot;region&quot;: &quot;A String&quot;, # Name of a GCP region where this VPN gateway is configured.
+              &quot;region&quot;: &quot;A String&quot;, # Name of a Google Cloud region where this VPN gateway is configured.
               &quot;uri&quot;: &quot;A String&quot;, # URI of a VPN gateway.
               &quot;vpnTunnelUri&quot;: &quot;A String&quot;, # A VPN tunnel that is associated with this VPN gateway. There may be multiple VPN tunnels configured on a VPN gateway, and only the one relevant to the test is displayed.
             },
-            &quot;vpnTunnel&quot;: { # For display only. Metadata associated with a Compute Engine VPN tunnel. # Display info of a Compute Engine VPN tunnel.
+            &quot;vpnTunnel&quot;: { # For display only. Metadata associated with a Compute Engine VPN tunnel. # Display information of a Compute Engine VPN tunnel.
               &quot;displayName&quot;: &quot;A String&quot;, # Name of a VPN tunnel.
               &quot;networkUri&quot;: &quot;A String&quot;, # URI of a Compute Engine network where the VPN tunnel is configured.
-              &quot;region&quot;: &quot;A String&quot;, # Name of a GCP region where this VPN tunnel is configured.
+              &quot;region&quot;: &quot;A String&quot;, # Name of a Google Cloud region where this VPN tunnel is configured.
               &quot;remoteGateway&quot;: &quot;A String&quot;, # URI of a VPN gateway at remote end of the tunnel.
               &quot;remoteGatewayIp&quot;: &quot;A String&quot;, # Remote VPN gateway&#x27;s IP address.
               &quot;routingType&quot;: &quot;A String&quot;, # Type of the routing policy.
diff --git a/docs/dyn/oslogin_v1beta.users.html b/docs/dyn/oslogin_v1beta.users.html
index 7161152..98a426d 100644
--- a/docs/dyn/oslogin_v1beta.users.html
+++ b/docs/dyn/oslogin_v1beta.users.html
@@ -88,10 +88,10 @@
   <code><a href="#close">close()</a></code></p>
 <p class="firstline">Close httplib2 connections.</p>
 <p class="toc_element">
-  <code><a href="#getLoginProfile">getLoginProfile(name, projectId=None, systemId=None, x__xgafv=None)</a></code></p>
+  <code><a href="#getLoginProfile">getLoginProfile(name, projectId=None, systemId=None, view=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Retrieves the profile information used for logging in to a virtual machine on Google Compute Engine.</p>
 <p class="toc_element">
-  <code><a href="#importSshPublicKey">importSshPublicKey(parent, body=None, projectId=None, x__xgafv=None)</a></code></p>
+  <code><a href="#importSshPublicKey">importSshPublicKey(parent, body=None, projectId=None, view=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Adds an SSH public key and returns the profile information. Default POSIX account information is set when no username and UID exist as part of the login profile.</p>
 <h3>Method Details</h3>
 <div class="method">
@@ -100,13 +100,18 @@
 </div>
 
 <div class="method">
-    <code class="details" id="getLoginProfile">getLoginProfile(name, projectId=None, systemId=None, x__xgafv=None)</code>
+    <code class="details" id="getLoginProfile">getLoginProfile(name, projectId=None, systemId=None, view=None, x__xgafv=None)</code>
   <pre>Retrieves the profile information used for logging in to a virtual machine on Google Compute Engine.
 
 Args:
   name: string, Required. The unique ID for the user in format `users/{user}`. (required)
   projectId: string, The project ID of the Google Cloud Platform project.
   systemId: string, A system ID for filtering the results of the request.
+  view: string, The view configures whether to retrieve security keys information.
+    Allowed values
+      LOGIN_PROFILE_VIEW_UNSPECIFIED - The default login profile view. The API defaults to the BASIC view.
+      BASIC - Includes POSIX and SSH key information.
+      SECURITY_KEY - Include security key information for the user.
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
@@ -144,7 +149,7 @@
 </div>
 
 <div class="method">
-    <code class="details" id="importSshPublicKey">importSshPublicKey(parent, body=None, projectId=None, x__xgafv=None)</code>
+    <code class="details" id="importSshPublicKey">importSshPublicKey(parent, body=None, projectId=None, view=None, x__xgafv=None)</code>
   <pre>Adds an SSH public key and returns the profile information. Default POSIX account information is set when no username and UID exist as part of the login profile.
 
 Args:
@@ -160,6 +165,11 @@
 }
 
   projectId: string, The project ID of the Google Cloud Platform project.
+  view: string, The view configures whether to retrieve security keys information.
+    Allowed values
+      LOGIN_PROFILE_VIEW_UNSPECIFIED - The default login profile view. The API defaults to the BASIC view.
+      BASIC - Includes POSIX and SSH key information.
+      SECURITY_KEY - Include security key information for the user.
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
diff --git a/docs/dyn/paymentsresellersubscription_v1.partners.subscriptions.html b/docs/dyn/paymentsresellersubscription_v1.partners.subscriptions.html
index 8cf4401..7deb966 100644
--- a/docs/dyn/paymentsresellersubscription_v1.partners.subscriptions.html
+++ b/docs/dyn/paymentsresellersubscription_v1.partners.subscriptions.html
@@ -131,7 +131,7 @@
     &quot;endUserEntitled&quot;: True or False, # Output only. Indicates if the subscription is entitled to the end user.
     &quot;freeTrialEndTime&quot;: &quot;A String&quot;, # Output only. End of the free trial period, in ISO 8061 format. For example, &quot;2019-08-31T17:28:54.564Z&quot;. It will be set the same as createTime if no free trial promotion is specified.
     &quot;name&quot;: &quot;A String&quot;, # Output only. Response only. Resource name of the subscription. It will have the format of &quot;partners/{partner_id}/subscriptions/{subscription_id}&quot;
-    &quot;partnerUserToken&quot;: &quot;A String&quot;, # Required. Identifier of the end-user in partner’s system.
+    &quot;partnerUserToken&quot;: &quot;A String&quot;, # Required. Identifier of the end-user in partner’s system. The value is restricted to 63 ASCII characters at the maximum.
     &quot;products&quot;: [ # Required. Resource name that identifies one or more subscription products. The format will be &#x27;partners/{partner_id}/products/{product_id}&#x27;.
       &quot;A String&quot;,
     ],
@@ -172,7 +172,7 @@
   &quot;endUserEntitled&quot;: True or False, # Output only. Indicates if the subscription is entitled to the end user.
   &quot;freeTrialEndTime&quot;: &quot;A String&quot;, # Output only. End of the free trial period, in ISO 8061 format. For example, &quot;2019-08-31T17:28:54.564Z&quot;. It will be set the same as createTime if no free trial promotion is specified.
   &quot;name&quot;: &quot;A String&quot;, # Output only. Response only. Resource name of the subscription. It will have the format of &quot;partners/{partner_id}/subscriptions/{subscription_id}&quot;
-  &quot;partnerUserToken&quot;: &quot;A String&quot;, # Required. Identifier of the end-user in partner’s system.
+  &quot;partnerUserToken&quot;: &quot;A String&quot;, # Required. Identifier of the end-user in partner’s system. The value is restricted to 63 ASCII characters at the maximum.
   &quot;products&quot;: [ # Required. Resource name that identifies one or more subscription products. The format will be &#x27;partners/{partner_id}/products/{product_id}&#x27;.
     &quot;A String&quot;,
   ],
@@ -188,7 +188,7 @@
   &quot;updateTime&quot;: &quot;A String&quot;, # Output only. System generated timestamp when the subscription is most recently updated. UTC timezone.
 }
 
-  subscriptionId: string, Required. Identifies the subscription resource on the Partner side. If a subscription was previously created with the same subscription_id, we will directly return that one.
+  subscriptionId: string, Required. Identifies the subscription resource on the Partner side. The value is restricted to 63 ASCII characters at the maximum. If a subscription was previously created with the same subscription_id, we will directly return that one.
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
@@ -206,7 +206,7 @@
   &quot;endUserEntitled&quot;: True or False, # Output only. Indicates if the subscription is entitled to the end user.
   &quot;freeTrialEndTime&quot;: &quot;A String&quot;, # Output only. End of the free trial period, in ISO 8061 format. For example, &quot;2019-08-31T17:28:54.564Z&quot;. It will be set the same as createTime if no free trial promotion is specified.
   &quot;name&quot;: &quot;A String&quot;, # Output only. Response only. Resource name of the subscription. It will have the format of &quot;partners/{partner_id}/subscriptions/{subscription_id}&quot;
-  &quot;partnerUserToken&quot;: &quot;A String&quot;, # Required. Identifier of the end-user in partner’s system.
+  &quot;partnerUserToken&quot;: &quot;A String&quot;, # Required. Identifier of the end-user in partner’s system. The value is restricted to 63 ASCII characters at the maximum.
   &quot;products&quot;: [ # Required. Resource name that identifies one or more subscription products. The format will be &#x27;partners/{partner_id}/products/{product_id}&#x27;.
     &quot;A String&quot;,
   ],
@@ -253,7 +253,7 @@
     &quot;endUserEntitled&quot;: True or False, # Output only. Indicates if the subscription is entitled to the end user.
     &quot;freeTrialEndTime&quot;: &quot;A String&quot;, # Output only. End of the free trial period, in ISO 8061 format. For example, &quot;2019-08-31T17:28:54.564Z&quot;. It will be set the same as createTime if no free trial promotion is specified.
     &quot;name&quot;: &quot;A String&quot;, # Output only. Response only. Resource name of the subscription. It will have the format of &quot;partners/{partner_id}/subscriptions/{subscription_id}&quot;
-    &quot;partnerUserToken&quot;: &quot;A String&quot;, # Required. Identifier of the end-user in partner’s system.
+    &quot;partnerUserToken&quot;: &quot;A String&quot;, # Required. Identifier of the end-user in partner’s system. The value is restricted to 63 ASCII characters at the maximum.
     &quot;products&quot;: [ # Required. Resource name that identifies one or more subscription products. The format will be &#x27;partners/{partner_id}/products/{product_id}&#x27;.
       &quot;A String&quot;,
     ],
@@ -328,7 +328,7 @@
   &quot;endUserEntitled&quot;: True or False, # Output only. Indicates if the subscription is entitled to the end user.
   &quot;freeTrialEndTime&quot;: &quot;A String&quot;, # Output only. End of the free trial period, in ISO 8061 format. For example, &quot;2019-08-31T17:28:54.564Z&quot;. It will be set the same as createTime if no free trial promotion is specified.
   &quot;name&quot;: &quot;A String&quot;, # Output only. Response only. Resource name of the subscription. It will have the format of &quot;partners/{partner_id}/subscriptions/{subscription_id}&quot;
-  &quot;partnerUserToken&quot;: &quot;A String&quot;, # Required. Identifier of the end-user in partner’s system.
+  &quot;partnerUserToken&quot;: &quot;A String&quot;, # Required. Identifier of the end-user in partner’s system. The value is restricted to 63 ASCII characters at the maximum.
   &quot;products&quot;: [ # Required. Resource name that identifies one or more subscription products. The format will be &#x27;partners/{partner_id}/products/{product_id}&#x27;.
     &quot;A String&quot;,
   ],
@@ -363,7 +363,7 @@
   &quot;endUserEntitled&quot;: True or False, # Output only. Indicates if the subscription is entitled to the end user.
   &quot;freeTrialEndTime&quot;: &quot;A String&quot;, # Output only. End of the free trial period, in ISO 8061 format. For example, &quot;2019-08-31T17:28:54.564Z&quot;. It will be set the same as createTime if no free trial promotion is specified.
   &quot;name&quot;: &quot;A String&quot;, # Output only. Response only. Resource name of the subscription. It will have the format of &quot;partners/{partner_id}/subscriptions/{subscription_id}&quot;
-  &quot;partnerUserToken&quot;: &quot;A String&quot;, # Required. Identifier of the end-user in partner’s system.
+  &quot;partnerUserToken&quot;: &quot;A String&quot;, # Required. Identifier of the end-user in partner’s system. The value is restricted to 63 ASCII characters at the maximum.
   &quot;products&quot;: [ # Required. Resource name that identifies one or more subscription products. The format will be &#x27;partners/{partner_id}/products/{product_id}&#x27;.
     &quot;A String&quot;,
   ],
@@ -379,7 +379,7 @@
   &quot;updateTime&quot;: &quot;A String&quot;, # Output only. System generated timestamp when the subscription is most recently updated. UTC timezone.
 }
 
-  subscriptionId: string, Required. Identifies the subscription resource on the Partner side. If a subscription was previously created with the same subscription_id, we will directly return that one.
+  subscriptionId: string, Required. Identifies the subscription resource on the Partner side. The value is restricted to 63 ASCII characters at the maximum. If a subscription was previously created with the same subscription_id, we will directly return that one.
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
@@ -397,7 +397,7 @@
   &quot;endUserEntitled&quot;: True or False, # Output only. Indicates if the subscription is entitled to the end user.
   &quot;freeTrialEndTime&quot;: &quot;A String&quot;, # Output only. End of the free trial period, in ISO 8061 format. For example, &quot;2019-08-31T17:28:54.564Z&quot;. It will be set the same as createTime if no free trial promotion is specified.
   &quot;name&quot;: &quot;A String&quot;, # Output only. Response only. Resource name of the subscription. It will have the format of &quot;partners/{partner_id}/subscriptions/{subscription_id}&quot;
-  &quot;partnerUserToken&quot;: &quot;A String&quot;, # Required. Identifier of the end-user in partner’s system.
+  &quot;partnerUserToken&quot;: &quot;A String&quot;, # Required. Identifier of the end-user in partner’s system. The value is restricted to 63 ASCII characters at the maximum.
   &quot;products&quot;: [ # Required. Resource name that identifies one or more subscription products. The format will be &#x27;partners/{partner_id}/products/{product_id}&#x27;.
     &quot;A String&quot;,
   ],
@@ -444,7 +444,7 @@
     &quot;endUserEntitled&quot;: True or False, # Output only. Indicates if the subscription is entitled to the end user.
     &quot;freeTrialEndTime&quot;: &quot;A String&quot;, # Output only. End of the free trial period, in ISO 8061 format. For example, &quot;2019-08-31T17:28:54.564Z&quot;. It will be set the same as createTime if no free trial promotion is specified.
     &quot;name&quot;: &quot;A String&quot;, # Output only. Response only. Resource name of the subscription. It will have the format of &quot;partners/{partner_id}/subscriptions/{subscription_id}&quot;
-    &quot;partnerUserToken&quot;: &quot;A String&quot;, # Required. Identifier of the end-user in partner’s system.
+    &quot;partnerUserToken&quot;: &quot;A String&quot;, # Required. Identifier of the end-user in partner’s system. The value is restricted to 63 ASCII characters at the maximum.
     &quot;products&quot;: [ # Required. Resource name that identifies one or more subscription products. The format will be &#x27;partners/{partner_id}/products/{product_id}&#x27;.
       &quot;A String&quot;,
     ],
diff --git a/docs/dyn/pubsublite_v1.cursor.projects.locations.subscriptions.html b/docs/dyn/pubsublite_v1.cursor.projects.locations.subscriptions.html
index b7a3eda..f2ac87b 100644
--- a/docs/dyn/pubsublite_v1.cursor.projects.locations.subscriptions.html
+++ b/docs/dyn/pubsublite_v1.cursor.projects.locations.subscriptions.html
@@ -82,10 +82,41 @@
 <p class="toc_element">
   <code><a href="#close">close()</a></code></p>
 <p class="firstline">Close httplib2 connections.</p>
+<p class="toc_element">
+  <code><a href="#commitCursor">commitCursor(subscription, body=None, x__xgafv=None)</a></code></p>
+<p class="firstline">Updates the committed cursor.</p>
 <h3>Method Details</h3>
 <div class="method">
     <code class="details" id="close">close()</code>
   <pre>Close httplib2 connections.</pre>
 </div>
 
+<div class="method">
+    <code class="details" id="commitCursor">commitCursor(subscription, body=None, x__xgafv=None)</code>
+  <pre>Updates the committed cursor.
+
+Args:
+  subscription: string, The subscription for which to update the cursor. (required)
+  body: object, The request body.
+    The object takes the form of:
+
+{ # Request for CommitCursor.
+  &quot;cursor&quot;: { # A cursor that describes the position of a message within a topic partition. # The new value for the committed cursor.
+    &quot;offset&quot;: &quot;A String&quot;, # The offset of a message within a topic partition. Must be greater than or equal 0.
+  },
+  &quot;partition&quot;: &quot;A String&quot;, # The partition for which to update the cursor. Partitions are zero indexed, so `partition` must be in the range [0, topic.num_partitions).
+}
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # Response for CommitCursor.
+}</pre>
+</div>
+
 </body></html>
\ No newline at end of file
diff --git a/docs/dyn/recommender_v1.billingAccounts.locations.insightTypes.insights.html b/docs/dyn/recommender_v1.billingAccounts.locations.insightTypes.insights.html
index 9eb0b4c..11f89a5 100644
--- a/docs/dyn/recommender_v1.billingAccounts.locations.insightTypes.insights.html
+++ b/docs/dyn/recommender_v1.billingAccounts.locations.insightTypes.insights.html
@@ -125,6 +125,7 @@
   &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
   &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
   &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+  &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
   &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # Insight state.
     &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
@@ -172,6 +173,7 @@
       &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
       &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
       &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+      &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
       &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
         &quot;state&quot;: &quot;A String&quot;, # Insight state.
         &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
@@ -241,6 +243,7 @@
   &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
   &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
   &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+  &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
   &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # Insight state.
     &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
diff --git a/docs/dyn/recommender_v1.billingAccounts.locations.recommenders.recommendations.html b/docs/dyn/recommender_v1.billingAccounts.locations.recommenders.recommendations.html
index c1f3f6b..3adcdfb 100644
--- a/docs/dyn/recommender_v1.billingAccounts.locations.recommenders.recommendations.html
+++ b/docs/dyn/recommender_v1.billingAccounts.locations.recommenders.recommendations.html
@@ -177,6 +177,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -269,6 +270,7 @@
           &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
         },
       },
+      &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
       &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
       &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
         &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -381,6 +383,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -477,6 +480,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -573,6 +577,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
diff --git a/docs/dyn/recommender_v1.folders.locations.insightTypes.insights.html b/docs/dyn/recommender_v1.folders.locations.insightTypes.insights.html
index fb59a2f..0d61da6 100644
--- a/docs/dyn/recommender_v1.folders.locations.insightTypes.insights.html
+++ b/docs/dyn/recommender_v1.folders.locations.insightTypes.insights.html
@@ -125,6 +125,7 @@
   &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
   &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
   &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+  &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
   &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # Insight state.
     &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
@@ -172,6 +173,7 @@
       &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
       &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
       &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+      &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
       &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
         &quot;state&quot;: &quot;A String&quot;, # Insight state.
         &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
@@ -241,6 +243,7 @@
   &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
   &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
   &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+  &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
   &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # Insight state.
     &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
diff --git a/docs/dyn/recommender_v1.folders.locations.recommenders.recommendations.html b/docs/dyn/recommender_v1.folders.locations.recommenders.recommendations.html
index 17468d5..5ed21ef 100644
--- a/docs/dyn/recommender_v1.folders.locations.recommenders.recommendations.html
+++ b/docs/dyn/recommender_v1.folders.locations.recommenders.recommendations.html
@@ -177,6 +177,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -269,6 +270,7 @@
           &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
         },
       },
+      &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
       &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
       &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
         &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -381,6 +383,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -477,6 +480,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -573,6 +577,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
diff --git a/docs/dyn/recommender_v1.organizations.locations.insightTypes.insights.html b/docs/dyn/recommender_v1.organizations.locations.insightTypes.insights.html
index 1ba0f56..ac4177a 100644
--- a/docs/dyn/recommender_v1.organizations.locations.insightTypes.insights.html
+++ b/docs/dyn/recommender_v1.organizations.locations.insightTypes.insights.html
@@ -125,6 +125,7 @@
   &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
   &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
   &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+  &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
   &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # Insight state.
     &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
@@ -172,6 +173,7 @@
       &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
       &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
       &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+      &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
       &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
         &quot;state&quot;: &quot;A String&quot;, # Insight state.
         &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
@@ -241,6 +243,7 @@
   &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
   &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
   &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+  &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
   &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # Insight state.
     &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
diff --git a/docs/dyn/recommender_v1.organizations.locations.recommenders.recommendations.html b/docs/dyn/recommender_v1.organizations.locations.recommenders.recommendations.html
index a84adb8..748539b 100644
--- a/docs/dyn/recommender_v1.organizations.locations.recommenders.recommendations.html
+++ b/docs/dyn/recommender_v1.organizations.locations.recommenders.recommendations.html
@@ -177,6 +177,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -269,6 +270,7 @@
           &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
         },
       },
+      &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
       &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
       &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
         &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -381,6 +383,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -477,6 +480,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -573,6 +577,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
diff --git a/docs/dyn/recommender_v1.projects.locations.insightTypes.insights.html b/docs/dyn/recommender_v1.projects.locations.insightTypes.insights.html
index 4a3b1b7..6856a38 100644
--- a/docs/dyn/recommender_v1.projects.locations.insightTypes.insights.html
+++ b/docs/dyn/recommender_v1.projects.locations.insightTypes.insights.html
@@ -125,6 +125,7 @@
   &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
   &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
   &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+  &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
   &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # Insight state.
     &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
@@ -172,6 +173,7 @@
       &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
       &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
       &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+      &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
       &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
         &quot;state&quot;: &quot;A String&quot;, # Insight state.
         &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
@@ -241,6 +243,7 @@
   &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
   &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
   &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+  &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
   &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # Insight state.
     &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
diff --git a/docs/dyn/recommender_v1.projects.locations.recommenders.recommendations.html b/docs/dyn/recommender_v1.projects.locations.recommenders.recommendations.html
index c52a3c5..8e07e27 100644
--- a/docs/dyn/recommender_v1.projects.locations.recommenders.recommendations.html
+++ b/docs/dyn/recommender_v1.projects.locations.recommenders.recommendations.html
@@ -177,6 +177,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -269,6 +270,7 @@
           &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
         },
       },
+      &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
       &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
       &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
         &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -381,6 +383,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -477,6 +480,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -573,6 +577,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
diff --git a/docs/dyn/recommender_v1beta1.billingAccounts.locations.insightTypes.insights.html b/docs/dyn/recommender_v1beta1.billingAccounts.locations.insightTypes.insights.html
index 6056ae3..aefbe22 100644
--- a/docs/dyn/recommender_v1beta1.billingAccounts.locations.insightTypes.insights.html
+++ b/docs/dyn/recommender_v1beta1.billingAccounts.locations.insightTypes.insights.html
@@ -125,6 +125,7 @@
   &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
   &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
   &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+  &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
   &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # Insight state.
     &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
@@ -172,6 +173,7 @@
       &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
       &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
       &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+      &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
       &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
         &quot;state&quot;: &quot;A String&quot;, # Insight state.
         &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
@@ -241,6 +243,7 @@
   &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
   &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
   &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+  &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
   &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # Insight state.
     &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
diff --git a/docs/dyn/recommender_v1beta1.billingAccounts.locations.recommenders.recommendations.html b/docs/dyn/recommender_v1beta1.billingAccounts.locations.recommenders.recommendations.html
index cb25d4d..f5259bf 100644
--- a/docs/dyn/recommender_v1beta1.billingAccounts.locations.recommenders.recommendations.html
+++ b/docs/dyn/recommender_v1beta1.billingAccounts.locations.recommenders.recommendations.html
@@ -177,6 +177,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -269,6 +270,7 @@
           &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
         },
       },
+      &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
       &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
       &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
         &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -381,6 +383,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -477,6 +480,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -573,6 +577,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
diff --git a/docs/dyn/recommender_v1beta1.folders.locations.insightTypes.insights.html b/docs/dyn/recommender_v1beta1.folders.locations.insightTypes.insights.html
index 2fe0fed..c567602 100644
--- a/docs/dyn/recommender_v1beta1.folders.locations.insightTypes.insights.html
+++ b/docs/dyn/recommender_v1beta1.folders.locations.insightTypes.insights.html
@@ -125,6 +125,7 @@
   &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
   &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
   &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+  &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
   &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # Insight state.
     &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
@@ -172,6 +173,7 @@
       &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
       &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
       &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+      &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
       &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
         &quot;state&quot;: &quot;A String&quot;, # Insight state.
         &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
@@ -241,6 +243,7 @@
   &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
   &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
   &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+  &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
   &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # Insight state.
     &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
diff --git a/docs/dyn/recommender_v1beta1.folders.locations.recommenders.recommendations.html b/docs/dyn/recommender_v1beta1.folders.locations.recommenders.recommendations.html
index e66da78..a1e5292 100644
--- a/docs/dyn/recommender_v1beta1.folders.locations.recommenders.recommendations.html
+++ b/docs/dyn/recommender_v1beta1.folders.locations.recommenders.recommendations.html
@@ -177,6 +177,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -269,6 +270,7 @@
           &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
         },
       },
+      &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
       &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
       &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
         &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -381,6 +383,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -477,6 +480,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -573,6 +577,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
diff --git a/docs/dyn/recommender_v1beta1.organizations.locations.insightTypes.insights.html b/docs/dyn/recommender_v1beta1.organizations.locations.insightTypes.insights.html
index df6402e..cfcc809 100644
--- a/docs/dyn/recommender_v1beta1.organizations.locations.insightTypes.insights.html
+++ b/docs/dyn/recommender_v1beta1.organizations.locations.insightTypes.insights.html
@@ -125,6 +125,7 @@
   &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
   &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
   &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+  &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
   &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # Insight state.
     &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
@@ -172,6 +173,7 @@
       &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
       &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
       &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+      &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
       &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
         &quot;state&quot;: &quot;A String&quot;, # Insight state.
         &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
@@ -241,6 +243,7 @@
   &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
   &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
   &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+  &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
   &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # Insight state.
     &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
diff --git a/docs/dyn/recommender_v1beta1.organizations.locations.recommenders.recommendations.html b/docs/dyn/recommender_v1beta1.organizations.locations.recommenders.recommendations.html
index 4f8f7b4..8cb1f9d 100644
--- a/docs/dyn/recommender_v1beta1.organizations.locations.recommenders.recommendations.html
+++ b/docs/dyn/recommender_v1beta1.organizations.locations.recommenders.recommendations.html
@@ -177,6 +177,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -269,6 +270,7 @@
           &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
         },
       },
+      &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
       &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
       &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
         &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -381,6 +383,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -477,6 +480,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -573,6 +577,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
diff --git a/docs/dyn/recommender_v1beta1.projects.locations.insightTypes.insights.html b/docs/dyn/recommender_v1beta1.projects.locations.insightTypes.insights.html
index 65691e1..04435be 100644
--- a/docs/dyn/recommender_v1beta1.projects.locations.insightTypes.insights.html
+++ b/docs/dyn/recommender_v1beta1.projects.locations.insightTypes.insights.html
@@ -125,6 +125,7 @@
   &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
   &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
   &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+  &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
   &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # Insight state.
     &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
@@ -172,6 +173,7 @@
       &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
       &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
       &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+      &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
       &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
         &quot;state&quot;: &quot;A String&quot;, # Insight state.
         &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
@@ -241,6 +243,7 @@
   &quot;lastRefreshTime&quot;: &quot;A String&quot;, # Timestamp of the latest data used to generate the insight.
   &quot;name&quot;: &quot;A String&quot;, # Name of the insight.
   &quot;observationPeriod&quot;: &quot;A String&quot;, # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
+  &quot;severity&quot;: &quot;A String&quot;, # Insight&#x27;s severity.
   &quot;stateInfo&quot;: { # Information related to insight state. # Information state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # Insight state.
     &quot;stateMetadata&quot;: { # A map of metadata for the state, provided by user or automations systems.
diff --git a/docs/dyn/recommender_v1beta1.projects.locations.recommenders.recommendations.html b/docs/dyn/recommender_v1beta1.projects.locations.recommenders.recommendations.html
index 565724a..0e8e21a 100644
--- a/docs/dyn/recommender_v1beta1.projects.locations.recommenders.recommendations.html
+++ b/docs/dyn/recommender_v1beta1.projects.locations.recommenders.recommendations.html
@@ -177,6 +177,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -269,6 +270,7 @@
           &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
         },
       },
+      &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
       &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
       &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
         &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -381,6 +383,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -477,6 +480,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
@@ -573,6 +577,7 @@
       &quot;duration&quot;: &quot;A String&quot;, # Duration for which this cost applies.
     },
   },
+  &quot;priority&quot;: &quot;A String&quot;, # Recommendation&#x27;s priority.
   &quot;recommenderSubtype&quot;: &quot;A String&quot;, # Contains an identifier for a subtype of recommendations produced for the same recommender. Subtype is a function of content and impact, meaning a new subtype might be added when significant changes to `content` or `primary_impact.category` are introduced. See the Recommenders section to see a list of subtypes for a given Recommender. Examples: For recommender = &quot;google.iam.policy.Recommender&quot;, recommender_subtype can be one of &quot;REMOVE_ROLE&quot;/&quot;REPLACE_ROLE&quot;
   &quot;stateInfo&quot;: { # Information for state. Contains state and metadata. # Information for state. Contains state and metadata.
     &quot;state&quot;: &quot;A String&quot;, # The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED.
diff --git a/docs/dyn/retail_v2.projects.locations.catalogs.placements.html b/docs/dyn/retail_v2.projects.locations.catalogs.placements.html
index 1ff923e..c20023e 100644
--- a/docs/dyn/retail_v2.projects.locations.catalogs.placements.html
+++ b/docs/dyn/retail_v2.projects.locations.catalogs.placements.html
@@ -105,7 +105,7 @@
   &quot;params&quot;: { # Additional domain specific parameters for the predictions. Allowed values: * `returnProduct`: Boolean. If set to true, the associated product object will be returned in the `results.metadata` field in the prediction response. * `returnScore`: Boolean. If set to true, the prediction &#x27;score&#x27; corresponding to each returned product will be set in the `results.metadata` field in the prediction response. The given &#x27;score&#x27; indicates the probability of an product being clicked/purchased given the user&#x27;s context and history. * `strictFiltering`: Boolean. True by default. If set to false, the service will return generic (unfiltered) popular products instead of empty if your filter blocks all prediction results.
     &quot;a_key&quot;: &quot;&quot;,
   },
-  &quot;userEvent&quot;: { # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website. Next tag: 22 # Required. Context about the user, what they are looking at and what action they took to trigger the predict request. Note that this user event detail won&#x27;t be ingested to userEvent logs. Thus, a separate userEvent write request is required for event logging.
+  &quot;userEvent&quot;: { # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website. # Required. Context about the user, what they are looking at and what action they took to trigger the predict request. Note that this user event detail won&#x27;t be ingested to userEvent logs. Thus, a separate userEvent write request is required for event logging.
     &quot;attributes&quot;: { # Extra user event features to include in the recommendation model. The key must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. For product recommendation, an example of extra user information is traffic_channel, i.e. how user arrives at the site. Users can arrive at the site by coming to the site directly, or coming through Google search, and etc.
       &quot;a_key&quot;: { # A custom attribute that is not explicitly modeled in Product.
         &quot;numbers&quot;: [ # The numerical values of this custom attribute. For example, `[2.3, 15.4]` when the key is &quot;lengths_cm&quot;. At most 400 values are allowed.Otherwise, an INVALID_ARGUMENT error is returned. Exactly one of text or numbers should be set. Otherwise, an INVALID_ARGUMENT error is returned.
diff --git a/docs/dyn/retail_v2.projects.locations.catalogs.userEvents.html b/docs/dyn/retail_v2.projects.locations.catalogs.userEvents.html
index 9db78d6..81d166c 100644
--- a/docs/dyn/retail_v2.projects.locations.catalogs.userEvents.html
+++ b/docs/dyn/retail_v2.projects.locations.catalogs.userEvents.html
@@ -155,7 +155,7 @@
     },
     &quot;userEventInlineSource&quot;: { # The inline source for the input config for ImportUserEvents method. # Required. The Inline source for the input content for UserEvents.
       &quot;userEvents&quot;: [ # Required. A list of user events to import. Recommended max of 10k items.
-        { # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website. Next tag: 22
+        { # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website.
           &quot;attributes&quot;: { # Extra user event features to include in the recommendation model. The key must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. For product recommendation, an example of extra user information is traffic_channel, i.e. how user arrives at the site. Users can arrive at the site by coming to the site directly, or coming through Google search, and etc.
             &quot;a_key&quot;: { # A custom attribute that is not explicitly modeled in Product.
               &quot;numbers&quot;: [ # The numerical values of this custom attribute. For example, `[2.3, 15.4]` when the key is &quot;lengths_cm&quot;. At most 400 values are allowed.Otherwise, an INVALID_ARGUMENT error is returned. Exactly one of text or numbers should be set. Otherwise, an INVALID_ARGUMENT error is returned.
@@ -369,7 +369,7 @@
   body: object, The request body.
     The object takes the form of:
 
-{ # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website. Next tag: 22
+{ # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website.
   &quot;attributes&quot;: { # Extra user event features to include in the recommendation model. The key must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. For product recommendation, an example of extra user information is traffic_channel, i.e. how user arrives at the site. Users can arrive at the site by coming to the site directly, or coming through Google search, and etc.
     &quot;a_key&quot;: { # A custom attribute that is not explicitly modeled in Product.
       &quot;numbers&quot;: [ # The numerical values of this custom attribute. For example, `[2.3, 15.4]` when the key is &quot;lengths_cm&quot;. At most 400 values are allowed.Otherwise, an INVALID_ARGUMENT error is returned. Exactly one of text or numbers should be set. Otherwise, an INVALID_ARGUMENT error is returned.
@@ -464,7 +464,7 @@
 Returns:
   An object of the form:
 
-    { # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website. Next tag: 22
+    { # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website.
   &quot;attributes&quot;: { # Extra user event features to include in the recommendation model. The key must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. For product recommendation, an example of extra user information is traffic_channel, i.e. how user arrives at the site. Users can arrive at the site by coming to the site directly, or coming through Google search, and etc.
     &quot;a_key&quot;: { # A custom attribute that is not explicitly modeled in Product.
       &quot;numbers&quot;: [ # The numerical values of this custom attribute. For example, `[2.3, 15.4]` when the key is &quot;lengths_cm&quot;. At most 400 values are allowed.Otherwise, an INVALID_ARGUMENT error is returned. Exactly one of text or numbers should be set. Otherwise, an INVALID_ARGUMENT error is returned.
diff --git a/docs/dyn/retail_v2alpha.projects.locations.catalogs.placements.html b/docs/dyn/retail_v2alpha.projects.locations.catalogs.placements.html
index 5ddc002..1550218 100644
--- a/docs/dyn/retail_v2alpha.projects.locations.catalogs.placements.html
+++ b/docs/dyn/retail_v2alpha.projects.locations.catalogs.placements.html
@@ -105,7 +105,7 @@
   &quot;params&quot;: { # Additional domain specific parameters for the predictions. Allowed values: * `returnProduct`: Boolean. If set to true, the associated product object will be returned in the `results.metadata` field in the prediction response. * `returnScore`: Boolean. If set to true, the prediction &#x27;score&#x27; corresponding to each returned product will be set in the `results.metadata` field in the prediction response. The given &#x27;score&#x27; indicates the probability of an product being clicked/purchased given the user&#x27;s context and history. * `strictFiltering`: Boolean. True by default. If set to false, the service will return generic (unfiltered) popular products instead of empty if your filter blocks all prediction results.
     &quot;a_key&quot;: &quot;&quot;,
   },
-  &quot;userEvent&quot;: { # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website. Next tag: 22 # Required. Context about the user, what they are looking at and what action they took to trigger the predict request. Note that this user event detail won&#x27;t be ingested to userEvent logs. Thus, a separate userEvent write request is required for event logging.
+  &quot;userEvent&quot;: { # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website. # Required. Context about the user, what they are looking at and what action they took to trigger the predict request. Note that this user event detail won&#x27;t be ingested to userEvent logs. Thus, a separate userEvent write request is required for event logging.
     &quot;attributes&quot;: { # Extra user event features to include in the recommendation model. The key must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. For product recommendation, an example of extra user information is traffic_channel, i.e. how user arrives at the site. Users can arrive at the site by coming to the site directly, or coming through Google search, and etc.
       &quot;a_key&quot;: { # A custom attribute that is not explicitly modeled in Product.
         &quot;numbers&quot;: [ # The numerical values of this custom attribute. For example, `[2.3, 15.4]` when the key is &quot;lengths_cm&quot;. At most 400 values are allowed.Otherwise, an INVALID_ARGUMENT error is returned. Exactly one of text or numbers should be set. Otherwise, an INVALID_ARGUMENT error is returned.
diff --git a/docs/dyn/retail_v2alpha.projects.locations.catalogs.userEvents.html b/docs/dyn/retail_v2alpha.projects.locations.catalogs.userEvents.html
index 5dcd97d..07fd0b9 100644
--- a/docs/dyn/retail_v2alpha.projects.locations.catalogs.userEvents.html
+++ b/docs/dyn/retail_v2alpha.projects.locations.catalogs.userEvents.html
@@ -155,7 +155,7 @@
     },
     &quot;userEventInlineSource&quot;: { # The inline source for the input config for ImportUserEvents method. # Required. The Inline source for the input content for UserEvents.
       &quot;userEvents&quot;: [ # Required. A list of user events to import. Recommended max of 10k items.
-        { # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website. Next tag: 22
+        { # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website.
           &quot;attributes&quot;: { # Extra user event features to include in the recommendation model. The key must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. For product recommendation, an example of extra user information is traffic_channel, i.e. how user arrives at the site. Users can arrive at the site by coming to the site directly, or coming through Google search, and etc.
             &quot;a_key&quot;: { # A custom attribute that is not explicitly modeled in Product.
               &quot;numbers&quot;: [ # The numerical values of this custom attribute. For example, `[2.3, 15.4]` when the key is &quot;lengths_cm&quot;. At most 400 values are allowed.Otherwise, an INVALID_ARGUMENT error is returned. Exactly one of text or numbers should be set. Otherwise, an INVALID_ARGUMENT error is returned.
@@ -370,7 +370,7 @@
   body: object, The request body.
     The object takes the form of:
 
-{ # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website. Next tag: 22
+{ # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website.
   &quot;attributes&quot;: { # Extra user event features to include in the recommendation model. The key must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. For product recommendation, an example of extra user information is traffic_channel, i.e. how user arrives at the site. Users can arrive at the site by coming to the site directly, or coming through Google search, and etc.
     &quot;a_key&quot;: { # A custom attribute that is not explicitly modeled in Product.
       &quot;numbers&quot;: [ # The numerical values of this custom attribute. For example, `[2.3, 15.4]` when the key is &quot;lengths_cm&quot;. At most 400 values are allowed.Otherwise, an INVALID_ARGUMENT error is returned. Exactly one of text or numbers should be set. Otherwise, an INVALID_ARGUMENT error is returned.
@@ -466,7 +466,7 @@
 Returns:
   An object of the form:
 
-    { # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website. Next tag: 22
+    { # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website.
   &quot;attributes&quot;: { # Extra user event features to include in the recommendation model. The key must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. For product recommendation, an example of extra user information is traffic_channel, i.e. how user arrives at the site. Users can arrive at the site by coming to the site directly, or coming through Google search, and etc.
     &quot;a_key&quot;: { # A custom attribute that is not explicitly modeled in Product.
       &quot;numbers&quot;: [ # The numerical values of this custom attribute. For example, `[2.3, 15.4]` when the key is &quot;lengths_cm&quot;. At most 400 values are allowed.Otherwise, an INVALID_ARGUMENT error is returned. Exactly one of text or numbers should be set. Otherwise, an INVALID_ARGUMENT error is returned.
diff --git a/docs/dyn/retail_v2beta.projects.locations.catalogs.placements.html b/docs/dyn/retail_v2beta.projects.locations.catalogs.placements.html
index 1bdd338..1e19977 100644
--- a/docs/dyn/retail_v2beta.projects.locations.catalogs.placements.html
+++ b/docs/dyn/retail_v2beta.projects.locations.catalogs.placements.html
@@ -105,7 +105,7 @@
   &quot;params&quot;: { # Additional domain specific parameters for the predictions. Allowed values: * `returnProduct`: Boolean. If set to true, the associated product object will be returned in the `results.metadata` field in the prediction response. * `returnScore`: Boolean. If set to true, the prediction &#x27;score&#x27; corresponding to each returned product will be set in the `results.metadata` field in the prediction response. The given &#x27;score&#x27; indicates the probability of an product being clicked/purchased given the user&#x27;s context and history. * `strictFiltering`: Boolean. True by default. If set to false, the service will return generic (unfiltered) popular products instead of empty if your filter blocks all prediction results.
     &quot;a_key&quot;: &quot;&quot;,
   },
-  &quot;userEvent&quot;: { # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website. Next tag: 22 # Required. Context about the user, what they are looking at and what action they took to trigger the predict request. Note that this user event detail won&#x27;t be ingested to userEvent logs. Thus, a separate userEvent write request is required for event logging.
+  &quot;userEvent&quot;: { # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website. # Required. Context about the user, what they are looking at and what action they took to trigger the predict request. Note that this user event detail won&#x27;t be ingested to userEvent logs. Thus, a separate userEvent write request is required for event logging.
     &quot;attributes&quot;: { # Extra user event features to include in the recommendation model. The key must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. For product recommendation, an example of extra user information is traffic_channel, i.e. how user arrives at the site. Users can arrive at the site by coming to the site directly, or coming through Google search, and etc.
       &quot;a_key&quot;: { # A custom attribute that is not explicitly modeled in Product.
         &quot;numbers&quot;: [ # The numerical values of this custom attribute. For example, `[2.3, 15.4]` when the key is &quot;lengths_cm&quot;. At most 400 values are allowed.Otherwise, an INVALID_ARGUMENT error is returned. Exactly one of text or numbers should be set. Otherwise, an INVALID_ARGUMENT error is returned.
diff --git a/docs/dyn/retail_v2beta.projects.locations.catalogs.userEvents.html b/docs/dyn/retail_v2beta.projects.locations.catalogs.userEvents.html
index 1a2438d..c14b686 100644
--- a/docs/dyn/retail_v2beta.projects.locations.catalogs.userEvents.html
+++ b/docs/dyn/retail_v2beta.projects.locations.catalogs.userEvents.html
@@ -155,7 +155,7 @@
     },
     &quot;userEventInlineSource&quot;: { # The inline source for the input config for ImportUserEvents method. # Required. The Inline source for the input content for UserEvents.
       &quot;userEvents&quot;: [ # Required. A list of user events to import. Recommended max of 10k items.
-        { # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website. Next tag: 22
+        { # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website.
           &quot;attributes&quot;: { # Extra user event features to include in the recommendation model. The key must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. For product recommendation, an example of extra user information is traffic_channel, i.e. how user arrives at the site. Users can arrive at the site by coming to the site directly, or coming through Google search, and etc.
             &quot;a_key&quot;: { # A custom attribute that is not explicitly modeled in Product.
               &quot;numbers&quot;: [ # The numerical values of this custom attribute. For example, `[2.3, 15.4]` when the key is &quot;lengths_cm&quot;. At most 400 values are allowed.Otherwise, an INVALID_ARGUMENT error is returned. Exactly one of text or numbers should be set. Otherwise, an INVALID_ARGUMENT error is returned.
@@ -369,7 +369,7 @@
   body: object, The request body.
     The object takes the form of:
 
-{ # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website. Next tag: 22
+{ # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website.
   &quot;attributes&quot;: { # Extra user event features to include in the recommendation model. The key must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. For product recommendation, an example of extra user information is traffic_channel, i.e. how user arrives at the site. Users can arrive at the site by coming to the site directly, or coming through Google search, and etc.
     &quot;a_key&quot;: { # A custom attribute that is not explicitly modeled in Product.
       &quot;numbers&quot;: [ # The numerical values of this custom attribute. For example, `[2.3, 15.4]` when the key is &quot;lengths_cm&quot;. At most 400 values are allowed.Otherwise, an INVALID_ARGUMENT error is returned. Exactly one of text or numbers should be set. Otherwise, an INVALID_ARGUMENT error is returned.
@@ -464,7 +464,7 @@
 Returns:
   An object of the form:
 
-    { # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website. Next tag: 22
+    { # UserEvent captures all metadata information Retail API needs to know about how end users interact with customers&#x27; website.
   &quot;attributes&quot;: { # Extra user event features to include in the recommendation model. The key must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. For product recommendation, an example of extra user information is traffic_channel, i.e. how user arrives at the site. Users can arrive at the site by coming to the site directly, or coming through Google search, and etc.
     &quot;a_key&quot;: { # A custom attribute that is not explicitly modeled in Product.
       &quot;numbers&quot;: [ # The numerical values of this custom attribute. For example, `[2.3, 15.4]` when the key is &quot;lengths_cm&quot;. At most 400 values are allowed.Otherwise, an INVALID_ARGUMENT error is returned. Exactly one of text or numbers should be set. Otherwise, an INVALID_ARGUMENT error is returned.
diff --git a/docs/dyn/run_v1.namespaces.configurations.html b/docs/dyn/run_v1.namespaces.configurations.html
index 13fc2ea..a6515d9 100644
--- a/docs/dyn/run_v1.namespaces.configurations.html
+++ b/docs/dyn/run_v1.namespaces.configurations.html
@@ -140,7 +140,7 @@
   },
   &quot;spec&quot;: { # ConfigurationSpec holds the desired state of the Configuration (from the client). # Spec holds the desired state of the Configuration (from the client).
     &quot;template&quot;: { # RevisionTemplateSpec describes the data a revision should have when created from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190 # Template holds the latest specification for the Revision to be stamped out.
-      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all` and `private-ranges-only`.
+      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all-traffic`, `all` (deprecated), and `private-ranges-only`. `all-traffic` and `all` provide the same functionality. `all` is deprecated but will continue to be supported. Prefer `all-traffic`.
         &quot;annotations&quot;: { # (Optional) Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
           &quot;a_key&quot;: &quot;A String&quot;,
         },
@@ -453,7 +453,7 @@
       },
       &quot;spec&quot;: { # ConfigurationSpec holds the desired state of the Configuration (from the client). # Spec holds the desired state of the Configuration (from the client).
         &quot;template&quot;: { # RevisionTemplateSpec describes the data a revision should have when created from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190 # Template holds the latest specification for the Revision to be stamped out.
-          &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all` and `private-ranges-only`.
+          &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all-traffic`, `all` (deprecated), and `private-ranges-only`. `all-traffic` and `all` provide the same functionality. `all` is deprecated but will continue to be supported. Prefer `all-traffic`.
             &quot;annotations&quot;: { # (Optional) Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
               &quot;a_key&quot;: &quot;A String&quot;,
             },
diff --git a/docs/dyn/run_v1.namespaces.services.html b/docs/dyn/run_v1.namespaces.services.html
index 85ce655..91c6751 100644
--- a/docs/dyn/run_v1.namespaces.services.html
+++ b/docs/dyn/run_v1.namespaces.services.html
@@ -144,7 +144,7 @@
   },
   &quot;spec&quot;: { # ServiceSpec holds the desired state of the Route (from the client), which is used to manipulate the underlying Route and Configuration(s). # Spec holds the desired state of the Service (from the client).
     &quot;template&quot;: { # RevisionTemplateSpec describes the data a revision should have when created from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190 # Template holds the latest specification for the Revision to be stamped out.
-      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all` and `private-ranges-only`.
+      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all-traffic`, `all` (deprecated), and `private-ranges-only`. `all-traffic` and `all` provide the same functionality. `all` is deprecated but will continue to be supported. Prefer `all-traffic`.
         &quot;annotations&quot;: { # (Optional) Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
           &quot;a_key&quot;: &quot;A String&quot;,
         },
@@ -465,7 +465,7 @@
   },
   &quot;spec&quot;: { # ServiceSpec holds the desired state of the Route (from the client), which is used to manipulate the underlying Route and Configuration(s). # Spec holds the desired state of the Service (from the client).
     &quot;template&quot;: { # RevisionTemplateSpec describes the data a revision should have when created from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190 # Template holds the latest specification for the Revision to be stamped out.
-      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all` and `private-ranges-only`.
+      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all-traffic`, `all` (deprecated), and `private-ranges-only`. `all-traffic` and `all` provide the same functionality. `all` is deprecated but will continue to be supported. Prefer `all-traffic`.
         &quot;annotations&quot;: { # (Optional) Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
           &quot;a_key&quot;: &quot;A String&quot;,
         },
@@ -837,7 +837,7 @@
   },
   &quot;spec&quot;: { # ServiceSpec holds the desired state of the Route (from the client), which is used to manipulate the underlying Route and Configuration(s). # Spec holds the desired state of the Service (from the client).
     &quot;template&quot;: { # RevisionTemplateSpec describes the data a revision should have when created from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190 # Template holds the latest specification for the Revision to be stamped out.
-      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all` and `private-ranges-only`.
+      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all-traffic`, `all` (deprecated), and `private-ranges-only`. `all-traffic` and `all` provide the same functionality. `all` is deprecated but will continue to be supported. Prefer `all-traffic`.
         &quot;annotations&quot;: { # (Optional) Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
           &quot;a_key&quot;: &quot;A String&quot;,
         },
@@ -1174,7 +1174,7 @@
       },
       &quot;spec&quot;: { # ServiceSpec holds the desired state of the Route (from the client), which is used to manipulate the underlying Route and Configuration(s). # Spec holds the desired state of the Service (from the client).
         &quot;template&quot;: { # RevisionTemplateSpec describes the data a revision should have when created from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190 # Template holds the latest specification for the Revision to be stamped out.
-          &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all` and `private-ranges-only`.
+          &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all-traffic`, `all` (deprecated), and `private-ranges-only`. `all-traffic` and `all` provide the same functionality. `all` is deprecated but will continue to be supported. Prefer `all-traffic`.
             &quot;annotations&quot;: { # (Optional) Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
               &quot;a_key&quot;: &quot;A String&quot;,
             },
@@ -1507,7 +1507,7 @@
   },
   &quot;spec&quot;: { # ServiceSpec holds the desired state of the Route (from the client), which is used to manipulate the underlying Route and Configuration(s). # Spec holds the desired state of the Service (from the client).
     &quot;template&quot;: { # RevisionTemplateSpec describes the data a revision should have when created from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190 # Template holds the latest specification for the Revision to be stamped out.
-      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all` and `private-ranges-only`.
+      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all-traffic`, `all` (deprecated), and `private-ranges-only`. `all-traffic` and `all` provide the same functionality. `all` is deprecated but will continue to be supported. Prefer `all-traffic`.
         &quot;annotations&quot;: { # (Optional) Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
           &quot;a_key&quot;: &quot;A String&quot;,
         },
@@ -1828,7 +1828,7 @@
   },
   &quot;spec&quot;: { # ServiceSpec holds the desired state of the Route (from the client), which is used to manipulate the underlying Route and Configuration(s). # Spec holds the desired state of the Service (from the client).
     &quot;template&quot;: { # RevisionTemplateSpec describes the data a revision should have when created from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190 # Template holds the latest specification for the Revision to be stamped out.
-      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all` and `private-ranges-only`.
+      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all-traffic`, `all` (deprecated), and `private-ranges-only`. `all-traffic` and `all` provide the same functionality. `all` is deprecated but will continue to be supported. Prefer `all-traffic`.
         &quot;annotations&quot;: { # (Optional) Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
           &quot;a_key&quot;: &quot;A String&quot;,
         },
diff --git a/docs/dyn/run_v1.projects.locations.configurations.html b/docs/dyn/run_v1.projects.locations.configurations.html
index a27f08b..e8fd95f 100644
--- a/docs/dyn/run_v1.projects.locations.configurations.html
+++ b/docs/dyn/run_v1.projects.locations.configurations.html
@@ -140,7 +140,7 @@
   },
   &quot;spec&quot;: { # ConfigurationSpec holds the desired state of the Configuration (from the client). # Spec holds the desired state of the Configuration (from the client).
     &quot;template&quot;: { # RevisionTemplateSpec describes the data a revision should have when created from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190 # Template holds the latest specification for the Revision to be stamped out.
-      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all` and `private-ranges-only`.
+      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all-traffic`, `all` (deprecated), and `private-ranges-only`. `all-traffic` and `all` provide the same functionality. `all` is deprecated but will continue to be supported. Prefer `all-traffic`.
         &quot;annotations&quot;: { # (Optional) Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
           &quot;a_key&quot;: &quot;A String&quot;,
         },
@@ -453,7 +453,7 @@
       },
       &quot;spec&quot;: { # ConfigurationSpec holds the desired state of the Configuration (from the client). # Spec holds the desired state of the Configuration (from the client).
         &quot;template&quot;: { # RevisionTemplateSpec describes the data a revision should have when created from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190 # Template holds the latest specification for the Revision to be stamped out.
-          &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all` and `private-ranges-only`.
+          &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all-traffic`, `all` (deprecated), and `private-ranges-only`. `all-traffic` and `all` provide the same functionality. `all` is deprecated but will continue to be supported. Prefer `all-traffic`.
             &quot;annotations&quot;: { # (Optional) Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
               &quot;a_key&quot;: &quot;A String&quot;,
             },
diff --git a/docs/dyn/run_v1.projects.locations.services.html b/docs/dyn/run_v1.projects.locations.services.html
index be9d4f0..55cd4be 100644
--- a/docs/dyn/run_v1.projects.locations.services.html
+++ b/docs/dyn/run_v1.projects.locations.services.html
@@ -153,7 +153,7 @@
   },
   &quot;spec&quot;: { # ServiceSpec holds the desired state of the Route (from the client), which is used to manipulate the underlying Route and Configuration(s). # Spec holds the desired state of the Service (from the client).
     &quot;template&quot;: { # RevisionTemplateSpec describes the data a revision should have when created from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190 # Template holds the latest specification for the Revision to be stamped out.
-      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all` and `private-ranges-only`.
+      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all-traffic`, `all` (deprecated), and `private-ranges-only`. `all-traffic` and `all` provide the same functionality. `all` is deprecated but will continue to be supported. Prefer `all-traffic`.
         &quot;annotations&quot;: { # (Optional) Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
           &quot;a_key&quot;: &quot;A String&quot;,
         },
@@ -474,7 +474,7 @@
   },
   &quot;spec&quot;: { # ServiceSpec holds the desired state of the Route (from the client), which is used to manipulate the underlying Route and Configuration(s). # Spec holds the desired state of the Service (from the client).
     &quot;template&quot;: { # RevisionTemplateSpec describes the data a revision should have when created from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190 # Template holds the latest specification for the Revision to be stamped out.
-      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all` and `private-ranges-only`.
+      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all-traffic`, `all` (deprecated), and `private-ranges-only`. `all-traffic` and `all` provide the same functionality. `all` is deprecated but will continue to be supported. Prefer `all-traffic`.
         &quot;annotations&quot;: { # (Optional) Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
           &quot;a_key&quot;: &quot;A String&quot;,
         },
@@ -846,7 +846,7 @@
   },
   &quot;spec&quot;: { # ServiceSpec holds the desired state of the Route (from the client), which is used to manipulate the underlying Route and Configuration(s). # Spec holds the desired state of the Service (from the client).
     &quot;template&quot;: { # RevisionTemplateSpec describes the data a revision should have when created from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190 # Template holds the latest specification for the Revision to be stamped out.
-      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all` and `private-ranges-only`.
+      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all-traffic`, `all` (deprecated), and `private-ranges-only`. `all-traffic` and `all` provide the same functionality. `all` is deprecated but will continue to be supported. Prefer `all-traffic`.
         &quot;annotations&quot;: { # (Optional) Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
           &quot;a_key&quot;: &quot;A String&quot;,
         },
@@ -1231,7 +1231,7 @@
       },
       &quot;spec&quot;: { # ServiceSpec holds the desired state of the Route (from the client), which is used to manipulate the underlying Route and Configuration(s). # Spec holds the desired state of the Service (from the client).
         &quot;template&quot;: { # RevisionTemplateSpec describes the data a revision should have when created from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190 # Template holds the latest specification for the Revision to be stamped out.
-          &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all` and `private-ranges-only`.
+          &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all-traffic`, `all` (deprecated), and `private-ranges-only`. `all-traffic` and `all` provide the same functionality. `all` is deprecated but will continue to be supported. Prefer `all-traffic`.
             &quot;annotations&quot;: { # (Optional) Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
               &quot;a_key&quot;: &quot;A String&quot;,
             },
@@ -1564,7 +1564,7 @@
   },
   &quot;spec&quot;: { # ServiceSpec holds the desired state of the Route (from the client), which is used to manipulate the underlying Route and Configuration(s). # Spec holds the desired state of the Service (from the client).
     &quot;template&quot;: { # RevisionTemplateSpec describes the data a revision should have when created from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190 # Template holds the latest specification for the Revision to be stamped out.
-      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all` and `private-ranges-only`.
+      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all-traffic`, `all` (deprecated), and `private-ranges-only`. `all-traffic` and `all` provide the same functionality. `all` is deprecated but will continue to be supported. Prefer `all-traffic`.
         &quot;annotations&quot;: { # (Optional) Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
           &quot;a_key&quot;: &quot;A String&quot;,
         },
@@ -1885,7 +1885,7 @@
   },
   &quot;spec&quot;: { # ServiceSpec holds the desired state of the Route (from the client), which is used to manipulate the underlying Route and Configuration(s). # Spec holds the desired state of the Service (from the client).
     &quot;template&quot;: { # RevisionTemplateSpec describes the data a revision should have when created from a template. Based on: https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190 # Template holds the latest specification for the Revision to be stamped out.
-      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all` and `private-ranges-only`.
+      &quot;metadata&quot;: { # k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. # Optional metadata for this Revision, including labels and annotations. Name will be generated by the Configuration. The following annotation keys set properties of the created revision: * `autoscaling.knative.dev/minScale` sets the minimum number of instances. * `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. Multiple values should be comma separated. * `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. Supported values are `all-traffic`, `all` (deprecated), and `private-ranges-only`. `all-traffic` and `all` provide the same functionality. `all` is deprecated but will continue to be supported. Prefer `all-traffic`.
         &quot;annotations&quot;: { # (Optional) Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
           &quot;a_key&quot;: &quot;A String&quot;,
         },
diff --git a/docs/dyn/run_v1alpha1.namespaces.jobs.html b/docs/dyn/run_v1alpha1.namespaces.jobs.html
index 2174a44..4d9fd36 100644
--- a/docs/dyn/run_v1alpha1.namespaces.jobs.html
+++ b/docs/dyn/run_v1alpha1.namespaces.jobs.html
@@ -159,7 +159,7 @@
               { # EnvVar represents an environment variable present in a Container.
                 &quot;name&quot;: &quot;A String&quot;, # Name of the environment variable. Must be a C_IDENTIFIER.
                 &quot;value&quot;: &quot;A String&quot;, # Variable references $(VAR_NAME) are expanded using the previous defined environment variables in the container and any route environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to &quot;&quot;. +optional
-                &quot;valueFrom&quot;: { # Cloud Run fully managed: not supported Cloud Run on GKE: supported EnvVarSource represents a source for the value of an EnvVar. # Cloud Run fully managed: not supported Cloud Run on GKE: supported Source for the environment variable&#x27;s value. Cannot be used if value is not empty. +optional
+                &quot;valueFrom&quot;: { # Cloud Run fully managed: not supported Cloud Run on GKE: supported EnvVarSource represents a source for the value of an EnvVar. # Cloud Run fully managed: supported Source for the environment variable&#x27;s value. Only supports secret_key_ref. Cloud Run for Anthos: supported Source for the environment variable&#x27;s value. Cannot be used if value is not empty. +optional
                   &quot;configMapKeyRef&quot;: { # Cloud Run fully managed: not supported Cloud Run on GKE: supported Selects a key from a ConfigMap. # Cloud Run fully managed: not supported Cloud Run on GKE: supported Selects a key of a ConfigMap. +optional
                     &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported Cloud Run on GKE: supported The key to select.
                     &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. # This field should not be used directly as it is meant to be inlined directly into the message. Use the &quot;name&quot; field instead.
@@ -168,12 +168,12 @@
                     &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported Cloud Run on GKE: supported The ConfigMap to select from.
                     &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported Cloud Run on GKE: supported Specify whether the ConfigMap or its key must be defined +optional
                   },
-                  &quot;secretKeyRef&quot;: { # Cloud Run fully managed: not supported Cloud Run on GKE: supported SecretKeySelector selects a key of a Secret. # Cloud Run fully managed: not supported Cloud Run on GKE: supported Selects a key of a secret in the pod&#x27;s namespace +optional
-                    &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported Cloud Run on GKE: supported The key of the secret to select from. Must be a valid secret key.
+                  &quot;secretKeyRef&quot;: { # Cloud Run fully managed: supported Cloud Run on GKE: supported SecretKeySelector selects a key of a Secret. # Cloud Run fully managed: supported. Selects a key (version) of a secret in Secret Manager. Cloud Run for Anthos: supported. Selects a key of a secret in the pod&#x27;s namespace. +optional
+                    &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported A Cloud Secret Manager secret version. Must be &#x27;latest&#x27; for the latest version or an integer for a specific version. Cloud Run for Anthos: supported The key of the secret to select from. Must be a valid secret key.
                     &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. # This field should not be used directly as it is meant to be inlined directly into the message. Use the &quot;name&quot; field instead.
                       &quot;name&quot;: &quot;A String&quot;, # Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                     },
-                    &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported Cloud Run on GKE: supported The name of the secret in the pod&#x27;s namespace to select from.
+                    &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects//secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation. Cloud Run for Anthos: supported The name of the secret in the pod&#x27;s namespace to select from.
                     &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported Cloud Run on GKE: supported Specify whether the Secret or its key must be defined +optional
                   },
                 },
@@ -422,9 +422,9 @@
               &quot;defaultMode&quot;: 42, # Mode bits to use on created files by default. Must be a value between 0 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.
               &quot;items&quot;: [ # If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional.
                 { # Maps a string key to a path within a volume.
-                  &quot;key&quot;: &quot;A String&quot;, # The key to project.
+                  &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported The Cloud Secret Manager secret version. Can be &#x27;latest&#x27; for the latest value or an integer for a specific version. Cloud Run for Anthos: supported The key to project.
                   &quot;mode&quot;: 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. +optional
-                  &quot;path&quot;: &quot;A String&quot;, # The relative path of the file to map the key to. May not be an absolute path. May not contain the path element &#x27;..&#x27;. May not start with the string &#x27;..&#x27;.
+                  &quot;path&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported Cloud Run for Anthos: supported The relative path of the file to map the key to. May not be an absolute path. May not contain the path element &#x27;..&#x27;. May not start with the string &#x27;..&#x27;.
                 },
               ],
               &quot;name&quot;: &quot;A String&quot;, # Name of the config.
@@ -433,15 +433,15 @@
             &quot;name&quot;: &quot;A String&quot;, # Volume&#x27;s name.
             &quot;secret&quot;: { # The contents of the target Secret&#x27;s Data field will be presented in a volume as files using the keys in the Data field as the file names.
               &quot;defaultMode&quot;: 42, # Mode bits to use on created files by default. Must be a value between 0 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.
-              &quot;items&quot;: [ # If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional.
+              &quot;items&quot;: [ # Cloud Run fully managed: supported If unspecified, the volume will expose a file whose name is the secret_name. If specified, the key will be used as the version to fetch from Cloud Secret Manager and the path will be the name of the file exposed in the volume. When items are defined, they must specify a key and a path. Cloud Run for Anthos: supported If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional.
                 { # Maps a string key to a path within a volume.
-                  &quot;key&quot;: &quot;A String&quot;, # The key to project.
+                  &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported The Cloud Secret Manager secret version. Can be &#x27;latest&#x27; for the latest value or an integer for a specific version. Cloud Run for Anthos: supported The key to project.
                   &quot;mode&quot;: 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. +optional
-                  &quot;path&quot;: &quot;A String&quot;, # The relative path of the file to map the key to. May not be an absolute path. May not contain the path element &#x27;..&#x27;. May not start with the string &#x27;..&#x27;.
+                  &quot;path&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported Cloud Run for Anthos: supported The relative path of the file to map the key to. May not be an absolute path. May not contain the path element &#x27;..&#x27;. May not start with the string &#x27;..&#x27;.
                 },
               ],
               &quot;optional&quot;: True or False, # Specify whether the Secret or its keys must be defined.
-              &quot;secretName&quot;: &quot;A String&quot;, # Name of the secret in the container&#x27;s namespace to use.
+              &quot;secretName&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects//secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation. Cloud Run for Anthos: supported Name of the secret in the container&#x27;s namespace to use.
             },
           },
         ],
@@ -544,7 +544,7 @@
               { # EnvVar represents an environment variable present in a Container.
                 &quot;name&quot;: &quot;A String&quot;, # Name of the environment variable. Must be a C_IDENTIFIER.
                 &quot;value&quot;: &quot;A String&quot;, # Variable references $(VAR_NAME) are expanded using the previous defined environment variables in the container and any route environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to &quot;&quot;. +optional
-                &quot;valueFrom&quot;: { # Cloud Run fully managed: not supported Cloud Run on GKE: supported EnvVarSource represents a source for the value of an EnvVar. # Cloud Run fully managed: not supported Cloud Run on GKE: supported Source for the environment variable&#x27;s value. Cannot be used if value is not empty. +optional
+                &quot;valueFrom&quot;: { # Cloud Run fully managed: not supported Cloud Run on GKE: supported EnvVarSource represents a source for the value of an EnvVar. # Cloud Run fully managed: supported Source for the environment variable&#x27;s value. Only supports secret_key_ref. Cloud Run for Anthos: supported Source for the environment variable&#x27;s value. Cannot be used if value is not empty. +optional
                   &quot;configMapKeyRef&quot;: { # Cloud Run fully managed: not supported Cloud Run on GKE: supported Selects a key from a ConfigMap. # Cloud Run fully managed: not supported Cloud Run on GKE: supported Selects a key of a ConfigMap. +optional
                     &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported Cloud Run on GKE: supported The key to select.
                     &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. # This field should not be used directly as it is meant to be inlined directly into the message. Use the &quot;name&quot; field instead.
@@ -553,12 +553,12 @@
                     &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported Cloud Run on GKE: supported The ConfigMap to select from.
                     &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported Cloud Run on GKE: supported Specify whether the ConfigMap or its key must be defined +optional
                   },
-                  &quot;secretKeyRef&quot;: { # Cloud Run fully managed: not supported Cloud Run on GKE: supported SecretKeySelector selects a key of a Secret. # Cloud Run fully managed: not supported Cloud Run on GKE: supported Selects a key of a secret in the pod&#x27;s namespace +optional
-                    &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported Cloud Run on GKE: supported The key of the secret to select from. Must be a valid secret key.
+                  &quot;secretKeyRef&quot;: { # Cloud Run fully managed: supported Cloud Run on GKE: supported SecretKeySelector selects a key of a Secret. # Cloud Run fully managed: supported. Selects a key (version) of a secret in Secret Manager. Cloud Run for Anthos: supported. Selects a key of a secret in the pod&#x27;s namespace. +optional
+                    &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported A Cloud Secret Manager secret version. Must be &#x27;latest&#x27; for the latest version or an integer for a specific version. Cloud Run for Anthos: supported The key of the secret to select from. Must be a valid secret key.
                     &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. # This field should not be used directly as it is meant to be inlined directly into the message. Use the &quot;name&quot; field instead.
                       &quot;name&quot;: &quot;A String&quot;, # Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                     },
-                    &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported Cloud Run on GKE: supported The name of the secret in the pod&#x27;s namespace to select from.
+                    &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects//secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation. Cloud Run for Anthos: supported The name of the secret in the pod&#x27;s namespace to select from.
                     &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported Cloud Run on GKE: supported Specify whether the Secret or its key must be defined +optional
                   },
                 },
@@ -807,9 +807,9 @@
               &quot;defaultMode&quot;: 42, # Mode bits to use on created files by default. Must be a value between 0 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.
               &quot;items&quot;: [ # If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional.
                 { # Maps a string key to a path within a volume.
-                  &quot;key&quot;: &quot;A String&quot;, # The key to project.
+                  &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported The Cloud Secret Manager secret version. Can be &#x27;latest&#x27; for the latest value or an integer for a specific version. Cloud Run for Anthos: supported The key to project.
                   &quot;mode&quot;: 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. +optional
-                  &quot;path&quot;: &quot;A String&quot;, # The relative path of the file to map the key to. May not be an absolute path. May not contain the path element &#x27;..&#x27;. May not start with the string &#x27;..&#x27;.
+                  &quot;path&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported Cloud Run for Anthos: supported The relative path of the file to map the key to. May not be an absolute path. May not contain the path element &#x27;..&#x27;. May not start with the string &#x27;..&#x27;.
                 },
               ],
               &quot;name&quot;: &quot;A String&quot;, # Name of the config.
@@ -818,15 +818,15 @@
             &quot;name&quot;: &quot;A String&quot;, # Volume&#x27;s name.
             &quot;secret&quot;: { # The contents of the target Secret&#x27;s Data field will be presented in a volume as files using the keys in the Data field as the file names.
               &quot;defaultMode&quot;: 42, # Mode bits to use on created files by default. Must be a value between 0 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.
-              &quot;items&quot;: [ # If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional.
+              &quot;items&quot;: [ # Cloud Run fully managed: supported If unspecified, the volume will expose a file whose name is the secret_name. If specified, the key will be used as the version to fetch from Cloud Secret Manager and the path will be the name of the file exposed in the volume. When items are defined, they must specify a key and a path. Cloud Run for Anthos: supported If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional.
                 { # Maps a string key to a path within a volume.
-                  &quot;key&quot;: &quot;A String&quot;, # The key to project.
+                  &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported The Cloud Secret Manager secret version. Can be &#x27;latest&#x27; for the latest value or an integer for a specific version. Cloud Run for Anthos: supported The key to project.
                   &quot;mode&quot;: 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. +optional
-                  &quot;path&quot;: &quot;A String&quot;, # The relative path of the file to map the key to. May not be an absolute path. May not contain the path element &#x27;..&#x27;. May not start with the string &#x27;..&#x27;.
+                  &quot;path&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported Cloud Run for Anthos: supported The relative path of the file to map the key to. May not be an absolute path. May not contain the path element &#x27;..&#x27;. May not start with the string &#x27;..&#x27;.
                 },
               ],
               &quot;optional&quot;: True or False, # Specify whether the Secret or its keys must be defined.
-              &quot;secretName&quot;: &quot;A String&quot;, # Name of the secret in the container&#x27;s namespace to use.
+              &quot;secretName&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects//secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation. Cloud Run for Anthos: supported Name of the secret in the container&#x27;s namespace to use.
             },
           },
         ],
@@ -957,7 +957,7 @@
               { # EnvVar represents an environment variable present in a Container.
                 &quot;name&quot;: &quot;A String&quot;, # Name of the environment variable. Must be a C_IDENTIFIER.
                 &quot;value&quot;: &quot;A String&quot;, # Variable references $(VAR_NAME) are expanded using the previous defined environment variables in the container and any route environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to &quot;&quot;. +optional
-                &quot;valueFrom&quot;: { # Cloud Run fully managed: not supported Cloud Run on GKE: supported EnvVarSource represents a source for the value of an EnvVar. # Cloud Run fully managed: not supported Cloud Run on GKE: supported Source for the environment variable&#x27;s value. Cannot be used if value is not empty. +optional
+                &quot;valueFrom&quot;: { # Cloud Run fully managed: not supported Cloud Run on GKE: supported EnvVarSource represents a source for the value of an EnvVar. # Cloud Run fully managed: supported Source for the environment variable&#x27;s value. Only supports secret_key_ref. Cloud Run for Anthos: supported Source for the environment variable&#x27;s value. Cannot be used if value is not empty. +optional
                   &quot;configMapKeyRef&quot;: { # Cloud Run fully managed: not supported Cloud Run on GKE: supported Selects a key from a ConfigMap. # Cloud Run fully managed: not supported Cloud Run on GKE: supported Selects a key of a ConfigMap. +optional
                     &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported Cloud Run on GKE: supported The key to select.
                     &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. # This field should not be used directly as it is meant to be inlined directly into the message. Use the &quot;name&quot; field instead.
@@ -966,12 +966,12 @@
                     &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported Cloud Run on GKE: supported The ConfigMap to select from.
                     &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported Cloud Run on GKE: supported Specify whether the ConfigMap or its key must be defined +optional
                   },
-                  &quot;secretKeyRef&quot;: { # Cloud Run fully managed: not supported Cloud Run on GKE: supported SecretKeySelector selects a key of a Secret. # Cloud Run fully managed: not supported Cloud Run on GKE: supported Selects a key of a secret in the pod&#x27;s namespace +optional
-                    &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported Cloud Run on GKE: supported The key of the secret to select from. Must be a valid secret key.
+                  &quot;secretKeyRef&quot;: { # Cloud Run fully managed: supported Cloud Run on GKE: supported SecretKeySelector selects a key of a Secret. # Cloud Run fully managed: supported. Selects a key (version) of a secret in Secret Manager. Cloud Run for Anthos: supported. Selects a key of a secret in the pod&#x27;s namespace. +optional
+                    &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported A Cloud Secret Manager secret version. Must be &#x27;latest&#x27; for the latest version or an integer for a specific version. Cloud Run for Anthos: supported The key of the secret to select from. Must be a valid secret key.
                     &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. # This field should not be used directly as it is meant to be inlined directly into the message. Use the &quot;name&quot; field instead.
                       &quot;name&quot;: &quot;A String&quot;, # Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                     },
-                    &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported Cloud Run on GKE: supported The name of the secret in the pod&#x27;s namespace to select from.
+                    &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects//secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation. Cloud Run for Anthos: supported The name of the secret in the pod&#x27;s namespace to select from.
                     &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported Cloud Run on GKE: supported Specify whether the Secret or its key must be defined +optional
                   },
                 },
@@ -1220,9 +1220,9 @@
               &quot;defaultMode&quot;: 42, # Mode bits to use on created files by default. Must be a value between 0 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.
               &quot;items&quot;: [ # If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional.
                 { # Maps a string key to a path within a volume.
-                  &quot;key&quot;: &quot;A String&quot;, # The key to project.
+                  &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported The Cloud Secret Manager secret version. Can be &#x27;latest&#x27; for the latest value or an integer for a specific version. Cloud Run for Anthos: supported The key to project.
                   &quot;mode&quot;: 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. +optional
-                  &quot;path&quot;: &quot;A String&quot;, # The relative path of the file to map the key to. May not be an absolute path. May not contain the path element &#x27;..&#x27;. May not start with the string &#x27;..&#x27;.
+                  &quot;path&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported Cloud Run for Anthos: supported The relative path of the file to map the key to. May not be an absolute path. May not contain the path element &#x27;..&#x27;. May not start with the string &#x27;..&#x27;.
                 },
               ],
               &quot;name&quot;: &quot;A String&quot;, # Name of the config.
@@ -1231,15 +1231,15 @@
             &quot;name&quot;: &quot;A String&quot;, # Volume&#x27;s name.
             &quot;secret&quot;: { # The contents of the target Secret&#x27;s Data field will be presented in a volume as files using the keys in the Data field as the file names.
               &quot;defaultMode&quot;: 42, # Mode bits to use on created files by default. Must be a value between 0 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.
-              &quot;items&quot;: [ # If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional.
+              &quot;items&quot;: [ # Cloud Run fully managed: supported If unspecified, the volume will expose a file whose name is the secret_name. If specified, the key will be used as the version to fetch from Cloud Secret Manager and the path will be the name of the file exposed in the volume. When items are defined, they must specify a key and a path. Cloud Run for Anthos: supported If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional.
                 { # Maps a string key to a path within a volume.
-                  &quot;key&quot;: &quot;A String&quot;, # The key to project.
+                  &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported The Cloud Secret Manager secret version. Can be &#x27;latest&#x27; for the latest value or an integer for a specific version. Cloud Run for Anthos: supported The key to project.
                   &quot;mode&quot;: 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. +optional
-                  &quot;path&quot;: &quot;A String&quot;, # The relative path of the file to map the key to. May not be an absolute path. May not contain the path element &#x27;..&#x27;. May not start with the string &#x27;..&#x27;.
+                  &quot;path&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported Cloud Run for Anthos: supported The relative path of the file to map the key to. May not be an absolute path. May not contain the path element &#x27;..&#x27;. May not start with the string &#x27;..&#x27;.
                 },
               ],
               &quot;optional&quot;: True or False, # Specify whether the Secret or its keys must be defined.
-              &quot;secretName&quot;: &quot;A String&quot;, # Name of the secret in the container&#x27;s namespace to use.
+              &quot;secretName&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects//secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation. Cloud Run for Anthos: supported Name of the secret in the container&#x27;s namespace to use.
             },
           },
         ],
@@ -1359,7 +1359,7 @@
                   { # EnvVar represents an environment variable present in a Container.
                     &quot;name&quot;: &quot;A String&quot;, # Name of the environment variable. Must be a C_IDENTIFIER.
                     &quot;value&quot;: &quot;A String&quot;, # Variable references $(VAR_NAME) are expanded using the previous defined environment variables in the container and any route environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to &quot;&quot;. +optional
-                    &quot;valueFrom&quot;: { # Cloud Run fully managed: not supported Cloud Run on GKE: supported EnvVarSource represents a source for the value of an EnvVar. # Cloud Run fully managed: not supported Cloud Run on GKE: supported Source for the environment variable&#x27;s value. Cannot be used if value is not empty. +optional
+                    &quot;valueFrom&quot;: { # Cloud Run fully managed: not supported Cloud Run on GKE: supported EnvVarSource represents a source for the value of an EnvVar. # Cloud Run fully managed: supported Source for the environment variable&#x27;s value. Only supports secret_key_ref. Cloud Run for Anthos: supported Source for the environment variable&#x27;s value. Cannot be used if value is not empty. +optional
                       &quot;configMapKeyRef&quot;: { # Cloud Run fully managed: not supported Cloud Run on GKE: supported Selects a key from a ConfigMap. # Cloud Run fully managed: not supported Cloud Run on GKE: supported Selects a key of a ConfigMap. +optional
                         &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported Cloud Run on GKE: supported The key to select.
                         &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. # This field should not be used directly as it is meant to be inlined directly into the message. Use the &quot;name&quot; field instead.
@@ -1368,12 +1368,12 @@
                         &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported Cloud Run on GKE: supported The ConfigMap to select from.
                         &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported Cloud Run on GKE: supported Specify whether the ConfigMap or its key must be defined +optional
                       },
-                      &quot;secretKeyRef&quot;: { # Cloud Run fully managed: not supported Cloud Run on GKE: supported SecretKeySelector selects a key of a Secret. # Cloud Run fully managed: not supported Cloud Run on GKE: supported Selects a key of a secret in the pod&#x27;s namespace +optional
-                        &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported Cloud Run on GKE: supported The key of the secret to select from. Must be a valid secret key.
+                      &quot;secretKeyRef&quot;: { # Cloud Run fully managed: supported Cloud Run on GKE: supported SecretKeySelector selects a key of a Secret. # Cloud Run fully managed: supported. Selects a key (version) of a secret in Secret Manager. Cloud Run for Anthos: supported. Selects a key of a secret in the pod&#x27;s namespace. +optional
+                        &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported A Cloud Secret Manager secret version. Must be &#x27;latest&#x27; for the latest version or an integer for a specific version. Cloud Run for Anthos: supported The key of the secret to select from. Must be a valid secret key.
                         &quot;localObjectReference&quot;: { # LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. # This field should not be used directly as it is meant to be inlined directly into the message. Use the &quot;name&quot; field instead.
                           &quot;name&quot;: &quot;A String&quot;, # Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                         },
-                        &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: not supported Cloud Run on GKE: supported The name of the secret in the pod&#x27;s namespace to select from.
+                        &quot;name&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects//secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation. Cloud Run for Anthos: supported The name of the secret in the pod&#x27;s namespace to select from.
                         &quot;optional&quot;: True or False, # Cloud Run fully managed: not supported Cloud Run on GKE: supported Specify whether the Secret or its key must be defined +optional
                       },
                     },
@@ -1622,9 +1622,9 @@
                   &quot;defaultMode&quot;: 42, # Mode bits to use on created files by default. Must be a value between 0 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.
                   &quot;items&quot;: [ # If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional.
                     { # Maps a string key to a path within a volume.
-                      &quot;key&quot;: &quot;A String&quot;, # The key to project.
+                      &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported The Cloud Secret Manager secret version. Can be &#x27;latest&#x27; for the latest value or an integer for a specific version. Cloud Run for Anthos: supported The key to project.
                       &quot;mode&quot;: 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. +optional
-                      &quot;path&quot;: &quot;A String&quot;, # The relative path of the file to map the key to. May not be an absolute path. May not contain the path element &#x27;..&#x27;. May not start with the string &#x27;..&#x27;.
+                      &quot;path&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported Cloud Run for Anthos: supported The relative path of the file to map the key to. May not be an absolute path. May not contain the path element &#x27;..&#x27;. May not start with the string &#x27;..&#x27;.
                     },
                   ],
                   &quot;name&quot;: &quot;A String&quot;, # Name of the config.
@@ -1633,15 +1633,15 @@
                 &quot;name&quot;: &quot;A String&quot;, # Volume&#x27;s name.
                 &quot;secret&quot;: { # The contents of the target Secret&#x27;s Data field will be presented in a volume as files using the keys in the Data field as the file names.
                   &quot;defaultMode&quot;: 42, # Mode bits to use on created files by default. Must be a value between 0 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.
-                  &quot;items&quot;: [ # If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional.
+                  &quot;items&quot;: [ # Cloud Run fully managed: supported If unspecified, the volume will expose a file whose name is the secret_name. If specified, the key will be used as the version to fetch from Cloud Secret Manager and the path will be the name of the file exposed in the volume. When items are defined, they must specify a key and a path. Cloud Run for Anthos: supported If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional.
                     { # Maps a string key to a path within a volume.
-                      &quot;key&quot;: &quot;A String&quot;, # The key to project.
+                      &quot;key&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported The Cloud Secret Manager secret version. Can be &#x27;latest&#x27; for the latest value or an integer for a specific version. Cloud Run for Anthos: supported The key to project.
                       &quot;mode&quot;: 42, # Mode bits to use on this file, must be a value between 0 and 0777. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. +optional
-                      &quot;path&quot;: &quot;A String&quot;, # The relative path of the file to map the key to. May not be an absolute path. May not contain the path element &#x27;..&#x27;. May not start with the string &#x27;..&#x27;.
+                      &quot;path&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported Cloud Run for Anthos: supported The relative path of the file to map the key to. May not be an absolute path. May not contain the path element &#x27;..&#x27;. May not start with the string &#x27;..&#x27;.
                     },
                   ],
                   &quot;optional&quot;: True or False, # Specify whether the Secret or its keys must be defined.
-                  &quot;secretName&quot;: &quot;A String&quot;, # Name of the secret in the container&#x27;s namespace to use.
+                  &quot;secretName&quot;: &quot;A String&quot;, # Cloud Run fully managed: supported The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects//secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation. Cloud Run for Anthos: supported Name of the secret in the container&#x27;s namespace to use.
                 },
               },
             ],
diff --git a/docs/dyn/secretmanager_v1.projects.secrets.html b/docs/dyn/secretmanager_v1.projects.secrets.html
index cfed1bb..dda83fc 100644
--- a/docs/dyn/secretmanager_v1.projects.secrets.html
+++ b/docs/dyn/secretmanager_v1.projects.secrets.html
@@ -89,7 +89,7 @@
   <code><a href="#create">create(parent, body=None, secretId=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Creates a new Secret containing no SecretVersions.</p>
 <p class="toc_element">
-  <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
+  <code><a href="#delete">delete(name, etag=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Deletes a Secret.</p>
 <p class="toc_element">
   <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
@@ -139,6 +139,7 @@
     { # A secret version resource in the Secret Manager API.
   &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the SecretVersion was created.
   &quot;destroyTime&quot;: &quot;A String&quot;, # Output only. The time this SecretVersion was destroyed. Only present if state is DESTROYED.
+  &quot;etag&quot;: &quot;A String&quot;, # Output only. Etag of the currently stored SecretVersion.
   &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the SecretVersion in the format `projects/*/secrets/*/versions/*`. SecretVersion IDs in a Secret start at 1 and are incremented for each subsequent version of the secret.
   &quot;replicationStatus&quot;: { # The replication status of a SecretVersion. # The replication status of the SecretVersion.
     &quot;automatic&quot;: { # The replication status of a SecretVersion using automatic replication. Only populated if the parent Secret has an automatic replication policy. # Describes the replication status of a SecretVersion with automatic replication. Only populated if the parent Secret has an automatic replication policy.
@@ -177,6 +178,7 @@
 
 { # A Secret is a logical secret whose value and versions can be accessed. A Secret is made up of zero or more SecretVersions that represent the secret data.
   &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the Secret was created.
+  &quot;etag&quot;: &quot;A String&quot;, # Optional. Etag of the currently stored Secret.
   &quot;expireTime&quot;: &quot;A String&quot;, # Optional. Timestamp in UTC when the Secret is scheduled to expire. This is always provided on output, regardless of what was sent on input.
   &quot;labels&quot;: { # The labels assigned to this Secret. 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 must be between 0 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 assigned to a given resource.
     &quot;a_key&quot;: &quot;A String&quot;,
@@ -222,6 +224,7 @@
 
     { # A Secret is a logical secret whose value and versions can be accessed. A Secret is made up of zero or more SecretVersions that represent the secret data.
   &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the Secret was created.
+  &quot;etag&quot;: &quot;A String&quot;, # Optional. Etag of the currently stored Secret.
   &quot;expireTime&quot;: &quot;A String&quot;, # Optional. Timestamp in UTC when the Secret is scheduled to expire. This is always provided on output, regardless of what was sent on input.
   &quot;labels&quot;: { # The labels assigned to this Secret. 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 must be between 0 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 assigned to a given resource.
     &quot;a_key&quot;: &quot;A String&quot;,
@@ -258,11 +261,12 @@
 </div>
 
 <div class="method">
-    <code class="details" id="delete">delete(name, x__xgafv=None)</code>
+    <code class="details" id="delete">delete(name, etag=None, x__xgafv=None)</code>
   <pre>Deletes a Secret.
 
 Args:
   name: string, Required. The resource name of the Secret to delete in the format `projects/*/secrets/*`. (required)
+  etag: string, Optional. Etag of the Secret. The request succeeds if it matches the etag of the currently stored secret object. If the etag is omitted, the request succeeds.
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
@@ -291,6 +295,7 @@
 
     { # A Secret is a logical secret whose value and versions can be accessed. A Secret is made up of zero or more SecretVersions that represent the secret data.
   &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the Secret was created.
+  &quot;etag&quot;: &quot;A String&quot;, # Optional. Etag of the currently stored Secret.
   &quot;expireTime&quot;: &quot;A String&quot;, # Optional. Timestamp in UTC when the Secret is scheduled to expire. This is always provided on output, regardless of what was sent on input.
   &quot;labels&quot;: { # The labels assigned to this Secret. 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 must be between 0 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 assigned to a given resource.
     &quot;a_key&quot;: &quot;A String&quot;,
@@ -395,6 +400,7 @@
   &quot;secrets&quot;: [ # The list of Secrets sorted in reverse by create_time (newest first).
     { # A Secret is a logical secret whose value and versions can be accessed. A Secret is made up of zero or more SecretVersions that represent the secret data.
       &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the Secret was created.
+      &quot;etag&quot;: &quot;A String&quot;, # Optional. Etag of the currently stored Secret.
       &quot;expireTime&quot;: &quot;A String&quot;, # Optional. Timestamp in UTC when the Secret is scheduled to expire. This is always provided on output, regardless of what was sent on input.
       &quot;labels&quot;: { # The labels assigned to this Secret. 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 must be between 0 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 assigned to a given resource.
         &quot;a_key&quot;: &quot;A String&quot;,
@@ -458,6 +464,7 @@
 
 { # A Secret is a logical secret whose value and versions can be accessed. A Secret is made up of zero or more SecretVersions that represent the secret data.
   &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the Secret was created.
+  &quot;etag&quot;: &quot;A String&quot;, # Optional. Etag of the currently stored Secret.
   &quot;expireTime&quot;: &quot;A String&quot;, # Optional. Timestamp in UTC when the Secret is scheduled to expire. This is always provided on output, regardless of what was sent on input.
   &quot;labels&quot;: { # The labels assigned to this Secret. 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 must be between 0 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 assigned to a given resource.
     &quot;a_key&quot;: &quot;A String&quot;,
@@ -503,6 +510,7 @@
 
     { # A Secret is a logical secret whose value and versions can be accessed. A Secret is made up of zero or more SecretVersions that represent the secret data.
   &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the Secret was created.
+  &quot;etag&quot;: &quot;A String&quot;, # Optional. Etag of the currently stored Secret.
   &quot;expireTime&quot;: &quot;A String&quot;, # Optional. Timestamp in UTC when the Secret is scheduled to expire. This is always provided on output, regardless of what was sent on input.
   &quot;labels&quot;: { # The labels assigned to this Secret. 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 must be between 0 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 assigned to a given resource.
     &quot;a_key&quot;: &quot;A String&quot;,
diff --git a/docs/dyn/secretmanager_v1.projects.secrets.versions.html b/docs/dyn/secretmanager_v1.projects.secrets.versions.html
index a0d2143..5e1fa34 100644
--- a/docs/dyn/secretmanager_v1.projects.secrets.versions.html
+++ b/docs/dyn/secretmanager_v1.projects.secrets.versions.html
@@ -136,6 +136,7 @@
     The object takes the form of:
 
 { # Request message for SecretManagerService.DestroySecretVersion.
+  &quot;etag&quot;: &quot;A String&quot;, # Optional. Etag of the SecretVersion. The request succeeds if it matches the etag of the currently stored secret version object. If the etag is omitted, the request succeeds.
 }
 
   x__xgafv: string, V1 error format.
@@ -149,6 +150,7 @@
     { # A secret version resource in the Secret Manager API.
   &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the SecretVersion was created.
   &quot;destroyTime&quot;: &quot;A String&quot;, # Output only. The time this SecretVersion was destroyed. Only present if state is DESTROYED.
+  &quot;etag&quot;: &quot;A String&quot;, # Output only. Etag of the currently stored SecretVersion.
   &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the SecretVersion in the format `projects/*/secrets/*/versions/*`. SecretVersion IDs in a Secret start at 1 and are incremented for each subsequent version of the secret.
   &quot;replicationStatus&quot;: { # The replication status of a SecretVersion. # The replication status of the SecretVersion.
     &quot;automatic&quot;: { # The replication status of a SecretVersion using automatic replication. Only populated if the parent Secret has an automatic replication policy. # Describes the replication status of a SecretVersion with automatic replication. Only populated if the parent Secret has an automatic replication policy.
@@ -181,6 +183,7 @@
     The object takes the form of:
 
 { # Request message for SecretManagerService.DisableSecretVersion.
+  &quot;etag&quot;: &quot;A String&quot;, # Optional. Etag of the SecretVersion. The request succeeds if it matches the etag of the currently stored secret version object. If the etag is omitted, the request succeeds.
 }
 
   x__xgafv: string, V1 error format.
@@ -194,6 +197,7 @@
     { # A secret version resource in the Secret Manager API.
   &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the SecretVersion was created.
   &quot;destroyTime&quot;: &quot;A String&quot;, # Output only. The time this SecretVersion was destroyed. Only present if state is DESTROYED.
+  &quot;etag&quot;: &quot;A String&quot;, # Output only. Etag of the currently stored SecretVersion.
   &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the SecretVersion in the format `projects/*/secrets/*/versions/*`. SecretVersion IDs in a Secret start at 1 and are incremented for each subsequent version of the secret.
   &quot;replicationStatus&quot;: { # The replication status of a SecretVersion. # The replication status of the SecretVersion.
     &quot;automatic&quot;: { # The replication status of a SecretVersion using automatic replication. Only populated if the parent Secret has an automatic replication policy. # Describes the replication status of a SecretVersion with automatic replication. Only populated if the parent Secret has an automatic replication policy.
@@ -226,6 +230,7 @@
     The object takes the form of:
 
 { # Request message for SecretManagerService.EnableSecretVersion.
+  &quot;etag&quot;: &quot;A String&quot;, # Optional. Etag of the SecretVersion. The request succeeds if it matches the etag of the currently stored secret version object. If the etag is omitted, the request succeeds.
 }
 
   x__xgafv: string, V1 error format.
@@ -239,6 +244,7 @@
     { # A secret version resource in the Secret Manager API.
   &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the SecretVersion was created.
   &quot;destroyTime&quot;: &quot;A String&quot;, # Output only. The time this SecretVersion was destroyed. Only present if state is DESTROYED.
+  &quot;etag&quot;: &quot;A String&quot;, # Output only. Etag of the currently stored SecretVersion.
   &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the SecretVersion in the format `projects/*/secrets/*/versions/*`. SecretVersion IDs in a Secret start at 1 and are incremented for each subsequent version of the secret.
   &quot;replicationStatus&quot;: { # The replication status of a SecretVersion. # The replication status of the SecretVersion.
     &quot;automatic&quot;: { # The replication status of a SecretVersion using automatic replication. Only populated if the parent Secret has an automatic replication policy. # Describes the replication status of a SecretVersion with automatic replication. Only populated if the parent Secret has an automatic replication policy.
@@ -278,6 +284,7 @@
     { # A secret version resource in the Secret Manager API.
   &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the SecretVersion was created.
   &quot;destroyTime&quot;: &quot;A String&quot;, # Output only. The time this SecretVersion was destroyed. Only present if state is DESTROYED.
+  &quot;etag&quot;: &quot;A String&quot;, # Output only. Etag of the currently stored SecretVersion.
   &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the SecretVersion in the format `projects/*/secrets/*/versions/*`. SecretVersion IDs in a Secret start at 1 and are incremented for each subsequent version of the secret.
   &quot;replicationStatus&quot;: { # The replication status of a SecretVersion. # The replication status of the SecretVersion.
     &quot;automatic&quot;: { # The replication status of a SecretVersion using automatic replication. Only populated if the parent Secret has an automatic replication policy. # Describes the replication status of a SecretVersion with automatic replication. Only populated if the parent Secret has an automatic replication policy.
@@ -323,6 +330,7 @@
     { # A secret version resource in the Secret Manager API.
       &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which the SecretVersion was created.
       &quot;destroyTime&quot;: &quot;A String&quot;, # Output only. The time this SecretVersion was destroyed. Only present if state is DESTROYED.
+      &quot;etag&quot;: &quot;A String&quot;, # Output only. Etag of the currently stored SecretVersion.
       &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the SecretVersion in the format `projects/*/secrets/*/versions/*`. SecretVersion IDs in a Secret start at 1 and are incremented for each subsequent version of the secret.
       &quot;replicationStatus&quot;: { # The replication status of a SecretVersion. # The replication status of the SecretVersion.
         &quot;automatic&quot;: { # The replication status of a SecretVersion using automatic replication. Only populated if the parent Secret has an automatic replication policy. # Describes the replication status of a SecretVersion with automatic replication. Only populated if the parent Secret has an automatic replication policy.
