docs: docs update (#911)

Thank you for opening a Pull Request! Before submitting your PR, there are a few things you can do to make sure it goes smoothly:
- [ ] Make sure to open an issue as a [bug/issue](https://github.com/googleapis/google-api-python-client/issues/new/choose) before writing your code!  That way we can discuss the change, evaluate designs, and agree on the general idea
- [ ] Ensure the tests and linter pass
- [ ] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)

Fixes #<issue_number_goes_here> 🦕
diff --git a/docs/dyn/pubsub_v1.projects.subscriptions.html b/docs/dyn/pubsub_v1.projects.subscriptions.html
index 626bd82..a3fb4c8 100644
--- a/docs/dyn/pubsub_v1.projects.subscriptions.html
+++ b/docs/dyn/pubsub_v1.projects.subscriptions.html
@@ -90,7 +90,7 @@
   <code><a href="#getIamPolicy">getIamPolicy(resource, options_requestedPolicyVersion=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Gets the access control policy for a resource.</p>
 <p class="toc_element">
-  <code><a href="#list">list(project, pageSize=None, pageToken=None, x__xgafv=None)</a></code></p>
+  <code><a href="#list">list(project, pageToken=None, pageSize=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Lists matching subscriptions.</p>
 <p class="toc_element">
   <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
@@ -134,9 +134,9 @@
     The object takes the form of:
 
 { # Request for the Acknowledge method.
-    "ackIds": [ # Required. The acknowledgment ID for the messages being acknowledged that was returned
+    &quot;ackIds&quot;: [ # Required. The acknowledgment ID for the messages being acknowledged that was returned
         # by the Pub/Sub system in the `Pull` response. Must not be empty.
-      "A String",
+      &quot;A String&quot;,
     ],
   }
 
@@ -163,10 +163,10 @@
 <div class="method">
     <code class="details" id="create">create(name, body=None, x__xgafv=None)</code>
   <pre>Creates a subscription to a given topic. See the
-&lt;a href="https://cloud.google.com/pubsub/docs/admin#resource_names"&gt;
+&lt;a href=&quot;https://cloud.google.com/pubsub/docs/admin#resource_names&quot;&gt;
 resource name rules&lt;/a&gt;.
 If the subscription already exists, returns `ALREADY_EXISTS`.
-If the corresponding topic doesn't exist, returns `NOT_FOUND`.
+If the corresponding topic doesn&#x27;t exist, returns `NOT_FOUND`.
 
 If the name is not provided in the request, the server will assign a random
 name for this subscription on the same project as the topic, conforming
@@ -178,220 +178,89 @@
 
 Args:
   name: string, Required. The name of the subscription. It must have the format
-`"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must
+`&quot;projects/{project}/subscriptions/{subscription}&quot;`. `{subscription}` must
 start with a letter, and contain only letters (`[A-Za-z]`), numbers
 (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),
 plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters
-in length, and it must not start with `"goog"`. (required)
+in length, and it must not start with `&quot;goog&quot;`. (required)
   body: object, The request body.
     The object takes the form of:
 
 { # A subscription resource.
-  "name": "A String", # Required. The name of the subscription. It must have the format
-      # `"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must
-      # start with a letter, and contain only letters (`[A-Za-z]`), numbers
-      # (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),
-      # plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters
-      # in length, and it must not start with `"goog"`.
-  "ackDeadlineSeconds": 42, # The approximate amount of time (on a best-effort basis) Pub/Sub waits for
-      # the subscriber to acknowledge receipt before resending the message. In the
-      # interval after the message is delivered and before it is acknowledged, it
-      # is considered to be &lt;i&gt;outstanding&lt;/i&gt;. During that time period, the
-      # message will not be redelivered (on a best-effort basis).
-      # 
-      # For pull subscriptions, this value is used as the initial value for the ack
-      # deadline. To override this value for a given message, call
-      # `ModifyAckDeadline` with the corresponding `ack_id` if using
-      # non-streaming pull or send the `ack_id` in a
-      # `StreamingModifyAckDeadlineRequest` if using streaming pull.
-      # The minimum custom deadline you can specify is 10 seconds.
-      # The maximum custom deadline you can specify is 600 seconds (10 minutes).
-      # If this parameter is 0, a default value of 10 seconds is used.
-      # 
-      # For push delivery, this value is also used to set the request timeout for
-      # the call to the push endpoint.
-      # 
-      # If the subscriber never acknowledges the message, the Pub/Sub
-      # system will eventually redeliver the message.
-  "labels": { # See &lt;a href="https://cloud.google.com/pubsub/docs/labels"&gt; Creating and
-      # managing labels&lt;/a&gt;.
-    "a_key": "A String",
-  },
-  "pushConfig": { # Configuration for a push delivery endpoint. # If push delivery is used with this subscription, this field is
-      # used to configure it. An empty `pushConfig` signifies that the subscriber
-      # will pull and ack messages using API methods.
-    "oidcToken": { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
-        # `Authorization` header in the HTTP request for every pushed message.
-        # [OpenID Connect
-        # token](https://developers.google.com/identity/protocols/OpenIDConnect).
-      "audience": "A String", # Audience to be used when generating OIDC token. The audience claim
-          # identifies the recipients that the JWT is intended for. The audience
-          # value is a single case-sensitive string. Having multiple values (array)
-          # for the audience field is not supported. More info about the OIDC JWT
-          # token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
-          # Note: if not specified, the Push endpoint URL will be used.
-      "serviceAccountEmail": "A String", # [Service account
-          # email](https://cloud.google.com/iam/docs/service-accounts)
-          # to be used for generating the OIDC token. The caller (for
-          # CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
-          # have the iam.serviceAccounts.actAs permission for the service account.
+    &quot;retainAckedMessages&quot;: True or False, # Indicates whether to retain acknowledged messages. If true, then
+        # messages are not expunged from the subscription&#x27;s backlog, even if they are
+        # acknowledged, until they fall out of the `message_retention_duration`
+        # window. This must be true if you would like to
+        # &lt;a
+        # href=&quot;https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time&quot;&gt;
+        # Seek to a timestamp&lt;/a&gt;.
+    &quot;labels&quot;: { # See &lt;a href=&quot;https://cloud.google.com/pubsub/docs/labels&quot;&gt; Creating and
+        # managing labels&lt;/a&gt;.
+      &quot;a_key&quot;: &quot;A String&quot;,
     },
-    "attributes": { # Endpoint configuration attributes that can be used to control different
-        # aspects of the message delivery.
-        #
-        # The only currently supported attribute is `x-goog-version`, which you can
-        # use to change the format of the pushed message. This attribute
-        # indicates the version of the data expected by the endpoint. This
-        # controls the shape of the pushed message (i.e., its fields and metadata).
-        #
-        # If not present during the `CreateSubscription` call, it will default to
-        # the version of the Pub/Sub API used to make such call. If not present in a
-        # `ModifyPushConfig` call, its value will not be changed. `GetSubscription`
-        # calls will always return a valid version, even if the subscription was
-        # created without this attribute.
-        #
-        # The only supported values for the `x-goog-version` attribute are:
-        #
-        # * `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.
-        # * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.
-        #
-        # For example:
-        # &lt;pre&gt;&lt;code&gt;attributes { "x-goog-version": "v1" } &lt;/code&gt;&lt;/pre&gt;
-      "a_key": "A String",
+    &quot;expirationPolicy&quot;: { # A policy that specifies the conditions for resource expiration (i.e., # A policy that specifies the conditions for this subscription&#x27;s expiration.
+        # A subscription is considered active as long as any connected subscriber is
+        # successfully consuming messages from the subscription or is issuing
+        # operations on the subscription. If `expiration_policy` is not set, a
+        # *default policy* with `ttl` of 31 days will be used. The minimum allowed
+        # value for `expiration_policy.ttl` is 1 day.
+        # automatic resource deletion).
+      &quot;ttl&quot;: &quot;A String&quot;, # Specifies the &quot;time-to-live&quot; duration for an associated resource. The
+          # resource expires if it is not active for a period of `ttl`. The definition
+          # of &quot;activity&quot; depends on the type of the associated resource. The minimum
+          # and maximum allowed values for `ttl` depend on the type of the associated
+          # resource, as well. If `ttl` is not set, the associated resource never
+          # expires.
     },
-    "pushEndpoint": "A String", # A URL locating the endpoint to which messages should be pushed.
-        # For example, a Webhook endpoint might use "https://example.com/push".
-  },
-  "topic": "A String", # Required. The name of the topic from which this subscription is receiving messages.
-      # Format is `projects/{project}/topics/{topic}`.
-      # The value of this field will be `_deleted-topic_` if the topic has been
-      # deleted.
-  "messageRetentionDuration": "A String", # How long to retain unacknowledged messages in the subscription's backlog,
-      # from the moment a message is published.
-      # If `retain_acked_messages` is true, then this also configures the retention
-      # of acknowledged messages, and thus configures how far back in time a `Seek`
-      # can be done. Defaults to 7 days. Cannot be more than 7 days or less than 10
-      # minutes.
-  "retainAckedMessages": True or False, # Indicates whether to retain acknowledged messages. If true, then
-      # messages are not expunged from the subscription's backlog, even if they are
-      # acknowledged, until they fall out of the `message_retention_duration`
-      # window. This must be true if you would like to
-      # &lt;a
-      # href="https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time"&gt;
-      # Seek to a timestamp&lt;/a&gt;.
-  "deadLetterPolicy": { # Dead lettering is done on a best effort basis. The same message might be # A policy that specifies the conditions for dead lettering messages in
-      # this subscription. If dead_letter_policy is not set, dead lettering
-      # is disabled.
-      # 
-      # The Cloud Pub/Sub service account associated with this subscriptions's
-      # parent project (i.e.,
-      # service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have
-      # permission to Acknowledge() messages on this subscription.
-      # &lt;b&gt;EXPERIMENTAL:&lt;/b&gt; This feature is part of a closed alpha release. This
-      # API might be changed in backward-incompatible ways and is not recommended
-      # for production use. It is not subject to any SLA or deprecation policy.
-      # dead lettered multiple times.
-      #
-      # If validation on any of the fields fails at subscription creation/updation,
-      # the create/update subscription request will fail.
-    "deadLetterTopic": "A String", # The name of the topic to which dead letter messages should be published.
-        # Format is `projects/{project}/topics/{topic}`.The Cloud Pub/Sub service
-        # account associated with the enclosing subscription's parent project (i.e.,
+    &quot;deadLetterPolicy&quot;: { # Dead lettering is done on a best effort basis. The same message might be # A policy that specifies the conditions for dead lettering messages in
+        # this subscription. If dead_letter_policy is not set, dead lettering
+        # is disabled.
+        # 
+        # The Cloud Pub/Sub service account associated with this subscriptions&#x27;s
+        # parent project (i.e.,
         # service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have
-        # permission to Publish() to this topic.
+        # permission to Acknowledge() messages on this subscription.
+        # dead lettered multiple times.
         #
-        # The operation will fail if the topic does not exist.
-        # Users should ensure that there is a subscription attached to this topic
-        # since messages published to a topic with no subscriptions are lost.
-    "maxDeliveryAttempts": 42, # The maximum number of delivery attempts for any message. The value must be
-        # between 5 and 100.
-        #
-        # The number of delivery attempts is defined as 1 + (the sum of number of
-        # NACKs and number of times the acknowledgement deadline has been exceeded
-        # for the message).
-        #
-        # A NACK is any call to ModifyAckDeadline with a 0 deadline. Note that
-        # client libraries may automatically extend ack_deadlines.
-        #
-        # This field will be honored on a best effort basis.
-        #
-        # If this parameter is 0, a default value of 5 is used.
-  },
-  "expirationPolicy": { # A policy that specifies the conditions for resource expiration (i.e., # A policy that specifies the conditions for this subscription's expiration.
-      # A subscription is considered active as long as any connected subscriber is
-      # successfully consuming messages from the subscription or is issuing
-      # operations on the subscription. If `expiration_policy` is not set, a
-      # *default policy* with `ttl` of 31 days will be used. The minimum allowed
-      # value for `expiration_policy.ttl` is 1 day.
-      # automatic resource deletion).
-    "ttl": "A String", # Specifies the "time-to-live" duration for an associated resource. The
-        # resource expires if it is not active for a period of `ttl`. The definition
-        # of "activity" depends on the type of the associated resource. The minimum
-        # and maximum allowed values for `ttl` depend on the type of the associated
-        # resource, as well. If `ttl` is not set, the associated resource never
-        # expires.
-  },
-}
-
-  x__xgafv: string, V1 error format.
-    Allowed values
-      1 - v1 error format
-      2 - v2 error format
-
-Returns:
-  An object of the form:
-
-    { # A subscription resource.
-    "name": "A String", # Required. The name of the subscription. It must have the format
-        # `"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must
+        # If validation on any of the fields fails at subscription creation/updation,
+        # the create/update subscription request will fail.
+      &quot;deadLetterTopic&quot;: &quot;A String&quot;, # The name of the topic to which dead letter messages should be published.
+          # Format is `projects/{project}/topics/{topic}`.The Cloud Pub/Sub service
+          # account associated with the enclosing subscription&#x27;s parent project (i.e.,
+          # service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have
+          # permission to Publish() to this topic.
+          #
+          # The operation will fail if the topic does not exist.
+          # Users should ensure that there is a subscription attached to this topic
+          # since messages published to a topic with no subscriptions are lost.
+      &quot;maxDeliveryAttempts&quot;: 42, # The maximum number of delivery attempts for any message. The value must be
+          # between 5 and 100.
+          #
+          # The number of delivery attempts is defined as 1 + (the sum of number of
+          # NACKs and number of times the acknowledgement deadline has been exceeded
+          # for the message).
+          #
+          # A NACK is any call to ModifyAckDeadline with a 0 deadline. Note that
+          # client libraries may automatically extend ack_deadlines.
+          #
+          # This field will be honored on a best effort basis.
+          #
+          # If this parameter is 0, a default value of 5 is used.
+    },
+    &quot;name&quot;: &quot;A String&quot;, # Required. The name of the subscription. It must have the format
+        # `&quot;projects/{project}/subscriptions/{subscription}&quot;`. `{subscription}` must
         # start with a letter, and contain only letters (`[A-Za-z]`), numbers
         # (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),
         # plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters
-        # in length, and it must not start with `"goog"`.
-    "ackDeadlineSeconds": 42, # The approximate amount of time (on a best-effort basis) Pub/Sub waits for
-        # the subscriber to acknowledge receipt before resending the message. In the
-        # interval after the message is delivered and before it is acknowledged, it
-        # is considered to be &lt;i&gt;outstanding&lt;/i&gt;. During that time period, the
-        # message will not be redelivered (on a best-effort basis).
-        #
-        # For pull subscriptions, this value is used as the initial value for the ack
-        # deadline. To override this value for a given message, call
-        # `ModifyAckDeadline` with the corresponding `ack_id` if using
-        # non-streaming pull or send the `ack_id` in a
-        # `StreamingModifyAckDeadlineRequest` if using streaming pull.
-        # The minimum custom deadline you can specify is 10 seconds.
-        # The maximum custom deadline you can specify is 600 seconds (10 minutes).
-        # If this parameter is 0, a default value of 10 seconds is used.
-        #
-        # For push delivery, this value is also used to set the request timeout for
-        # the call to the push endpoint.
-        #
-        # If the subscriber never acknowledges the message, the Pub/Sub
-        # system will eventually redeliver the message.
-    "labels": { # See &lt;a href="https://cloud.google.com/pubsub/docs/labels"&gt; Creating and
-        # managing labels&lt;/a&gt;.
-      "a_key": "A String",
-    },
-    "pushConfig": { # Configuration for a push delivery endpoint. # If push delivery is used with this subscription, this field is
+        # in length, and it must not start with `&quot;goog&quot;`.
+    &quot;topic&quot;: &quot;A String&quot;, # Required. The name of the topic from which this subscription is receiving messages.
+        # Format is `projects/{project}/topics/{topic}`.
+        # The value of this field will be `_deleted-topic_` if the topic has been
+        # deleted.
+    &quot;pushConfig&quot;: { # Configuration for a push delivery endpoint. # If push delivery is used with this subscription, this field is
         # used to configure it. An empty `pushConfig` signifies that the subscriber
         # will pull and ack messages using API methods.
-      "oidcToken": { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
-          # `Authorization` header in the HTTP request for every pushed message.
-          # [OpenID Connect
-          # token](https://developers.google.com/identity/protocols/OpenIDConnect).
-        "audience": "A String", # Audience to be used when generating OIDC token. The audience claim
-            # identifies the recipients that the JWT is intended for. The audience
-            # value is a single case-sensitive string. Having multiple values (array)
-            # for the audience field is not supported. More info about the OIDC JWT
-            # token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
-            # Note: if not specified, the Push endpoint URL will be used.
-        "serviceAccountEmail": "A String", # [Service account
-            # email](https://cloud.google.com/iam/docs/service-accounts)
-            # to be used for generating the OIDC token. The caller (for
-            # CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
-            # have the iam.serviceAccounts.actAs permission for the service account.
-      },
-      "attributes": { # Endpoint configuration attributes that can be used to control different
+      &quot;attributes&quot;: { # Endpoint configuration attributes that can be used to control different
           # aspects of the message delivery.
           #
           # The only currently supported attribute is `x-goog-version`, which you can
@@ -411,82 +280,221 @@
           # * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.
           #
           # For example:
-          # &lt;pre&gt;&lt;code&gt;attributes { "x-goog-version": "v1" } &lt;/code&gt;&lt;/pre&gt;
-        "a_key": "A String",
+          # &lt;pre&gt;&lt;code&gt;attributes { &quot;x-goog-version&quot;: &quot;v1&quot; } &lt;/code&gt;&lt;/pre&gt;
+        &quot;a_key&quot;: &quot;A String&quot;,
       },
-      "pushEndpoint": "A String", # A URL locating the endpoint to which messages should be pushed.
-          # For example, a Webhook endpoint might use "https://example.com/push".
+      &quot;pushEndpoint&quot;: &quot;A String&quot;, # A URL locating the endpoint to which messages should be pushed.
+          # For example, a Webhook endpoint might use `https://example.com/push`.
+      &quot;oidcToken&quot;: { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
+          # `Authorization` header in the HTTP request for every pushed message.
+          # [OpenID Connect
+          # token](https://developers.google.com/identity/protocols/OpenIDConnect).
+        &quot;audience&quot;: &quot;A String&quot;, # Audience to be used when generating OIDC token. The audience claim
+            # identifies the recipients that the JWT is intended for. The audience
+            # value is a single case-sensitive string. Having multiple values (array)
+            # for the audience field is not supported. More info about the OIDC JWT
+            # token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
+            # Note: if not specified, the Push endpoint URL will be used.
+        &quot;serviceAccountEmail&quot;: &quot;A String&quot;, # [Service account
+            # email](https://cloud.google.com/iam/docs/service-accounts)
+            # to be used for generating the OIDC token. The caller (for
+            # CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
+            # have the iam.serviceAccounts.actAs permission for the service account.
+      },
     },
-    "topic": "A String", # Required. The name of the topic from which this subscription is receiving messages.
-        # Format is `projects/{project}/topics/{topic}`.
-        # The value of this field will be `_deleted-topic_` if the topic has been
-        # deleted.
-    "messageRetentionDuration": "A String", # How long to retain unacknowledged messages in the subscription's backlog,
+    &quot;filter&quot;: &quot;A String&quot;, # An expression written in the Cloud Pub/Sub filter language. If non-empty,
+        # then only `PubsubMessage`s whose `attributes` field matches the filter are
+        # delivered on this subscription. If empty, then no messages are filtered
+        # out.
+        # &lt;b&gt;EXPERIMENTAL:&lt;/b&gt; This feature is part of a closed alpha release. This
+        # API might be changed in backward-incompatible ways and is not recommended
+        # for production use. It is not subject to any SLA or deprecation policy.
+    &quot;ackDeadlineSeconds&quot;: 42, # The approximate amount of time (on a best-effort basis) Pub/Sub waits for
+        # the subscriber to acknowledge receipt before resending the message. In the
+        # interval after the message is delivered and before it is acknowledged, it
+        # is considered to be &lt;i&gt;outstanding&lt;/i&gt;. During that time period, the
+        # message will not be redelivered (on a best-effort basis).
+        # 
+        # For pull subscriptions, this value is used as the initial value for the ack
+        # deadline. To override this value for a given message, call
+        # `ModifyAckDeadline` with the corresponding `ack_id` if using
+        # non-streaming pull or send the `ack_id` in a
+        # `StreamingModifyAckDeadlineRequest` if using streaming pull.
+        # The minimum custom deadline you can specify is 10 seconds.
+        # The maximum custom deadline you can specify is 600 seconds (10 minutes).
+        # If this parameter is 0, a default value of 10 seconds is used.
+        # 
+        # For push delivery, this value is also used to set the request timeout for
+        # the call to the push endpoint.
+        # 
+        # If the subscriber never acknowledges the message, the Pub/Sub
+        # system will eventually redeliver the message.
+    &quot;messageRetentionDuration&quot;: &quot;A String&quot;, # How long to retain unacknowledged messages in the subscription&#x27;s backlog,
         # from the moment a message is published.
         # If `retain_acked_messages` is true, then this also configures the retention
         # of acknowledged messages, and thus configures how far back in time a `Seek`
         # can be done. Defaults to 7 days. Cannot be more than 7 days or less than 10
         # minutes.
-    "retainAckedMessages": True or False, # Indicates whether to retain acknowledged messages. If true, then
-        # messages are not expunged from the subscription's backlog, even if they are
-        # acknowledged, until they fall out of the `message_retention_duration`
-        # window. This must be true if you would like to
-        # &lt;a
-        # href="https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time"&gt;
-        # Seek to a timestamp&lt;/a&gt;.
-    "deadLetterPolicy": { # Dead lettering is done on a best effort basis. The same message might be # A policy that specifies the conditions for dead lettering messages in
-        # this subscription. If dead_letter_policy is not set, dead lettering
-        # is disabled.
-        #
-        # The Cloud Pub/Sub service account associated with this subscriptions's
-        # parent project (i.e.,
-        # service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have
-        # permission to Acknowledge() messages on this subscription.
-        # &lt;b&gt;EXPERIMENTAL:&lt;/b&gt; This feature is part of a closed alpha release. This
-        # API might be changed in backward-incompatible ways and is not recommended
-        # for production use. It is not subject to any SLA or deprecation policy.
-        # dead lettered multiple times.
-        #
-        # If validation on any of the fields fails at subscription creation/updation,
-        # the create/update subscription request will fail.
-      "deadLetterTopic": "A String", # The name of the topic to which dead letter messages should be published.
-          # Format is `projects/{project}/topics/{topic}`.The Cloud Pub/Sub service
-          # account associated with the enclosing subscription's parent project (i.e.,
+  }
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # A subscription resource.
+      &quot;retainAckedMessages&quot;: True or False, # Indicates whether to retain acknowledged messages. If true, then
+          # messages are not expunged from the subscription&#x27;s backlog, even if they are
+          # acknowledged, until they fall out of the `message_retention_duration`
+          # window. This must be true if you would like to
+          # &lt;a
+          # href=&quot;https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time&quot;&gt;
+          # Seek to a timestamp&lt;/a&gt;.
+      &quot;labels&quot;: { # See &lt;a href=&quot;https://cloud.google.com/pubsub/docs/labels&quot;&gt; Creating and
+          # managing labels&lt;/a&gt;.
+        &quot;a_key&quot;: &quot;A String&quot;,
+      },
+      &quot;expirationPolicy&quot;: { # A policy that specifies the conditions for resource expiration (i.e., # A policy that specifies the conditions for this subscription&#x27;s expiration.
+          # A subscription is considered active as long as any connected subscriber is
+          # successfully consuming messages from the subscription or is issuing
+          # operations on the subscription. If `expiration_policy` is not set, a
+          # *default policy* with `ttl` of 31 days will be used. The minimum allowed
+          # value for `expiration_policy.ttl` is 1 day.
+          # automatic resource deletion).
+        &quot;ttl&quot;: &quot;A String&quot;, # Specifies the &quot;time-to-live&quot; duration for an associated resource. The
+            # resource expires if it is not active for a period of `ttl`. The definition
+            # of &quot;activity&quot; depends on the type of the associated resource. The minimum
+            # and maximum allowed values for `ttl` depend on the type of the associated
+            # resource, as well. If `ttl` is not set, the associated resource never
+            # expires.
+      },
+      &quot;deadLetterPolicy&quot;: { # Dead lettering is done on a best effort basis. The same message might be # A policy that specifies the conditions for dead lettering messages in
+          # this subscription. If dead_letter_policy is not set, dead lettering
+          # is disabled.
+          #
+          # The Cloud Pub/Sub service account associated with this subscriptions&#x27;s
+          # parent project (i.e.,
           # service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have
-          # permission to Publish() to this topic.
+          # permission to Acknowledge() messages on this subscription.
+          # dead lettered multiple times.
           #
-          # The operation will fail if the topic does not exist.
-          # Users should ensure that there is a subscription attached to this topic
-          # since messages published to a topic with no subscriptions are lost.
-      "maxDeliveryAttempts": 42, # The maximum number of delivery attempts for any message. The value must be
-          # between 5 and 100.
+          # If validation on any of the fields fails at subscription creation/updation,
+          # the create/update subscription request will fail.
+        &quot;deadLetterTopic&quot;: &quot;A String&quot;, # The name of the topic to which dead letter messages should be published.
+            # Format is `projects/{project}/topics/{topic}`.The Cloud Pub/Sub service
+            # account associated with the enclosing subscription&#x27;s parent project (i.e.,
+            # service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have
+            # permission to Publish() to this topic.
+            #
+            # The operation will fail if the topic does not exist.
+            # Users should ensure that there is a subscription attached to this topic
+            # since messages published to a topic with no subscriptions are lost.
+        &quot;maxDeliveryAttempts&quot;: 42, # The maximum number of delivery attempts for any message. The value must be
+            # between 5 and 100.
+            #
+            # The number of delivery attempts is defined as 1 + (the sum of number of
+            # NACKs and number of times the acknowledgement deadline has been exceeded
+            # for the message).
+            #
+            # A NACK is any call to ModifyAckDeadline with a 0 deadline. Note that
+            # client libraries may automatically extend ack_deadlines.
+            #
+            # This field will be honored on a best effort basis.
+            #
+            # If this parameter is 0, a default value of 5 is used.
+      },
+      &quot;name&quot;: &quot;A String&quot;, # Required. The name of the subscription. It must have the format
+          # `&quot;projects/{project}/subscriptions/{subscription}&quot;`. `{subscription}` must
+          # start with a letter, and contain only letters (`[A-Za-z]`), numbers
+          # (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),
+          # plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters
+          # in length, and it must not start with `&quot;goog&quot;`.
+      &quot;topic&quot;: &quot;A String&quot;, # Required. The name of the topic from which this subscription is receiving messages.
+          # Format is `projects/{project}/topics/{topic}`.
+          # The value of this field will be `_deleted-topic_` if the topic has been
+          # deleted.
+      &quot;pushConfig&quot;: { # Configuration for a push delivery endpoint. # If push delivery is used with this subscription, this field is
+          # used to configure it. An empty `pushConfig` signifies that the subscriber
+          # will pull and ack messages using API methods.
+        &quot;attributes&quot;: { # Endpoint configuration attributes that can be used to control different
+            # aspects of the message delivery.
+            #
+            # The only currently supported attribute is `x-goog-version`, which you can
+            # use to change the format of the pushed message. This attribute
+            # indicates the version of the data expected by the endpoint. This
+            # controls the shape of the pushed message (i.e., its fields and metadata).
+            #
+            # If not present during the `CreateSubscription` call, it will default to
+            # the version of the Pub/Sub API used to make such call. If not present in a
+            # `ModifyPushConfig` call, its value will not be changed. `GetSubscription`
+            # calls will always return a valid version, even if the subscription was
+            # created without this attribute.
+            #
+            # The only supported values for the `x-goog-version` attribute are:
+            #
+            # * `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.
+            # * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.
+            #
+            # For example:
+            # &lt;pre&gt;&lt;code&gt;attributes { &quot;x-goog-version&quot;: &quot;v1&quot; } &lt;/code&gt;&lt;/pre&gt;
+          &quot;a_key&quot;: &quot;A String&quot;,
+        },
+        &quot;pushEndpoint&quot;: &quot;A String&quot;, # A URL locating the endpoint to which messages should be pushed.
+            # For example, a Webhook endpoint might use `https://example.com/push`.
+        &quot;oidcToken&quot;: { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
+            # `Authorization` header in the HTTP request for every pushed message.
+            # [OpenID Connect
+            # token](https://developers.google.com/identity/protocols/OpenIDConnect).
+          &quot;audience&quot;: &quot;A String&quot;, # Audience to be used when generating OIDC token. The audience claim
+              # identifies the recipients that the JWT is intended for. The audience
+              # value is a single case-sensitive string. Having multiple values (array)
+              # for the audience field is not supported. More info about the OIDC JWT
+              # token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
+              # Note: if not specified, the Push endpoint URL will be used.
+          &quot;serviceAccountEmail&quot;: &quot;A String&quot;, # [Service account
+              # email](https://cloud.google.com/iam/docs/service-accounts)
+              # to be used for generating the OIDC token. The caller (for
+              # CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
+              # have the iam.serviceAccounts.actAs permission for the service account.
+        },
+      },
+      &quot;filter&quot;: &quot;A String&quot;, # An expression written in the Cloud Pub/Sub filter language. If non-empty,
+          # then only `PubsubMessage`s whose `attributes` field matches the filter are
+          # delivered on this subscription. If empty, then no messages are filtered
+          # out.
+          # &lt;b&gt;EXPERIMENTAL:&lt;/b&gt; This feature is part of a closed alpha release. This
+          # API might be changed in backward-incompatible ways and is not recommended
+          # for production use. It is not subject to any SLA or deprecation policy.
+      &quot;ackDeadlineSeconds&quot;: 42, # The approximate amount of time (on a best-effort basis) Pub/Sub waits for
+          # the subscriber to acknowledge receipt before resending the message. In the
+          # interval after the message is delivered and before it is acknowledged, it
+          # is considered to be &lt;i&gt;outstanding&lt;/i&gt;. During that time period, the
+          # message will not be redelivered (on a best-effort basis).
           #
-          # The number of delivery attempts is defined as 1 + (the sum of number of
-          # NACKs and number of times the acknowledgement deadline has been exceeded
-          # for the message).
+          # For pull subscriptions, this value is used as the initial value for the ack
+          # deadline. To override this value for a given message, call
+          # `ModifyAckDeadline` with the corresponding `ack_id` if using
+          # non-streaming pull or send the `ack_id` in a
+          # `StreamingModifyAckDeadlineRequest` if using streaming pull.
+          # The minimum custom deadline you can specify is 10 seconds.
+          # The maximum custom deadline you can specify is 600 seconds (10 minutes).
+          # If this parameter is 0, a default value of 10 seconds is used.
           #
-          # A NACK is any call to ModifyAckDeadline with a 0 deadline. Note that
-          # client libraries may automatically extend ack_deadlines.
+          # For push delivery, this value is also used to set the request timeout for
+          # the call to the push endpoint.
           #
-          # This field will be honored on a best effort basis.
-          #
-          # If this parameter is 0, a default value of 5 is used.
-    },
-    "expirationPolicy": { # A policy that specifies the conditions for resource expiration (i.e., # A policy that specifies the conditions for this subscription's expiration.
-        # A subscription is considered active as long as any connected subscriber is
-        # successfully consuming messages from the subscription or is issuing
-        # operations on the subscription. If `expiration_policy` is not set, a
-        # *default policy* with `ttl` of 31 days will be used. The minimum allowed
-        # value for `expiration_policy.ttl` is 1 day.
-        # automatic resource deletion).
-      "ttl": "A String", # Specifies the "time-to-live" duration for an associated resource. The
-          # resource expires if it is not active for a period of `ttl`. The definition
-          # of "activity" depends on the type of the associated resource. The minimum
-          # and maximum allowed values for `ttl` depend on the type of the associated
-          # resource, as well. If `ttl` is not set, the associated resource never
-          # expires.
-    },
-  }</pre>
+          # If the subscriber never acknowledges the message, the Pub/Sub
+          # system will eventually redeliver the message.
+      &quot;messageRetentionDuration&quot;: &quot;A String&quot;, # How long to retain unacknowledged messages in the subscription&#x27;s backlog,
+          # from the moment a message is published.
+          # If `retain_acked_messages` is true, then this also configures the retention
+          # of acknowledged messages, and thus configures how far back in time a `Seek`
+          # can be done. Defaults to 7 days. Cannot be more than 7 days or less than 10
+          # minutes.
+    }</pre>
 </div>
 
 <div class="method">
@@ -536,151 +544,155 @@
   An object of the form:
 
     { # A subscription resource.
-    "name": "A String", # Required. The name of the subscription. It must have the format
-        # `"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must
-        # start with a letter, and contain only letters (`[A-Za-z]`), numbers
-        # (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),
-        # plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters
-        # in length, and it must not start with `"goog"`.
-    "ackDeadlineSeconds": 42, # The approximate amount of time (on a best-effort basis) Pub/Sub waits for
-        # the subscriber to acknowledge receipt before resending the message. In the
-        # interval after the message is delivered and before it is acknowledged, it
-        # is considered to be &lt;i&gt;outstanding&lt;/i&gt;. During that time period, the
-        # message will not be redelivered (on a best-effort basis).
-        #
-        # For pull subscriptions, this value is used as the initial value for the ack
-        # deadline. To override this value for a given message, call
-        # `ModifyAckDeadline` with the corresponding `ack_id` if using
-        # non-streaming pull or send the `ack_id` in a
-        # `StreamingModifyAckDeadlineRequest` if using streaming pull.
-        # The minimum custom deadline you can specify is 10 seconds.
-        # The maximum custom deadline you can specify is 600 seconds (10 minutes).
-        # If this parameter is 0, a default value of 10 seconds is used.
-        #
-        # For push delivery, this value is also used to set the request timeout for
-        # the call to the push endpoint.
-        #
-        # If the subscriber never acknowledges the message, the Pub/Sub
-        # system will eventually redeliver the message.
-    "labels": { # See &lt;a href="https://cloud.google.com/pubsub/docs/labels"&gt; Creating and
-        # managing labels&lt;/a&gt;.
-      "a_key": "A String",
-    },
-    "pushConfig": { # Configuration for a push delivery endpoint. # If push delivery is used with this subscription, this field is
-        # used to configure it. An empty `pushConfig` signifies that the subscriber
-        # will pull and ack messages using API methods.
-      "oidcToken": { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
-          # `Authorization` header in the HTTP request for every pushed message.
-          # [OpenID Connect
-          # token](https://developers.google.com/identity/protocols/OpenIDConnect).
-        "audience": "A String", # Audience to be used when generating OIDC token. The audience claim
-            # identifies the recipients that the JWT is intended for. The audience
-            # value is a single case-sensitive string. Having multiple values (array)
-            # for the audience field is not supported. More info about the OIDC JWT
-            # token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
-            # Note: if not specified, the Push endpoint URL will be used.
-        "serviceAccountEmail": "A String", # [Service account
-            # email](https://cloud.google.com/iam/docs/service-accounts)
-            # to be used for generating the OIDC token. The caller (for
-            # CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
-            # have the iam.serviceAccounts.actAs permission for the service account.
+      &quot;retainAckedMessages&quot;: True or False, # Indicates whether to retain acknowledged messages. If true, then
+          # messages are not expunged from the subscription&#x27;s backlog, even if they are
+          # acknowledged, until they fall out of the `message_retention_duration`
+          # window. This must be true if you would like to
+          # &lt;a
+          # href=&quot;https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time&quot;&gt;
+          # Seek to a timestamp&lt;/a&gt;.
+      &quot;labels&quot;: { # See &lt;a href=&quot;https://cloud.google.com/pubsub/docs/labels&quot;&gt; Creating and
+          # managing labels&lt;/a&gt;.
+        &quot;a_key&quot;: &quot;A String&quot;,
       },
-      "attributes": { # Endpoint configuration attributes that can be used to control different
-          # aspects of the message delivery.
-          #
-          # The only currently supported attribute is `x-goog-version`, which you can
-          # use to change the format of the pushed message. This attribute
-          # indicates the version of the data expected by the endpoint. This
-          # controls the shape of the pushed message (i.e., its fields and metadata).
-          #
-          # If not present during the `CreateSubscription` call, it will default to
-          # the version of the Pub/Sub API used to make such call. If not present in a
-          # `ModifyPushConfig` call, its value will not be changed. `GetSubscription`
-          # calls will always return a valid version, even if the subscription was
-          # created without this attribute.
-          #
-          # The only supported values for the `x-goog-version` attribute are:
-          #
-          # * `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.
-          # * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.
-          #
-          # For example:
-          # &lt;pre&gt;&lt;code&gt;attributes { "x-goog-version": "v1" } &lt;/code&gt;&lt;/pre&gt;
-        "a_key": "A String",
+      &quot;expirationPolicy&quot;: { # A policy that specifies the conditions for resource expiration (i.e., # A policy that specifies the conditions for this subscription&#x27;s expiration.
+          # A subscription is considered active as long as any connected subscriber is
+          # successfully consuming messages from the subscription or is issuing
+          # operations on the subscription. If `expiration_policy` is not set, a
+          # *default policy* with `ttl` of 31 days will be used. The minimum allowed
+          # value for `expiration_policy.ttl` is 1 day.
+          # automatic resource deletion).
+        &quot;ttl&quot;: &quot;A String&quot;, # Specifies the &quot;time-to-live&quot; duration for an associated resource. The
+            # resource expires if it is not active for a period of `ttl`. The definition
+            # of &quot;activity&quot; depends on the type of the associated resource. The minimum
+            # and maximum allowed values for `ttl` depend on the type of the associated
+            # resource, as well. If `ttl` is not set, the associated resource never
+            # expires.
       },
-      "pushEndpoint": "A String", # A URL locating the endpoint to which messages should be pushed.
-          # For example, a Webhook endpoint might use "https://example.com/push".
-    },
-    "topic": "A String", # Required. The name of the topic from which this subscription is receiving messages.
-        # Format is `projects/{project}/topics/{topic}`.
-        # The value of this field will be `_deleted-topic_` if the topic has been
-        # deleted.
-    "messageRetentionDuration": "A String", # How long to retain unacknowledged messages in the subscription's backlog,
-        # from the moment a message is published.
-        # If `retain_acked_messages` is true, then this also configures the retention
-        # of acknowledged messages, and thus configures how far back in time a `Seek`
-        # can be done. Defaults to 7 days. Cannot be more than 7 days or less than 10
-        # minutes.
-    "retainAckedMessages": True or False, # Indicates whether to retain acknowledged messages. If true, then
-        # messages are not expunged from the subscription's backlog, even if they are
-        # acknowledged, until they fall out of the `message_retention_duration`
-        # window. This must be true if you would like to
-        # &lt;a
-        # href="https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time"&gt;
-        # Seek to a timestamp&lt;/a&gt;.
-    "deadLetterPolicy": { # Dead lettering is done on a best effort basis. The same message might be # A policy that specifies the conditions for dead lettering messages in
-        # this subscription. If dead_letter_policy is not set, dead lettering
-        # is disabled.
-        #
-        # The Cloud Pub/Sub service account associated with this subscriptions's
-        # parent project (i.e.,
-        # service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have
-        # permission to Acknowledge() messages on this subscription.
-        # &lt;b&gt;EXPERIMENTAL:&lt;/b&gt; This feature is part of a closed alpha release. This
-        # API might be changed in backward-incompatible ways and is not recommended
-        # for production use. It is not subject to any SLA or deprecation policy.
-        # dead lettered multiple times.
-        #
-        # If validation on any of the fields fails at subscription creation/updation,
-        # the create/update subscription request will fail.
-      "deadLetterTopic": "A String", # The name of the topic to which dead letter messages should be published.
-          # Format is `projects/{project}/topics/{topic}`.The Cloud Pub/Sub service
-          # account associated with the enclosing subscription's parent project (i.e.,
+      &quot;deadLetterPolicy&quot;: { # Dead lettering is done on a best effort basis. The same message might be # A policy that specifies the conditions for dead lettering messages in
+          # this subscription. If dead_letter_policy is not set, dead lettering
+          # is disabled.
+          #
+          # The Cloud Pub/Sub service account associated with this subscriptions&#x27;s
+          # parent project (i.e.,
           # service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have
-          # permission to Publish() to this topic.
+          # permission to Acknowledge() messages on this subscription.
+          # dead lettered multiple times.
           #
-          # The operation will fail if the topic does not exist.
-          # Users should ensure that there is a subscription attached to this topic
-          # since messages published to a topic with no subscriptions are lost.
-      "maxDeliveryAttempts": 42, # The maximum number of delivery attempts for any message. The value must be
-          # between 5 and 100.
+          # If validation on any of the fields fails at subscription creation/updation,
+          # the create/update subscription request will fail.
+        &quot;deadLetterTopic&quot;: &quot;A String&quot;, # The name of the topic to which dead letter messages should be published.
+            # Format is `projects/{project}/topics/{topic}`.The Cloud Pub/Sub service
+            # account associated with the enclosing subscription&#x27;s parent project (i.e.,
+            # service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have
+            # permission to Publish() to this topic.
+            #
+            # The operation will fail if the topic does not exist.
+            # Users should ensure that there is a subscription attached to this topic
+            # since messages published to a topic with no subscriptions are lost.
+        &quot;maxDeliveryAttempts&quot;: 42, # The maximum number of delivery attempts for any message. The value must be
+            # between 5 and 100.
+            #
+            # The number of delivery attempts is defined as 1 + (the sum of number of
+            # NACKs and number of times the acknowledgement deadline has been exceeded
+            # for the message).
+            #
+            # A NACK is any call to ModifyAckDeadline with a 0 deadline. Note that
+            # client libraries may automatically extend ack_deadlines.
+            #
+            # This field will be honored on a best effort basis.
+            #
+            # If this parameter is 0, a default value of 5 is used.
+      },
+      &quot;name&quot;: &quot;A String&quot;, # Required. The name of the subscription. It must have the format
+          # `&quot;projects/{project}/subscriptions/{subscription}&quot;`. `{subscription}` must
+          # start with a letter, and contain only letters (`[A-Za-z]`), numbers
+          # (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),
+          # plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters
+          # in length, and it must not start with `&quot;goog&quot;`.
+      &quot;topic&quot;: &quot;A String&quot;, # Required. The name of the topic from which this subscription is receiving messages.
+          # Format is `projects/{project}/topics/{topic}`.
+          # The value of this field will be `_deleted-topic_` if the topic has been
+          # deleted.
+      &quot;pushConfig&quot;: { # Configuration for a push delivery endpoint. # If push delivery is used with this subscription, this field is
+          # used to configure it. An empty `pushConfig` signifies that the subscriber
+          # will pull and ack messages using API methods.
+        &quot;attributes&quot;: { # Endpoint configuration attributes that can be used to control different
+            # aspects of the message delivery.
+            #
+            # The only currently supported attribute is `x-goog-version`, which you can
+            # use to change the format of the pushed message. This attribute
+            # indicates the version of the data expected by the endpoint. This
+            # controls the shape of the pushed message (i.e., its fields and metadata).
+            #
+            # If not present during the `CreateSubscription` call, it will default to
+            # the version of the Pub/Sub API used to make such call. If not present in a
+            # `ModifyPushConfig` call, its value will not be changed. `GetSubscription`
+            # calls will always return a valid version, even if the subscription was
+            # created without this attribute.
+            #
+            # The only supported values for the `x-goog-version` attribute are:
+            #
+            # * `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.
+            # * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.
+            #
+            # For example:
+            # &lt;pre&gt;&lt;code&gt;attributes { &quot;x-goog-version&quot;: &quot;v1&quot; } &lt;/code&gt;&lt;/pre&gt;
+          &quot;a_key&quot;: &quot;A String&quot;,
+        },
+        &quot;pushEndpoint&quot;: &quot;A String&quot;, # A URL locating the endpoint to which messages should be pushed.
+            # For example, a Webhook endpoint might use `https://example.com/push`.
+        &quot;oidcToken&quot;: { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
+            # `Authorization` header in the HTTP request for every pushed message.
+            # [OpenID Connect
+            # token](https://developers.google.com/identity/protocols/OpenIDConnect).
+          &quot;audience&quot;: &quot;A String&quot;, # Audience to be used when generating OIDC token. The audience claim
+              # identifies the recipients that the JWT is intended for. The audience
+              # value is a single case-sensitive string. Having multiple values (array)
+              # for the audience field is not supported. More info about the OIDC JWT
+              # token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
+              # Note: if not specified, the Push endpoint URL will be used.
+          &quot;serviceAccountEmail&quot;: &quot;A String&quot;, # [Service account
+              # email](https://cloud.google.com/iam/docs/service-accounts)
+              # to be used for generating the OIDC token. The caller (for
+              # CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
+              # have the iam.serviceAccounts.actAs permission for the service account.
+        },
+      },
+      &quot;filter&quot;: &quot;A String&quot;, # An expression written in the Cloud Pub/Sub filter language. If non-empty,
+          # then only `PubsubMessage`s whose `attributes` field matches the filter are
+          # delivered on this subscription. If empty, then no messages are filtered
+          # out.
+          # &lt;b&gt;EXPERIMENTAL:&lt;/b&gt; This feature is part of a closed alpha release. This
+          # API might be changed in backward-incompatible ways and is not recommended
+          # for production use. It is not subject to any SLA or deprecation policy.
+      &quot;ackDeadlineSeconds&quot;: 42, # The approximate amount of time (on a best-effort basis) Pub/Sub waits for
+          # the subscriber to acknowledge receipt before resending the message. In the
+          # interval after the message is delivered and before it is acknowledged, it
+          # is considered to be &lt;i&gt;outstanding&lt;/i&gt;. During that time period, the
+          # message will not be redelivered (on a best-effort basis).
           #
-          # The number of delivery attempts is defined as 1 + (the sum of number of
-          # NACKs and number of times the acknowledgement deadline has been exceeded
-          # for the message).
+          # For pull subscriptions, this value is used as the initial value for the ack
+          # deadline. To override this value for a given message, call
+          # `ModifyAckDeadline` with the corresponding `ack_id` if using
+          # non-streaming pull or send the `ack_id` in a
+          # `StreamingModifyAckDeadlineRequest` if using streaming pull.
+          # The minimum custom deadline you can specify is 10 seconds.
+          # The maximum custom deadline you can specify is 600 seconds (10 minutes).
+          # If this parameter is 0, a default value of 10 seconds is used.
           #
-          # A NACK is any call to ModifyAckDeadline with a 0 deadline. Note that
-          # client libraries may automatically extend ack_deadlines.
+          # For push delivery, this value is also used to set the request timeout for
+          # the call to the push endpoint.
           #
-          # This field will be honored on a best effort basis.
-          #
-          # If this parameter is 0, a default value of 5 is used.
-    },
-    "expirationPolicy": { # A policy that specifies the conditions for resource expiration (i.e., # A policy that specifies the conditions for this subscription's expiration.
-        # A subscription is considered active as long as any connected subscriber is
-        # successfully consuming messages from the subscription or is issuing
-        # operations on the subscription. If `expiration_policy` is not set, a
-        # *default policy* with `ttl` of 31 days will be used. The minimum allowed
-        # value for `expiration_policy.ttl` is 1 day.
-        # automatic resource deletion).
-      "ttl": "A String", # Specifies the "time-to-live" duration for an associated resource. The
-          # resource expires if it is not active for a period of `ttl`. The definition
-          # of "activity" depends on the type of the associated resource. The minimum
-          # and maximum allowed values for `ttl` depend on the type of the associated
-          # resource, as well. If `ttl` is not set, the associated resource never
-          # expires.
-    },
-  }</pre>
+          # If the subscriber never acknowledges the message, the Pub/Sub
+          # system will eventually redeliver the message.
+      &quot;messageRetentionDuration&quot;: &quot;A String&quot;, # How long to retain unacknowledged messages in the subscription&#x27;s backlog,
+          # from the moment a message is published.
+          # If `retain_acked_messages` is true, then this also configures the retention
+          # of acknowledged messages, and thus configures how far back in time a `Seek`
+          # can be done. Defaults to 7 days. Cannot be more than 7 days or less than 10
+          # minutes.
+    }</pre>
 </div>
 
 <div class="method">
@@ -700,6 +712,10 @@
 Requests for policies with any conditional bindings must specify version 3.
 Policies without any conditional bindings may specify any valid value or
 leave the field unset.
+
+To learn which resources support conditions in their IAM policies, see the
+[IAM
+documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
@@ -718,36 +734,40 @@
       # permissions; each `role` can be an IAM predefined role or a user-created
       # custom role.
       #
-      # Optionally, a `binding` can specify a `condition`, which is a logical
-      # expression that allows access to a resource only if the expression evaluates
-      # to `true`. A condition can add constraints based on attributes of the
-      # request, the resource, or both.
+      # For some types of Google Cloud resources, a `binding` can also specify a
+      # `condition`, which is a logical expression that allows access to a resource
+      # only if the expression evaluates to `true`. A condition can add constraints
+      # based on attributes of the request, the resource, or both. To learn which
+      # resources support conditions in their IAM policies, see the
+      # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
       #
       # **JSON example:**
       #
       #     {
-      #       "bindings": [
+      #       &quot;bindings&quot;: [
       #         {
-      #           "role": "roles/resourcemanager.organizationAdmin",
-      #           "members": [
-      #             "user:mike@example.com",
-      #             "group:admins@example.com",
-      #             "domain:google.com",
-      #             "serviceAccount:my-project-id@appspot.gserviceaccount.com"
+      #           &quot;role&quot;: &quot;roles/resourcemanager.organizationAdmin&quot;,
+      #           &quot;members&quot;: [
+      #             &quot;user:mike@example.com&quot;,
+      #             &quot;group:admins@example.com&quot;,
+      #             &quot;domain:google.com&quot;,
+      #             &quot;serviceAccount:my-project-id@appspot.gserviceaccount.com&quot;
       #           ]
       #         },
       #         {
-      #           "role": "roles/resourcemanager.organizationViewer",
-      #           "members": ["user:eve@example.com"],
-      #           "condition": {
-      #             "title": "expirable access",
-      #             "description": "Does not grant access after Sep 2020",
-      #             "expression": "request.time &lt; timestamp('2020-10-01T00:00:00.000Z')",
+      #           &quot;role&quot;: &quot;roles/resourcemanager.organizationViewer&quot;,
+      #           &quot;members&quot;: [
+      #             &quot;user:eve@example.com&quot;
+      #           ],
+      #           &quot;condition&quot;: {
+      #             &quot;title&quot;: &quot;expirable access&quot;,
+      #             &quot;description&quot;: &quot;Does not grant access after Sep 2020&quot;,
+      #             &quot;expression&quot;: &quot;request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)&quot;,
       #           }
       #         }
       #       ],
-      #       "etag": "BwWWja0YfJA=",
-      #       "version": 3
+      #       &quot;etag&quot;: &quot;BwWWja0YfJA=&quot;,
+      #       &quot;version&quot;: 3
       #     }
       #
       # **YAML example:**
@@ -765,19 +785,105 @@
       #       condition:
       #         title: expirable access
       #         description: Does not grant access after Sep 2020
-      #         expression: request.time &lt; timestamp('2020-10-01T00:00:00.000Z')
+      #         expression: request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)
       #     - etag: BwWWja0YfJA=
       #     - version: 3
       #
       # For a description of IAM and its features, see the
       # [IAM documentation](https://cloud.google.com/iam/docs/).
-    "bindings": [ # Associates a list of `members` to a `role`. Optionally, may specify a
+    &quot;etag&quot;: &quot;A String&quot;, # `etag` is used for optimistic concurrency control as a way to help
+        # prevent simultaneous updates of a policy from overwriting each other.
+        # It is strongly suggested that systems make use of the `etag` in the
+        # read-modify-write cycle to perform policy updates in order to avoid race
+        # conditions: An `etag` is returned in the response to `getIamPolicy`, and
+        # systems are expected to put that etag in the request to `setIamPolicy` to
+        # ensure that their change will be applied to the same version of the policy.
+        #
+        # **Important:** If you use IAM Conditions, you must include the `etag` field
+        # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
+        # you to overwrite a version `3` policy with a version `1` policy, and all of
+        # the conditions in the version `3` policy are lost.
+    &quot;version&quot;: 42, # Specifies the format of the policy.
+        #
+        # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
+        # are rejected.
+        #
+        # Any operation that affects conditional role bindings must specify version
+        # `3`. This requirement applies to the following operations:
+        #
+        # * Getting a policy that includes a conditional role binding
+        # * Adding a conditional role binding to a policy
+        # * Changing a conditional role binding in a policy
+        # * Removing any role binding, with or without a condition, from a policy
+        #   that includes conditions
+        #
+        # **Important:** If you use IAM Conditions, you must include the `etag` field
+        # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
+        # you to overwrite a version `3` policy with a version `1` policy, and all of
+        # the conditions in the version `3` policy are lost.
+        #
+        # If a policy does not include any conditions, operations on that policy may
+        # specify any valid version or leave the field unset.
+        #
+        # To learn which resources support conditions in their IAM policies, see the
+        # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
+    &quot;bindings&quot;: [ # Associates a list of `members` to a `role`. Optionally, may specify a
         # `condition` that determines how and when the `bindings` are applied. Each
         # of the `bindings` must contain at least one member.
       { # Associates `members` with a `role`.
-        "role": "A String", # Role that is assigned to `members`.
-            # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
-        "members": [ # Specifies the identities requesting access for a Cloud Platform resource.
+        &quot;condition&quot;: { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
+            #
+            # If the condition evaluates to `true`, then this binding applies to the
+            # current request.
+            #
+            # If the condition evaluates to `false`, then this binding does not apply to
+            # the current request. However, a different role binding might grant the same
+            # role to one or more of the members in this binding.
+            #
+            # To learn which resources support conditions in their IAM policies, see the
+            # [IAM
+            # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
+            # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
+            # are documented at https://github.com/google/cel-spec.
+            #
+            # Example (Comparison):
+            #
+            #     title: &quot;Summary size limit&quot;
+            #     description: &quot;Determines if a summary is less than 100 chars&quot;
+            #     expression: &quot;document.summary.size() &lt; 100&quot;
+            #
+            # Example (Equality):
+            #
+            #     title: &quot;Requestor is owner&quot;
+            #     description: &quot;Determines if requestor is the document owner&quot;
+            #     expression: &quot;document.owner == request.auth.claims.email&quot;
+            #
+            # Example (Logic):
+            #
+            #     title: &quot;Public documents&quot;
+            #     description: &quot;Determine whether the document should be publicly visible&quot;
+            #     expression: &quot;document.type != &#x27;private&#x27; &amp;&amp; document.type != &#x27;internal&#x27;&quot;
+            #
+            # Example (Data Manipulation):
+            #
+            #     title: &quot;Notification string&quot;
+            #     description: &quot;Create a notification string with a timestamp.&quot;
+            #     expression: &quot;&#x27;New message received at &#x27; + string(document.create_time)&quot;
+            #
+            # The exact variables and functions that may be referenced within an expression
+            # are determined by the service that evaluates it. See the service
+            # documentation for additional information.
+          &quot;location&quot;: &quot;A String&quot;, # Optional. String indicating the location of the expression for error
+              # reporting, e.g. a file name and a position in the file.
+          &quot;title&quot;: &quot;A String&quot;, # Optional. Title for the expression, i.e. a short string describing
+              # its purpose. This can be used e.g. in UIs which allow to enter the
+              # expression.
+          &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the expression. This is a longer text which
+              # describes the expression, e.g. when hovered over it in a UI.
+          &quot;expression&quot;: &quot;A String&quot;, # Textual representation of an expression in Common Expression Language
+              # syntax.
+        },
+        &quot;members&quot;: [ # Specifies the identities requesting access for a Cloud Platform resource.
             # `members` can have the following values:
             #
             # * `allUsers`: A special identifier that represents anyone who is
@@ -820,101 +926,26 @@
             # * `domain:{domain}`: The G Suite domain (primary) that represents all the
             #    users of that domain. For example, `google.com` or `example.com`.
             #
-          "A String",
+          &quot;A String&quot;,
         ],
-        "condition": { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
-            # NOTE: An unsatisfied condition will not allow user access via current
-            # binding. Different bindings, including their conditions, are examined
-            # independently.
-            # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
-            # are documented at https://github.com/google/cel-spec.
-            #
-            # Example (Comparison):
-            #
-            #     title: "Summary size limit"
-            #     description: "Determines if a summary is less than 100 chars"
-            #     expression: "document.summary.size() &lt; 100"
-            #
-            # Example (Equality):
-            #
-            #     title: "Requestor is owner"
-            #     description: "Determines if requestor is the document owner"
-            #     expression: "document.owner == request.auth.claims.email"
-            #
-            # Example (Logic):
-            #
-            #     title: "Public documents"
-            #     description: "Determine whether the document should be publicly visible"
-            #     expression: "document.type != 'private' &amp;&amp; document.type != 'internal'"
-            #
-            # Example (Data Manipulation):
-            #
-            #     title: "Notification string"
-            #     description: "Create a notification string with a timestamp."
-            #     expression: "'New message received at ' + string(document.create_time)"
-            #
-            # The exact variables and functions that may be referenced within an expression
-            # are determined by the service that evaluates it. See the service
-            # documentation for additional information.
-          "description": "A String", # Optional. Description of the expression. This is a longer text which
-              # describes the expression, e.g. when hovered over it in a UI.
-          "expression": "A String", # Textual representation of an expression in Common Expression Language
-              # syntax.
-          "location": "A String", # Optional. String indicating the location of the expression for error
-              # reporting, e.g. a file name and a position in the file.
-          "title": "A String", # Optional. Title for the expression, i.e. a short string describing
-              # its purpose. This can be used e.g. in UIs which allow to enter the
-              # expression.
-        },
+        &quot;role&quot;: &quot;A String&quot;, # Role that is assigned to `members`.
+            # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
       },
     ],
-    "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
-        # prevent simultaneous updates of a policy from overwriting each other.
-        # It is strongly suggested that systems make use of the `etag` in the
-        # read-modify-write cycle to perform policy updates in order to avoid race
-        # conditions: An `etag` is returned in the response to `getIamPolicy`, and
-        # systems are expected to put that etag in the request to `setIamPolicy` to
-        # ensure that their change will be applied to the same version of the policy.
-        #
-        # **Important:** If you use IAM Conditions, you must include the `etag` field
-        # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
-        # you to overwrite a version `3` policy with a version `1` policy, and all of
-        # the conditions in the version `3` policy are lost.
-    "version": 42, # Specifies the format of the policy.
-        #
-        # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
-        # are rejected.
-        #
-        # Any operation that affects conditional role bindings must specify version
-        # `3`. This requirement applies to the following operations:
-        #
-        # * Getting a policy that includes a conditional role binding
-        # * Adding a conditional role binding to a policy
-        # * Changing a conditional role binding in a policy
-        # * Removing any role binding, with or without a condition, from a policy
-        #   that includes conditions
-        #
-        # **Important:** If you use IAM Conditions, you must include the `etag` field
-        # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
-        # you to overwrite a version `3` policy with a version `1` policy, and all of
-        # the conditions in the version `3` policy are lost.
-        #
-        # If a policy does not include any conditions, operations on that policy may
-        # specify any valid version or leave the field unset.
   }</pre>
 </div>
 
 <div class="method">
-    <code class="details" id="list">list(project, pageSize=None, pageToken=None, x__xgafv=None)</code>
+    <code class="details" id="list">list(project, pageToken=None, pageSize=None, x__xgafv=None)</code>
   <pre>Lists matching subscriptions.
 
 Args:
   project: string, Required. The name of the project in which to list subscriptions.
 Format is `projects/{project-id}`. (required)
-  pageSize: integer, Maximum number of subscriptions to return.
   pageToken: string, The value returned by the last `ListSubscriptionsResponse`; indicates that
 this is a continuation of a prior `ListSubscriptions` call, and that the
 system should return the next page of data.
+  pageSize: integer, Maximum number of subscriptions to return.
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
@@ -924,156 +955,160 @@
   An object of the form:
 
     { # Response for the `ListSubscriptions` method.
-    "nextPageToken": "A String", # If not empty, indicates that there may be more subscriptions that match
+    &quot;nextPageToken&quot;: &quot;A String&quot;, # If not empty, indicates that there may be more subscriptions that match
         # the request; this value should be passed in a new
         # `ListSubscriptionsRequest` to get more subscriptions.
-    "subscriptions": [ # The subscriptions that match the request.
+    &quot;subscriptions&quot;: [ # The subscriptions that match the request.
       { # A subscription resource.
-        "name": "A String", # Required. The name of the subscription. It must have the format
-            # `"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must
-            # start with a letter, and contain only letters (`[A-Za-z]`), numbers
-            # (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),
-            # plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters
-            # in length, and it must not start with `"goog"`.
-        "ackDeadlineSeconds": 42, # The approximate amount of time (on a best-effort basis) Pub/Sub waits for
-            # the subscriber to acknowledge receipt before resending the message. In the
-            # interval after the message is delivered and before it is acknowledged, it
-            # is considered to be &lt;i&gt;outstanding&lt;/i&gt;. During that time period, the
-            # message will not be redelivered (on a best-effort basis).
-            #
-            # For pull subscriptions, this value is used as the initial value for the ack
-            # deadline. To override this value for a given message, call
-            # `ModifyAckDeadline` with the corresponding `ack_id` if using
-            # non-streaming pull or send the `ack_id` in a
-            # `StreamingModifyAckDeadlineRequest` if using streaming pull.
-            # The minimum custom deadline you can specify is 10 seconds.
-            # The maximum custom deadline you can specify is 600 seconds (10 minutes).
-            # If this parameter is 0, a default value of 10 seconds is used.
-            #
-            # For push delivery, this value is also used to set the request timeout for
-            # the call to the push endpoint.
-            #
-            # If the subscriber never acknowledges the message, the Pub/Sub
-            # system will eventually redeliver the message.
-        "labels": { # See &lt;a href="https://cloud.google.com/pubsub/docs/labels"&gt; Creating and
-            # managing labels&lt;/a&gt;.
-          "a_key": "A String",
-        },
-        "pushConfig": { # Configuration for a push delivery endpoint. # If push delivery is used with this subscription, this field is
-            # used to configure it. An empty `pushConfig` signifies that the subscriber
-            # will pull and ack messages using API methods.
-          "oidcToken": { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
-              # `Authorization` header in the HTTP request for every pushed message.
-              # [OpenID Connect
-              # token](https://developers.google.com/identity/protocols/OpenIDConnect).
-            "audience": "A String", # Audience to be used when generating OIDC token. The audience claim
-                # identifies the recipients that the JWT is intended for. The audience
-                # value is a single case-sensitive string. Having multiple values (array)
-                # for the audience field is not supported. More info about the OIDC JWT
-                # token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
-                # Note: if not specified, the Push endpoint URL will be used.
-            "serviceAccountEmail": "A String", # [Service account
-                # email](https://cloud.google.com/iam/docs/service-accounts)
-                # to be used for generating the OIDC token. The caller (for
-                # CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
-                # have the iam.serviceAccounts.actAs permission for the service account.
+          &quot;retainAckedMessages&quot;: True or False, # Indicates whether to retain acknowledged messages. If true, then
+              # messages are not expunged from the subscription&#x27;s backlog, even if they are
+              # acknowledged, until they fall out of the `message_retention_duration`
+              # window. This must be true if you would like to
+              # &lt;a
+              # href=&quot;https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time&quot;&gt;
+              # Seek to a timestamp&lt;/a&gt;.
+          &quot;labels&quot;: { # See &lt;a href=&quot;https://cloud.google.com/pubsub/docs/labels&quot;&gt; Creating and
+              # managing labels&lt;/a&gt;.
+            &quot;a_key&quot;: &quot;A String&quot;,
           },
-          "attributes": { # Endpoint configuration attributes that can be used to control different
-              # aspects of the message delivery.
-              #
-              # The only currently supported attribute is `x-goog-version`, which you can
-              # use to change the format of the pushed message. This attribute
-              # indicates the version of the data expected by the endpoint. This
-              # controls the shape of the pushed message (i.e., its fields and metadata).
-              #
-              # If not present during the `CreateSubscription` call, it will default to
-              # the version of the Pub/Sub API used to make such call. If not present in a
-              # `ModifyPushConfig` call, its value will not be changed. `GetSubscription`
-              # calls will always return a valid version, even if the subscription was
-              # created without this attribute.
-              #
-              # The only supported values for the `x-goog-version` attribute are:
-              #
-              # * `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.
-              # * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.
-              #
-              # For example:
-              # &lt;pre&gt;&lt;code&gt;attributes { "x-goog-version": "v1" } &lt;/code&gt;&lt;/pre&gt;
-            "a_key": "A String",
+          &quot;expirationPolicy&quot;: { # A policy that specifies the conditions for resource expiration (i.e., # A policy that specifies the conditions for this subscription&#x27;s expiration.
+              # A subscription is considered active as long as any connected subscriber is
+              # successfully consuming messages from the subscription or is issuing
+              # operations on the subscription. If `expiration_policy` is not set, a
+              # *default policy* with `ttl` of 31 days will be used. The minimum allowed
+              # value for `expiration_policy.ttl` is 1 day.
+              # automatic resource deletion).
+            &quot;ttl&quot;: &quot;A String&quot;, # Specifies the &quot;time-to-live&quot; duration for an associated resource. The
+                # resource expires if it is not active for a period of `ttl`. The definition
+                # of &quot;activity&quot; depends on the type of the associated resource. The minimum
+                # and maximum allowed values for `ttl` depend on the type of the associated
+                # resource, as well. If `ttl` is not set, the associated resource never
+                # expires.
           },
-          "pushEndpoint": "A String", # A URL locating the endpoint to which messages should be pushed.
-              # For example, a Webhook endpoint might use "https://example.com/push".
-        },
-        "topic": "A String", # Required. The name of the topic from which this subscription is receiving messages.
-            # Format is `projects/{project}/topics/{topic}`.
-            # The value of this field will be `_deleted-topic_` if the topic has been
-            # deleted.
-        "messageRetentionDuration": "A String", # How long to retain unacknowledged messages in the subscription's backlog,
-            # from the moment a message is published.
-            # If `retain_acked_messages` is true, then this also configures the retention
-            # of acknowledged messages, and thus configures how far back in time a `Seek`
-            # can be done. Defaults to 7 days. Cannot be more than 7 days or less than 10
-            # minutes.
-        "retainAckedMessages": True or False, # Indicates whether to retain acknowledged messages. If true, then
-            # messages are not expunged from the subscription's backlog, even if they are
-            # acknowledged, until they fall out of the `message_retention_duration`
-            # window. This must be true if you would like to
-            # &lt;a
-            # href="https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time"&gt;
-            # Seek to a timestamp&lt;/a&gt;.
-        "deadLetterPolicy": { # Dead lettering is done on a best effort basis. The same message might be # A policy that specifies the conditions for dead lettering messages in
-            # this subscription. If dead_letter_policy is not set, dead lettering
-            # is disabled.
-            #
-            # The Cloud Pub/Sub service account associated with this subscriptions's
-            # parent project (i.e.,
-            # service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have
-            # permission to Acknowledge() messages on this subscription.
-            # &lt;b&gt;EXPERIMENTAL:&lt;/b&gt; This feature is part of a closed alpha release. This
-            # API might be changed in backward-incompatible ways and is not recommended
-            # for production use. It is not subject to any SLA or deprecation policy.
-            # dead lettered multiple times.
-            #
-            # If validation on any of the fields fails at subscription creation/updation,
-            # the create/update subscription request will fail.
-          "deadLetterTopic": "A String", # The name of the topic to which dead letter messages should be published.
-              # Format is `projects/{project}/topics/{topic}`.The Cloud Pub/Sub service
-              # account associated with the enclosing subscription's parent project (i.e.,
+          &quot;deadLetterPolicy&quot;: { # Dead lettering is done on a best effort basis. The same message might be # A policy that specifies the conditions for dead lettering messages in
+              # this subscription. If dead_letter_policy is not set, dead lettering
+              # is disabled.
+              #
+              # The Cloud Pub/Sub service account associated with this subscriptions&#x27;s
+              # parent project (i.e.,
               # service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have
-              # permission to Publish() to this topic.
+              # permission to Acknowledge() messages on this subscription.
+              # dead lettered multiple times.
               #
-              # The operation will fail if the topic does not exist.
-              # Users should ensure that there is a subscription attached to this topic
-              # since messages published to a topic with no subscriptions are lost.
-          "maxDeliveryAttempts": 42, # The maximum number of delivery attempts for any message. The value must be
-              # between 5 and 100.
+              # If validation on any of the fields fails at subscription creation/updation,
+              # the create/update subscription request will fail.
+            &quot;deadLetterTopic&quot;: &quot;A String&quot;, # The name of the topic to which dead letter messages should be published.
+                # Format is `projects/{project}/topics/{topic}`.The Cloud Pub/Sub service
+                # account associated with the enclosing subscription&#x27;s parent project (i.e.,
+                # service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have
+                # permission to Publish() to this topic.
+                #
+                # The operation will fail if the topic does not exist.
+                # Users should ensure that there is a subscription attached to this topic
+                # since messages published to a topic with no subscriptions are lost.
+            &quot;maxDeliveryAttempts&quot;: 42, # The maximum number of delivery attempts for any message. The value must be
+                # between 5 and 100.
+                #
+                # The number of delivery attempts is defined as 1 + (the sum of number of
+                # NACKs and number of times the acknowledgement deadline has been exceeded
+                # for the message).
+                #
+                # A NACK is any call to ModifyAckDeadline with a 0 deadline. Note that
+                # client libraries may automatically extend ack_deadlines.
+                #
+                # This field will be honored on a best effort basis.
+                #
+                # If this parameter is 0, a default value of 5 is used.
+          },
+          &quot;name&quot;: &quot;A String&quot;, # Required. The name of the subscription. It must have the format
+              # `&quot;projects/{project}/subscriptions/{subscription}&quot;`. `{subscription}` must
+              # start with a letter, and contain only letters (`[A-Za-z]`), numbers
+              # (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),
+              # plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters
+              # in length, and it must not start with `&quot;goog&quot;`.
+          &quot;topic&quot;: &quot;A String&quot;, # Required. The name of the topic from which this subscription is receiving messages.
+              # Format is `projects/{project}/topics/{topic}`.
+              # The value of this field will be `_deleted-topic_` if the topic has been
+              # deleted.
+          &quot;pushConfig&quot;: { # Configuration for a push delivery endpoint. # If push delivery is used with this subscription, this field is
+              # used to configure it. An empty `pushConfig` signifies that the subscriber
+              # will pull and ack messages using API methods.
+            &quot;attributes&quot;: { # Endpoint configuration attributes that can be used to control different
+                # aspects of the message delivery.
+                #
+                # The only currently supported attribute is `x-goog-version`, which you can
+                # use to change the format of the pushed message. This attribute
+                # indicates the version of the data expected by the endpoint. This
+                # controls the shape of the pushed message (i.e., its fields and metadata).
+                #
+                # If not present during the `CreateSubscription` call, it will default to
+                # the version of the Pub/Sub API used to make such call. If not present in a
+                # `ModifyPushConfig` call, its value will not be changed. `GetSubscription`
+                # calls will always return a valid version, even if the subscription was
+                # created without this attribute.
+                #
+                # The only supported values for the `x-goog-version` attribute are:
+                #
+                # * `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.
+                # * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.
+                #
+                # For example:
+                # &lt;pre&gt;&lt;code&gt;attributes { &quot;x-goog-version&quot;: &quot;v1&quot; } &lt;/code&gt;&lt;/pre&gt;
+              &quot;a_key&quot;: &quot;A String&quot;,
+            },
+            &quot;pushEndpoint&quot;: &quot;A String&quot;, # A URL locating the endpoint to which messages should be pushed.
+                # For example, a Webhook endpoint might use `https://example.com/push`.
+            &quot;oidcToken&quot;: { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
+                # `Authorization` header in the HTTP request for every pushed message.
+                # [OpenID Connect
+                # token](https://developers.google.com/identity/protocols/OpenIDConnect).
+              &quot;audience&quot;: &quot;A String&quot;, # Audience to be used when generating OIDC token. The audience claim
+                  # identifies the recipients that the JWT is intended for. The audience
+                  # value is a single case-sensitive string. Having multiple values (array)
+                  # for the audience field is not supported. More info about the OIDC JWT
+                  # token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
+                  # Note: if not specified, the Push endpoint URL will be used.
+              &quot;serviceAccountEmail&quot;: &quot;A String&quot;, # [Service account
+                  # email](https://cloud.google.com/iam/docs/service-accounts)
+                  # to be used for generating the OIDC token. The caller (for
+                  # CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
+                  # have the iam.serviceAccounts.actAs permission for the service account.
+            },
+          },
+          &quot;filter&quot;: &quot;A String&quot;, # An expression written in the Cloud Pub/Sub filter language. If non-empty,
+              # then only `PubsubMessage`s whose `attributes` field matches the filter are
+              # delivered on this subscription. If empty, then no messages are filtered
+              # out.
+              # &lt;b&gt;EXPERIMENTAL:&lt;/b&gt; This feature is part of a closed alpha release. This
+              # API might be changed in backward-incompatible ways and is not recommended
+              # for production use. It is not subject to any SLA or deprecation policy.
+          &quot;ackDeadlineSeconds&quot;: 42, # The approximate amount of time (on a best-effort basis) Pub/Sub waits for
+              # the subscriber to acknowledge receipt before resending the message. In the
+              # interval after the message is delivered and before it is acknowledged, it
+              # is considered to be &lt;i&gt;outstanding&lt;/i&gt;. During that time period, the
+              # message will not be redelivered (on a best-effort basis).
               #
-              # The number of delivery attempts is defined as 1 + (the sum of number of
-              # NACKs and number of times the acknowledgement deadline has been exceeded
-              # for the message).
+              # For pull subscriptions, this value is used as the initial value for the ack
+              # deadline. To override this value for a given message, call
+              # `ModifyAckDeadline` with the corresponding `ack_id` if using
+              # non-streaming pull or send the `ack_id` in a
+              # `StreamingModifyAckDeadlineRequest` if using streaming pull.
+              # The minimum custom deadline you can specify is 10 seconds.
+              # The maximum custom deadline you can specify is 600 seconds (10 minutes).
+              # If this parameter is 0, a default value of 10 seconds is used.
               #
-              # A NACK is any call to ModifyAckDeadline with a 0 deadline. Note that
-              # client libraries may automatically extend ack_deadlines.
+              # For push delivery, this value is also used to set the request timeout for
+              # the call to the push endpoint.
               #
-              # This field will be honored on a best effort basis.
-              #
-              # If this parameter is 0, a default value of 5 is used.
+              # If the subscriber never acknowledges the message, the Pub/Sub
+              # system will eventually redeliver the message.
+          &quot;messageRetentionDuration&quot;: &quot;A String&quot;, # How long to retain unacknowledged messages in the subscription&#x27;s backlog,
+              # from the moment a message is published.
+              # If `retain_acked_messages` is true, then this also configures the retention
+              # of acknowledged messages, and thus configures how far back in time a `Seek`
+              # can be done. Defaults to 7 days. Cannot be more than 7 days or less than 10
+              # minutes.
         },
-        "expirationPolicy": { # A policy that specifies the conditions for resource expiration (i.e., # A policy that specifies the conditions for this subscription's expiration.
-            # A subscription is considered active as long as any connected subscriber is
-            # successfully consuming messages from the subscription or is issuing
-            # operations on the subscription. If `expiration_policy` is not set, a
-            # *default policy* with `ttl` of 31 days will be used. The minimum allowed
-            # value for `expiration_policy.ttl` is 1 day.
-            # automatic resource deletion).
-          "ttl": "A String", # Specifies the "time-to-live" duration for an associated resource. The
-              # resource expires if it is not active for a period of `ttl`. The definition
-              # of "activity" depends on the type of the associated resource. The minimum
-              # and maximum allowed values for `ttl` depend on the type of the associated
-              # resource, as well. If `ttl` is not set, the associated resource never
-              # expires.
-        },
-      },
     ],
   }</pre>
 </div>
@@ -1087,7 +1122,7 @@
   previous_response: The response from the request for the previous page. (required)
 
 Returns:
-  A request object that you can call 'execute()' on to request the next
+  A request object that you can call &#x27;execute()&#x27; on to request the next
   page. Returns None if there are no more items in the collection.
     </pre>
 </div>
@@ -1107,7 +1142,10 @@
     The object takes the form of:
 
 { # Request for the ModifyAckDeadline method.
-    "ackDeadlineSeconds": 42, # Required. The new ack deadline with respect to the time this request was sent to
+    &quot;ackIds&quot;: [ # Required. List of acknowledgment IDs.
+      &quot;A String&quot;,
+    ],
+    &quot;ackDeadlineSeconds&quot;: 42, # Required. The new ack deadline with respect to the time this request was sent to
         # the Pub/Sub system. For example, if the value is 10, the new
         # ack deadline will expire 10 seconds after the `ModifyAckDeadline` call
         # was made. Specifying zero might immediately make the message available for
@@ -1115,9 +1153,6 @@
         # increase in the rate of message redeliveries (that is, duplicates).
         # The minimum deadline you can specify is 0 seconds.
         # The maximum deadline you can specify is 600 seconds (10 minutes).
-    "ackIds": [ # Required. List of acknowledgment IDs.
-      "A String",
-    ],
   }
 
   x__xgafv: string, V1 error format.
@@ -1156,29 +1191,13 @@
     The object takes the form of:
 
 { # Request for the ModifyPushConfig method.
-    "pushConfig": { # Configuration for a push delivery endpoint. # Required. The push configuration for future deliveries.
+    &quot;pushConfig&quot;: { # Configuration for a push delivery endpoint. # Required. The push configuration for future deliveries.
         # 
         # An empty `pushConfig` indicates that the Pub/Sub system should
         # stop pushing messages from the given subscription and allow
         # messages to be pulled and acknowledged - effectively pausing
         # the subscription if `Pull` or `StreamingPull` is not called.
-      "oidcToken": { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
-          # `Authorization` header in the HTTP request for every pushed message.
-          # [OpenID Connect
-          # token](https://developers.google.com/identity/protocols/OpenIDConnect).
-        "audience": "A String", # Audience to be used when generating OIDC token. The audience claim
-            # identifies the recipients that the JWT is intended for. The audience
-            # value is a single case-sensitive string. Having multiple values (array)
-            # for the audience field is not supported. More info about the OIDC JWT
-            # token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
-            # Note: if not specified, the Push endpoint URL will be used.
-        "serviceAccountEmail": "A String", # [Service account
-            # email](https://cloud.google.com/iam/docs/service-accounts)
-            # to be used for generating the OIDC token. The caller (for
-            # CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
-            # have the iam.serviceAccounts.actAs permission for the service account.
-      },
-      "attributes": { # Endpoint configuration attributes that can be used to control different
+      &quot;attributes&quot;: { # Endpoint configuration attributes that can be used to control different
           # aspects of the message delivery.
           #
           # The only currently supported attribute is `x-goog-version`, which you can
@@ -1198,11 +1217,27 @@
           # * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.
           #
           # For example:
-          # &lt;pre&gt;&lt;code&gt;attributes { "x-goog-version": "v1" } &lt;/code&gt;&lt;/pre&gt;
-        "a_key": "A String",
+          # &lt;pre&gt;&lt;code&gt;attributes { &quot;x-goog-version&quot;: &quot;v1&quot; } &lt;/code&gt;&lt;/pre&gt;
+        &quot;a_key&quot;: &quot;A String&quot;,
       },
-      "pushEndpoint": "A String", # A URL locating the endpoint to which messages should be pushed.
-          # For example, a Webhook endpoint might use "https://example.com/push".
+      &quot;pushEndpoint&quot;: &quot;A String&quot;, # A URL locating the endpoint to which messages should be pushed.
+          # For example, a Webhook endpoint might use `https://example.com/push`.
+      &quot;oidcToken&quot;: { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
+          # `Authorization` header in the HTTP request for every pushed message.
+          # [OpenID Connect
+          # token](https://developers.google.com/identity/protocols/OpenIDConnect).
+        &quot;audience&quot;: &quot;A String&quot;, # Audience to be used when generating OIDC token. The audience claim
+            # identifies the recipients that the JWT is intended for. The audience
+            # value is a single case-sensitive string. Having multiple values (array)
+            # for the audience field is not supported. More info about the OIDC JWT
+            # token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
+            # Note: if not specified, the Push endpoint URL will be used.
+        &quot;serviceAccountEmail&quot;: &quot;A String&quot;, # [Service account
+            # email](https://cloud.google.com/iam/docs/service-accounts)
+            # to be used for generating the OIDC token. The caller (for
+            # CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
+            # have the iam.serviceAccounts.actAs permission for the service account.
+      },
     },
   }
 
@@ -1233,68 +1268,252 @@
 
 Args:
   name: string, Required. The name of the subscription. It must have the format
-`"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must
+`&quot;projects/{project}/subscriptions/{subscription}&quot;`. `{subscription}` must
 start with a letter, and contain only letters (`[A-Za-z]`), numbers
 (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),
 plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters
-in length, and it must not start with `"goog"`. (required)
+in length, and it must not start with `&quot;goog&quot;`. (required)
   body: object, The request body.
     The object takes the form of:
 
 { # Request for the UpdateSubscription method.
-    "updateMask": "A String", # Required. Indicates which fields in the provided subscription to update.
+    &quot;updateMask&quot;: &quot;A String&quot;, # Required. Indicates which fields in the provided subscription to update.
         # Must be specified and non-empty.
-    "subscription": { # A subscription resource. # Required. The updated subscription object.
-      "name": "A String", # Required. The name of the subscription. It must have the format
-          # `"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must
+    &quot;subscription&quot;: { # A subscription resource. # Required. The updated subscription object.
+        &quot;retainAckedMessages&quot;: True or False, # Indicates whether to retain acknowledged messages. If true, then
+            # messages are not expunged from the subscription&#x27;s backlog, even if they are
+            # acknowledged, until they fall out of the `message_retention_duration`
+            # window. This must be true if you would like to
+            # &lt;a
+            # href=&quot;https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time&quot;&gt;
+            # Seek to a timestamp&lt;/a&gt;.
+        &quot;labels&quot;: { # See &lt;a href=&quot;https://cloud.google.com/pubsub/docs/labels&quot;&gt; Creating and
+            # managing labels&lt;/a&gt;.
+          &quot;a_key&quot;: &quot;A String&quot;,
+        },
+        &quot;expirationPolicy&quot;: { # A policy that specifies the conditions for resource expiration (i.e., # A policy that specifies the conditions for this subscription&#x27;s expiration.
+            # A subscription is considered active as long as any connected subscriber is
+            # successfully consuming messages from the subscription or is issuing
+            # operations on the subscription. If `expiration_policy` is not set, a
+            # *default policy* with `ttl` of 31 days will be used. The minimum allowed
+            # value for `expiration_policy.ttl` is 1 day.
+            # automatic resource deletion).
+          &quot;ttl&quot;: &quot;A String&quot;, # Specifies the &quot;time-to-live&quot; duration for an associated resource. The
+              # resource expires if it is not active for a period of `ttl`. The definition
+              # of &quot;activity&quot; depends on the type of the associated resource. The minimum
+              # and maximum allowed values for `ttl` depend on the type of the associated
+              # resource, as well. If `ttl` is not set, the associated resource never
+              # expires.
+        },
+        &quot;deadLetterPolicy&quot;: { # Dead lettering is done on a best effort basis. The same message might be # A policy that specifies the conditions for dead lettering messages in
+            # this subscription. If dead_letter_policy is not set, dead lettering
+            # is disabled.
+            #
+            # The Cloud Pub/Sub service account associated with this subscriptions&#x27;s
+            # parent project (i.e.,
+            # service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have
+            # permission to Acknowledge() messages on this subscription.
+            # dead lettered multiple times.
+            #
+            # If validation on any of the fields fails at subscription creation/updation,
+            # the create/update subscription request will fail.
+          &quot;deadLetterTopic&quot;: &quot;A String&quot;, # The name of the topic to which dead letter messages should be published.
+              # Format is `projects/{project}/topics/{topic}`.The Cloud Pub/Sub service
+              # account associated with the enclosing subscription&#x27;s parent project (i.e.,
+              # service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have
+              # permission to Publish() to this topic.
+              #
+              # The operation will fail if the topic does not exist.
+              # Users should ensure that there is a subscription attached to this topic
+              # since messages published to a topic with no subscriptions are lost.
+          &quot;maxDeliveryAttempts&quot;: 42, # The maximum number of delivery attempts for any message. The value must be
+              # between 5 and 100.
+              #
+              # The number of delivery attempts is defined as 1 + (the sum of number of
+              # NACKs and number of times the acknowledgement deadline has been exceeded
+              # for the message).
+              #
+              # A NACK is any call to ModifyAckDeadline with a 0 deadline. Note that
+              # client libraries may automatically extend ack_deadlines.
+              #
+              # This field will be honored on a best effort basis.
+              #
+              # If this parameter is 0, a default value of 5 is used.
+        },
+        &quot;name&quot;: &quot;A String&quot;, # Required. The name of the subscription. It must have the format
+            # `&quot;projects/{project}/subscriptions/{subscription}&quot;`. `{subscription}` must
+            # start with a letter, and contain only letters (`[A-Za-z]`), numbers
+            # (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),
+            # plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters
+            # in length, and it must not start with `&quot;goog&quot;`.
+        &quot;topic&quot;: &quot;A String&quot;, # Required. The name of the topic from which this subscription is receiving messages.
+            # Format is `projects/{project}/topics/{topic}`.
+            # The value of this field will be `_deleted-topic_` if the topic has been
+            # deleted.
+        &quot;pushConfig&quot;: { # Configuration for a push delivery endpoint. # If push delivery is used with this subscription, this field is
+            # used to configure it. An empty `pushConfig` signifies that the subscriber
+            # will pull and ack messages using API methods.
+          &quot;attributes&quot;: { # Endpoint configuration attributes that can be used to control different
+              # aspects of the message delivery.
+              #
+              # The only currently supported attribute is `x-goog-version`, which you can
+              # use to change the format of the pushed message. This attribute
+              # indicates the version of the data expected by the endpoint. This
+              # controls the shape of the pushed message (i.e., its fields and metadata).
+              #
+              # If not present during the `CreateSubscription` call, it will default to
+              # the version of the Pub/Sub API used to make such call. If not present in a
+              # `ModifyPushConfig` call, its value will not be changed. `GetSubscription`
+              # calls will always return a valid version, even if the subscription was
+              # created without this attribute.
+              #
+              # The only supported values for the `x-goog-version` attribute are:
+              #
+              # * `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.
+              # * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.
+              #
+              # For example:
+              # &lt;pre&gt;&lt;code&gt;attributes { &quot;x-goog-version&quot;: &quot;v1&quot; } &lt;/code&gt;&lt;/pre&gt;
+            &quot;a_key&quot;: &quot;A String&quot;,
+          },
+          &quot;pushEndpoint&quot;: &quot;A String&quot;, # A URL locating the endpoint to which messages should be pushed.
+              # For example, a Webhook endpoint might use `https://example.com/push`.
+          &quot;oidcToken&quot;: { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
+              # `Authorization` header in the HTTP request for every pushed message.
+              # [OpenID Connect
+              # token](https://developers.google.com/identity/protocols/OpenIDConnect).
+            &quot;audience&quot;: &quot;A String&quot;, # Audience to be used when generating OIDC token. The audience claim
+                # identifies the recipients that the JWT is intended for. The audience
+                # value is a single case-sensitive string. Having multiple values (array)
+                # for the audience field is not supported. More info about the OIDC JWT
+                # token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
+                # Note: if not specified, the Push endpoint URL will be used.
+            &quot;serviceAccountEmail&quot;: &quot;A String&quot;, # [Service account
+                # email](https://cloud.google.com/iam/docs/service-accounts)
+                # to be used for generating the OIDC token. The caller (for
+                # CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
+                # have the iam.serviceAccounts.actAs permission for the service account.
+          },
+        },
+        &quot;filter&quot;: &quot;A String&quot;, # An expression written in the Cloud Pub/Sub filter language. If non-empty,
+            # then only `PubsubMessage`s whose `attributes` field matches the filter are
+            # delivered on this subscription. If empty, then no messages are filtered
+            # out.
+            # &lt;b&gt;EXPERIMENTAL:&lt;/b&gt; This feature is part of a closed alpha release. This
+            # API might be changed in backward-incompatible ways and is not recommended
+            # for production use. It is not subject to any SLA or deprecation policy.
+        &quot;ackDeadlineSeconds&quot;: 42, # The approximate amount of time (on a best-effort basis) Pub/Sub waits for
+            # the subscriber to acknowledge receipt before resending the message. In the
+            # interval after the message is delivered and before it is acknowledged, it
+            # is considered to be &lt;i&gt;outstanding&lt;/i&gt;. During that time period, the
+            # message will not be redelivered (on a best-effort basis).
+            #
+            # For pull subscriptions, this value is used as the initial value for the ack
+            # deadline. To override this value for a given message, call
+            # `ModifyAckDeadline` with the corresponding `ack_id` if using
+            # non-streaming pull or send the `ack_id` in a
+            # `StreamingModifyAckDeadlineRequest` if using streaming pull.
+            # The minimum custom deadline you can specify is 10 seconds.
+            # The maximum custom deadline you can specify is 600 seconds (10 minutes).
+            # If this parameter is 0, a default value of 10 seconds is used.
+            #
+            # For push delivery, this value is also used to set the request timeout for
+            # the call to the push endpoint.
+            #
+            # If the subscriber never acknowledges the message, the Pub/Sub
+            # system will eventually redeliver the message.
+        &quot;messageRetentionDuration&quot;: &quot;A String&quot;, # How long to retain unacknowledged messages in the subscription&#x27;s backlog,
+            # from the moment a message is published.
+            # If `retain_acked_messages` is true, then this also configures the retention
+            # of acknowledged messages, and thus configures how far back in time a `Seek`
+            # can be done. Defaults to 7 days. Cannot be more than 7 days or less than 10
+            # minutes.
+      },
+  }
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # A subscription resource.
+      &quot;retainAckedMessages&quot;: True or False, # Indicates whether to retain acknowledged messages. If true, then
+          # messages are not expunged from the subscription&#x27;s backlog, even if they are
+          # acknowledged, until they fall out of the `message_retention_duration`
+          # window. This must be true if you would like to
+          # &lt;a
+          # href=&quot;https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time&quot;&gt;
+          # Seek to a timestamp&lt;/a&gt;.
+      &quot;labels&quot;: { # See &lt;a href=&quot;https://cloud.google.com/pubsub/docs/labels&quot;&gt; Creating and
+          # managing labels&lt;/a&gt;.
+        &quot;a_key&quot;: &quot;A String&quot;,
+      },
+      &quot;expirationPolicy&quot;: { # A policy that specifies the conditions for resource expiration (i.e., # A policy that specifies the conditions for this subscription&#x27;s expiration.
+          # A subscription is considered active as long as any connected subscriber is
+          # successfully consuming messages from the subscription or is issuing
+          # operations on the subscription. If `expiration_policy` is not set, a
+          # *default policy* with `ttl` of 31 days will be used. The minimum allowed
+          # value for `expiration_policy.ttl` is 1 day.
+          # automatic resource deletion).
+        &quot;ttl&quot;: &quot;A String&quot;, # Specifies the &quot;time-to-live&quot; duration for an associated resource. The
+            # resource expires if it is not active for a period of `ttl`. The definition
+            # of &quot;activity&quot; depends on the type of the associated resource. The minimum
+            # and maximum allowed values for `ttl` depend on the type of the associated
+            # resource, as well. If `ttl` is not set, the associated resource never
+            # expires.
+      },
+      &quot;deadLetterPolicy&quot;: { # Dead lettering is done on a best effort basis. The same message might be # A policy that specifies the conditions for dead lettering messages in
+          # this subscription. If dead_letter_policy is not set, dead lettering
+          # is disabled.
+          #
+          # The Cloud Pub/Sub service account associated with this subscriptions&#x27;s
+          # parent project (i.e.,
+          # service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have
+          # permission to Acknowledge() messages on this subscription.
+          # dead lettered multiple times.
+          #
+          # If validation on any of the fields fails at subscription creation/updation,
+          # the create/update subscription request will fail.
+        &quot;deadLetterTopic&quot;: &quot;A String&quot;, # The name of the topic to which dead letter messages should be published.
+            # Format is `projects/{project}/topics/{topic}`.The Cloud Pub/Sub service
+            # account associated with the enclosing subscription&#x27;s parent project (i.e.,
+            # service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have
+            # permission to Publish() to this topic.
+            #
+            # The operation will fail if the topic does not exist.
+            # Users should ensure that there is a subscription attached to this topic
+            # since messages published to a topic with no subscriptions are lost.
+        &quot;maxDeliveryAttempts&quot;: 42, # The maximum number of delivery attempts for any message. The value must be
+            # between 5 and 100.
+            #
+            # The number of delivery attempts is defined as 1 + (the sum of number of
+            # NACKs and number of times the acknowledgement deadline has been exceeded
+            # for the message).
+            #
+            # A NACK is any call to ModifyAckDeadline with a 0 deadline. Note that
+            # client libraries may automatically extend ack_deadlines.
+            #
+            # This field will be honored on a best effort basis.
+            #
+            # If this parameter is 0, a default value of 5 is used.
+      },
+      &quot;name&quot;: &quot;A String&quot;, # Required. The name of the subscription. It must have the format
+          # `&quot;projects/{project}/subscriptions/{subscription}&quot;`. `{subscription}` must
           # start with a letter, and contain only letters (`[A-Za-z]`), numbers
           # (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),
           # plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters
-          # in length, and it must not start with `"goog"`.
-      "ackDeadlineSeconds": 42, # The approximate amount of time (on a best-effort basis) Pub/Sub waits for
-          # the subscriber to acknowledge receipt before resending the message. In the
-          # interval after the message is delivered and before it is acknowledged, it
-          # is considered to be &lt;i&gt;outstanding&lt;/i&gt;. During that time period, the
-          # message will not be redelivered (on a best-effort basis).
-          #
-          # For pull subscriptions, this value is used as the initial value for the ack
-          # deadline. To override this value for a given message, call
-          # `ModifyAckDeadline` with the corresponding `ack_id` if using
-          # non-streaming pull or send the `ack_id` in a
-          # `StreamingModifyAckDeadlineRequest` if using streaming pull.
-          # The minimum custom deadline you can specify is 10 seconds.
-          # The maximum custom deadline you can specify is 600 seconds (10 minutes).
-          # If this parameter is 0, a default value of 10 seconds is used.
-          #
-          # For push delivery, this value is also used to set the request timeout for
-          # the call to the push endpoint.
-          #
-          # If the subscriber never acknowledges the message, the Pub/Sub
-          # system will eventually redeliver the message.
-      "labels": { # See &lt;a href="https://cloud.google.com/pubsub/docs/labels"&gt; Creating and
-          # managing labels&lt;/a&gt;.
-        "a_key": "A String",
-      },
-      "pushConfig": { # Configuration for a push delivery endpoint. # If push delivery is used with this subscription, this field is
+          # in length, and it must not start with `&quot;goog&quot;`.
+      &quot;topic&quot;: &quot;A String&quot;, # Required. The name of the topic from which this subscription is receiving messages.
+          # Format is `projects/{project}/topics/{topic}`.
+          # The value of this field will be `_deleted-topic_` if the topic has been
+          # deleted.
+      &quot;pushConfig&quot;: { # Configuration for a push delivery endpoint. # If push delivery is used with this subscription, this field is
           # used to configure it. An empty `pushConfig` signifies that the subscriber
           # will pull and ack messages using API methods.
-        "oidcToken": { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
-            # `Authorization` header in the HTTP request for every pushed message.
-            # [OpenID Connect
-            # token](https://developers.google.com/identity/protocols/OpenIDConnect).
-          "audience": "A String", # Audience to be used when generating OIDC token. The audience claim
-              # identifies the recipients that the JWT is intended for. The audience
-              # value is a single case-sensitive string. Having multiple values (array)
-              # for the audience field is not supported. More info about the OIDC JWT
-              # token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
-              # Note: if not specified, the Push endpoint URL will be used.
-          "serviceAccountEmail": "A String", # [Service account
-              # email](https://cloud.google.com/iam/docs/service-accounts)
-              # to be used for generating the OIDC token. The caller (for
-              # CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
-              # have the iam.serviceAccounts.actAs permission for the service account.
-        },
-        "attributes": { # Endpoint configuration attributes that can be used to control different
+        &quot;attributes&quot;: { # Endpoint configuration attributes that can be used to control different
             # aspects of the message delivery.
             #
             # The only currently supported attribute is `x-goog-version`, which you can
@@ -1314,238 +1533,62 @@
             # * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.
             #
             # For example:
-            # &lt;pre&gt;&lt;code&gt;attributes { "x-goog-version": "v1" } &lt;/code&gt;&lt;/pre&gt;
-          "a_key": "A String",
+            # &lt;pre&gt;&lt;code&gt;attributes { &quot;x-goog-version&quot;: &quot;v1&quot; } &lt;/code&gt;&lt;/pre&gt;
+          &quot;a_key&quot;: &quot;A String&quot;,
         },
-        "pushEndpoint": "A String", # A URL locating the endpoint to which messages should be pushed.
-            # For example, a Webhook endpoint might use "https://example.com/push".
+        &quot;pushEndpoint&quot;: &quot;A String&quot;, # A URL locating the endpoint to which messages should be pushed.
+            # For example, a Webhook endpoint might use `https://example.com/push`.
+        &quot;oidcToken&quot;: { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
+            # `Authorization` header in the HTTP request for every pushed message.
+            # [OpenID Connect
+            # token](https://developers.google.com/identity/protocols/OpenIDConnect).
+          &quot;audience&quot;: &quot;A String&quot;, # Audience to be used when generating OIDC token. The audience claim
+              # identifies the recipients that the JWT is intended for. The audience
+              # value is a single case-sensitive string. Having multiple values (array)
+              # for the audience field is not supported. More info about the OIDC JWT
+              # token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
+              # Note: if not specified, the Push endpoint URL will be used.
+          &quot;serviceAccountEmail&quot;: &quot;A String&quot;, # [Service account
+              # email](https://cloud.google.com/iam/docs/service-accounts)
+              # to be used for generating the OIDC token. The caller (for
+              # CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
+              # have the iam.serviceAccounts.actAs permission for the service account.
+        },
       },
-      "topic": "A String", # Required. The name of the topic from which this subscription is receiving messages.
-          # Format is `projects/{project}/topics/{topic}`.
-          # The value of this field will be `_deleted-topic_` if the topic has been
-          # deleted.
-      "messageRetentionDuration": "A String", # How long to retain unacknowledged messages in the subscription's backlog,
+      &quot;filter&quot;: &quot;A String&quot;, # An expression written in the Cloud Pub/Sub filter language. If non-empty,
+          # then only `PubsubMessage`s whose `attributes` field matches the filter are
+          # delivered on this subscription. If empty, then no messages are filtered
+          # out.
+          # &lt;b&gt;EXPERIMENTAL:&lt;/b&gt; This feature is part of a closed alpha release. This
+          # API might be changed in backward-incompatible ways and is not recommended
+          # for production use. It is not subject to any SLA or deprecation policy.
+      &quot;ackDeadlineSeconds&quot;: 42, # The approximate amount of time (on a best-effort basis) Pub/Sub waits for
+          # the subscriber to acknowledge receipt before resending the message. In the
+          # interval after the message is delivered and before it is acknowledged, it
+          # is considered to be &lt;i&gt;outstanding&lt;/i&gt;. During that time period, the
+          # message will not be redelivered (on a best-effort basis).
+          #
+          # For pull subscriptions, this value is used as the initial value for the ack
+          # deadline. To override this value for a given message, call
+          # `ModifyAckDeadline` with the corresponding `ack_id` if using
+          # non-streaming pull or send the `ack_id` in a
+          # `StreamingModifyAckDeadlineRequest` if using streaming pull.
+          # The minimum custom deadline you can specify is 10 seconds.
+          # The maximum custom deadline you can specify is 600 seconds (10 minutes).
+          # If this parameter is 0, a default value of 10 seconds is used.
+          #
+          # For push delivery, this value is also used to set the request timeout for
+          # the call to the push endpoint.
+          #
+          # If the subscriber never acknowledges the message, the Pub/Sub
+          # system will eventually redeliver the message.
+      &quot;messageRetentionDuration&quot;: &quot;A String&quot;, # How long to retain unacknowledged messages in the subscription&#x27;s backlog,
           # from the moment a message is published.
           # If `retain_acked_messages` is true, then this also configures the retention
           # of acknowledged messages, and thus configures how far back in time a `Seek`
           # can be done. Defaults to 7 days. Cannot be more than 7 days or less than 10
           # minutes.
-      "retainAckedMessages": True or False, # Indicates whether to retain acknowledged messages. If true, then
-          # messages are not expunged from the subscription's backlog, even if they are
-          # acknowledged, until they fall out of the `message_retention_duration`
-          # window. This must be true if you would like to
-          # &lt;a
-          # href="https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time"&gt;
-          # Seek to a timestamp&lt;/a&gt;.
-      "deadLetterPolicy": { # Dead lettering is done on a best effort basis. The same message might be # A policy that specifies the conditions for dead lettering messages in
-          # this subscription. If dead_letter_policy is not set, dead lettering
-          # is disabled.
-          #
-          # The Cloud Pub/Sub service account associated with this subscriptions's
-          # parent project (i.e.,
-          # service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have
-          # permission to Acknowledge() messages on this subscription.
-          # &lt;b&gt;EXPERIMENTAL:&lt;/b&gt; This feature is part of a closed alpha release. This
-          # API might be changed in backward-incompatible ways and is not recommended
-          # for production use. It is not subject to any SLA or deprecation policy.
-          # dead lettered multiple times.
-          #
-          # If validation on any of the fields fails at subscription creation/updation,
-          # the create/update subscription request will fail.
-        "deadLetterTopic": "A String", # The name of the topic to which dead letter messages should be published.
-            # Format is `projects/{project}/topics/{topic}`.The Cloud Pub/Sub service
-            # account associated with the enclosing subscription's parent project (i.e.,
-            # service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have
-            # permission to Publish() to this topic.
-            #
-            # The operation will fail if the topic does not exist.
-            # Users should ensure that there is a subscription attached to this topic
-            # since messages published to a topic with no subscriptions are lost.
-        "maxDeliveryAttempts": 42, # The maximum number of delivery attempts for any message. The value must be
-            # between 5 and 100.
-            #
-            # The number of delivery attempts is defined as 1 + (the sum of number of
-            # NACKs and number of times the acknowledgement deadline has been exceeded
-            # for the message).
-            #
-            # A NACK is any call to ModifyAckDeadline with a 0 deadline. Note that
-            # client libraries may automatically extend ack_deadlines.
-            #
-            # This field will be honored on a best effort basis.
-            #
-            # If this parameter is 0, a default value of 5 is used.
-      },
-      "expirationPolicy": { # A policy that specifies the conditions for resource expiration (i.e., # A policy that specifies the conditions for this subscription's expiration.
-          # A subscription is considered active as long as any connected subscriber is
-          # successfully consuming messages from the subscription or is issuing
-          # operations on the subscription. If `expiration_policy` is not set, a
-          # *default policy* with `ttl` of 31 days will be used. The minimum allowed
-          # value for `expiration_policy.ttl` is 1 day.
-          # automatic resource deletion).
-        "ttl": "A String", # Specifies the "time-to-live" duration for an associated resource. The
-            # resource expires if it is not active for a period of `ttl`. The definition
-            # of "activity" depends on the type of the associated resource. The minimum
-            # and maximum allowed values for `ttl` depend on the type of the associated
-            # resource, as well. If `ttl` is not set, the associated resource never
-            # expires.
-      },
-    },
-  }
-
-  x__xgafv: string, V1 error format.
-    Allowed values
-      1 - v1 error format
-      2 - v2 error format
-
-Returns:
-  An object of the form:
-
-    { # A subscription resource.
-    "name": "A String", # Required. The name of the subscription. It must have the format
-        # `"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must
-        # start with a letter, and contain only letters (`[A-Za-z]`), numbers
-        # (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),
-        # plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters
-        # in length, and it must not start with `"goog"`.
-    "ackDeadlineSeconds": 42, # The approximate amount of time (on a best-effort basis) Pub/Sub waits for
-        # the subscriber to acknowledge receipt before resending the message. In the
-        # interval after the message is delivered and before it is acknowledged, it
-        # is considered to be &lt;i&gt;outstanding&lt;/i&gt;. During that time period, the
-        # message will not be redelivered (on a best-effort basis).
-        #
-        # For pull subscriptions, this value is used as the initial value for the ack
-        # deadline. To override this value for a given message, call
-        # `ModifyAckDeadline` with the corresponding `ack_id` if using
-        # non-streaming pull or send the `ack_id` in a
-        # `StreamingModifyAckDeadlineRequest` if using streaming pull.
-        # The minimum custom deadline you can specify is 10 seconds.
-        # The maximum custom deadline you can specify is 600 seconds (10 minutes).
-        # If this parameter is 0, a default value of 10 seconds is used.
-        #
-        # For push delivery, this value is also used to set the request timeout for
-        # the call to the push endpoint.
-        #
-        # If the subscriber never acknowledges the message, the Pub/Sub
-        # system will eventually redeliver the message.
-    "labels": { # See &lt;a href="https://cloud.google.com/pubsub/docs/labels"&gt; Creating and
-        # managing labels&lt;/a&gt;.
-      "a_key": "A String",
-    },
-    "pushConfig": { # Configuration for a push delivery endpoint. # If push delivery is used with this subscription, this field is
-        # used to configure it. An empty `pushConfig` signifies that the subscriber
-        # will pull and ack messages using API methods.
-      "oidcToken": { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
-          # `Authorization` header in the HTTP request for every pushed message.
-          # [OpenID Connect
-          # token](https://developers.google.com/identity/protocols/OpenIDConnect).
-        "audience": "A String", # Audience to be used when generating OIDC token. The audience claim
-            # identifies the recipients that the JWT is intended for. The audience
-            # value is a single case-sensitive string. Having multiple values (array)
-            # for the audience field is not supported. More info about the OIDC JWT
-            # token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
-            # Note: if not specified, the Push endpoint URL will be used.
-        "serviceAccountEmail": "A String", # [Service account
-            # email](https://cloud.google.com/iam/docs/service-accounts)
-            # to be used for generating the OIDC token. The caller (for
-            # CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
-            # have the iam.serviceAccounts.actAs permission for the service account.
-      },
-      "attributes": { # Endpoint configuration attributes that can be used to control different
-          # aspects of the message delivery.
-          #
-          # The only currently supported attribute is `x-goog-version`, which you can
-          # use to change the format of the pushed message. This attribute
-          # indicates the version of the data expected by the endpoint. This
-          # controls the shape of the pushed message (i.e., its fields and metadata).
-          #
-          # If not present during the `CreateSubscription` call, it will default to
-          # the version of the Pub/Sub API used to make such call. If not present in a
-          # `ModifyPushConfig` call, its value will not be changed. `GetSubscription`
-          # calls will always return a valid version, even if the subscription was
-          # created without this attribute.
-          #
-          # The only supported values for the `x-goog-version` attribute are:
-          #
-          # * `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.
-          # * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.
-          #
-          # For example:
-          # &lt;pre&gt;&lt;code&gt;attributes { "x-goog-version": "v1" } &lt;/code&gt;&lt;/pre&gt;
-        "a_key": "A String",
-      },
-      "pushEndpoint": "A String", # A URL locating the endpoint to which messages should be pushed.
-          # For example, a Webhook endpoint might use "https://example.com/push".
-    },
-    "topic": "A String", # Required. The name of the topic from which this subscription is receiving messages.
-        # Format is `projects/{project}/topics/{topic}`.
-        # The value of this field will be `_deleted-topic_` if the topic has been
-        # deleted.
-    "messageRetentionDuration": "A String", # How long to retain unacknowledged messages in the subscription's backlog,
-        # from the moment a message is published.
-        # If `retain_acked_messages` is true, then this also configures the retention
-        # of acknowledged messages, and thus configures how far back in time a `Seek`
-        # can be done. Defaults to 7 days. Cannot be more than 7 days or less than 10
-        # minutes.
-    "retainAckedMessages": True or False, # Indicates whether to retain acknowledged messages. If true, then
-        # messages are not expunged from the subscription's backlog, even if they are
-        # acknowledged, until they fall out of the `message_retention_duration`
-        # window. This must be true if you would like to
-        # &lt;a
-        # href="https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time"&gt;
-        # Seek to a timestamp&lt;/a&gt;.
-    "deadLetterPolicy": { # Dead lettering is done on a best effort basis. The same message might be # A policy that specifies the conditions for dead lettering messages in
-        # this subscription. If dead_letter_policy is not set, dead lettering
-        # is disabled.
-        #
-        # The Cloud Pub/Sub service account associated with this subscriptions's
-        # parent project (i.e.,
-        # service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have
-        # permission to Acknowledge() messages on this subscription.
-        # &lt;b&gt;EXPERIMENTAL:&lt;/b&gt; This feature is part of a closed alpha release. This
-        # API might be changed in backward-incompatible ways and is not recommended
-        # for production use. It is not subject to any SLA or deprecation policy.
-        # dead lettered multiple times.
-        #
-        # If validation on any of the fields fails at subscription creation/updation,
-        # the create/update subscription request will fail.
-      "deadLetterTopic": "A String", # The name of the topic to which dead letter messages should be published.
-          # Format is `projects/{project}/topics/{topic}`.The Cloud Pub/Sub service
-          # account associated with the enclosing subscription's parent project (i.e.,
-          # service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have
-          # permission to Publish() to this topic.
-          #
-          # The operation will fail if the topic does not exist.
-          # Users should ensure that there is a subscription attached to this topic
-          # since messages published to a topic with no subscriptions are lost.
-      "maxDeliveryAttempts": 42, # The maximum number of delivery attempts for any message. The value must be
-          # between 5 and 100.
-          #
-          # The number of delivery attempts is defined as 1 + (the sum of number of
-          # NACKs and number of times the acknowledgement deadline has been exceeded
-          # for the message).
-          #
-          # A NACK is any call to ModifyAckDeadline with a 0 deadline. Note that
-          # client libraries may automatically extend ack_deadlines.
-          #
-          # This field will be honored on a best effort basis.
-          #
-          # If this parameter is 0, a default value of 5 is used.
-    },
-    "expirationPolicy": { # A policy that specifies the conditions for resource expiration (i.e., # A policy that specifies the conditions for this subscription's expiration.
-        # A subscription is considered active as long as any connected subscriber is
-        # successfully consuming messages from the subscription or is issuing
-        # operations on the subscription. If `expiration_policy` is not set, a
-        # *default policy* with `ttl` of 31 days will be used. The minimum allowed
-        # value for `expiration_policy.ttl` is 1 day.
-        # automatic resource deletion).
-      "ttl": "A String", # Specifies the "time-to-live" duration for an associated resource. The
-          # resource expires if it is not active for a period of `ttl`. The definition
-          # of "activity" depends on the type of the associated resource. The minimum
-          # and maximum allowed values for `ttl` depend on the type of the associated
-          # resource, as well. If `ttl` is not set, the associated resource never
-          # expires.
-    },
-  }</pre>
+    }</pre>
 </div>
 
 <div class="method">
@@ -1561,14 +1604,14 @@
     The object takes the form of:
 
 { # Request for the `Pull` method.
-    "returnImmediately": True or False, # Optional. If this field set to true, the system will respond immediately even if
+    &quot;returnImmediately&quot;: True or False, # Optional. If this field set to true, the system will respond immediately even if
         # it there are no messages available to return in the `Pull` response.
         # Otherwise, the system may wait (for a bounded amount of time) until at
         # least one message is available, rather than returning no messages. Warning:
         # setting this field to `true` is discouraged because it adversely impacts
         # the performance of `Pull` operations. We recommend that users do not set
         # this field.
-    "maxMessages": 42, # Required. The maximum number of messages to return for this request. Must be a
+    &quot;maxMessages&quot;: 42, # Required. The maximum number of messages to return for this request. Must be a
         # positive integer. The Pub/Sub system may return fewer than the number
         # specified.
   }
@@ -1582,36 +1625,16 @@
   An object of the form:
 
     { # Response for the `Pull` method.
-    "receivedMessages": [ # Received Pub/Sub messages. The list will be empty if there are no more
+    &quot;receivedMessages&quot;: [ # Received Pub/Sub messages. The list will be empty if there are no more
         # messages available in the backlog. For JSON, the response can be entirely
         # empty. The Pub/Sub system may return fewer than the `maxMessages` requested
         # even if there are more messages available in the backlog.
       { # A message and its corresponding acknowledgment ID.
-        "ackId": "A String", # This ID can be used to acknowledge the received message.
-        "message": { # A message that is published by publishers and consumed by subscribers. The # The message.
-            # message must contain either a non-empty data field or at least one attribute.
-            # Note that client libraries represent this object differently
-            # depending on the language. See the corresponding
-            # &lt;a href="https://cloud.google.com/pubsub/docs/reference/libraries"&gt;client
-            # library documentation&lt;/a&gt; for more information. See
-            # &lt;a href="https://cloud.google.com/pubsub/quotas"&gt;Quotas and limits&lt;/a&gt;
-            # for more information about message limits.
-          "attributes": { # Attributes for this message. If this field is empty, the message must
-              # contain non-empty data.
-            "a_key": "A String",
-          },
-          "data": "A String", # The message data field. If this field is empty, the message must contain
-              # at least one attribute.
-          "publishTime": "A String", # The time at which the message was published, populated by the server when
-              # it receives the `Publish` call. It must not be populated by the
-              # publisher in a `Publish` call.
-          "messageId": "A String", # ID of this message, assigned by the server when the message is published.
-              # Guaranteed to be unique within the topic. This value may be read by a
-              # subscriber that receives a `PubsubMessage` via a `Pull` call or a push
-              # delivery. It must not be populated by the publisher in a `Publish` call.
-        },
-        "deliveryAttempt": 42, # Delivery attempt counter is 1 + (the sum of number of NACKs and number of
-            # ack_deadline exceeds) for this message.
+        &quot;deliveryAttempt&quot;: 42, # The approximate number of times that Cloud Pub/Sub has attempted to deliver
+            # the associated message to a subscriber.
+            #
+            # More precisely, this is 1 + (number of NACKs) +
+            # (number of ack_deadline exceeds) for this message.
             #
             # A NACK is any call to ModifyAckDeadline with a 0 deadline. An ack_deadline
             # exceeds event is whenever a message is not acknowledged within
@@ -1619,13 +1642,33 @@
             # Subscription.ackDeadlineSeconds, but may get extended automatically by
             # the client library.
             #
-            # The first delivery of a given message will have this value as 1. The value
-            # is calculated at best effort and is approximate.
+            # Upon the first delivery of a given message, `delivery_attempt` will have a
+            # value of 1. The value is calculated at best effort and is approximate.
             #
             # If a DeadLetterPolicy is not set on the subscription, this will be 0.
-            # &lt;b&gt;EXPERIMENTAL:&lt;/b&gt; This feature is part of a closed alpha release. This
-            # API might be changed in backward-incompatible ways and is not recommended
-            # for production use. It is not subject to any SLA or deprecation policy.
+        &quot;message&quot;: { # A message that is published by publishers and consumed by subscribers. The # The message.
+            # message must contain either a non-empty data field or at least one attribute.
+            # Note that client libraries represent this object differently
+            # depending on the language. See the corresponding
+            # &lt;a href=&quot;https://cloud.google.com/pubsub/docs/reference/libraries&quot;&gt;client
+            # library documentation&lt;/a&gt; for more information. See
+            # &lt;a href=&quot;https://cloud.google.com/pubsub/quotas&quot;&gt;Quotas and limits&lt;/a&gt;
+            # for more information about message limits.
+          &quot;messageId&quot;: &quot;A String&quot;, # ID of this message, assigned by the server when the message is published.
+              # Guaranteed to be unique within the topic. This value may be read by a
+              # subscriber that receives a `PubsubMessage` via a `Pull` call or a push
+              # delivery. It must not be populated by the publisher in a `Publish` call.
+          &quot;attributes&quot;: { # Attributes for this message. If this field is empty, the message must
+              # contain non-empty data.
+            &quot;a_key&quot;: &quot;A String&quot;,
+          },
+          &quot;publishTime&quot;: &quot;A String&quot;, # The time at which the message was published, populated by the server when
+              # it receives the `Publish` call. It must not be populated by the
+              # publisher in a `Publish` call.
+          &quot;data&quot;: &quot;A String&quot;, # The message data field. If this field is empty, the message must contain
+              # at least one attribute.
+        },
+        &quot;ackId&quot;: &quot;A String&quot;, # This ID can be used to acknowledge the received message.
       },
     ],
   }</pre>
@@ -1635,7 +1678,7 @@
     <code class="details" id="seek">seek(subscription, body=None, x__xgafv=None)</code>
   <pre>Seeks an existing subscription to a point in time or to a given snapshot,
 whichever is provided in the request. Snapshots are used in
-&lt;a href="https://cloud.google.com/pubsub/docs/replay-overview"&gt;Seek&lt;/a&gt;
+&lt;a href=&quot;https://cloud.google.com/pubsub/docs/replay-overview&quot;&gt;Seek&lt;/a&gt;
 operations, which allow
 you to manage message acknowledgments in bulk. That is, you can set the
 acknowledgment state of messages in an existing subscription to the state
@@ -1648,10 +1691,7 @@
     The object takes the form of:
 
 { # Request for the `Seek` method.
-    "snapshot": "A String", # The snapshot to seek to. The snapshot's topic must be the same as that of
-        # the provided subscription.
-        # Format is `projects/{project}/snapshots/{snap}`.
-    "time": "A String", # The time to seek to.
+    &quot;time&quot;: &quot;A String&quot;, # The time to seek to.
         # Messages retained in the subscription that were published before this
         # time are marked as acknowledged, and messages retained in the
         # subscription that were published after this time are marked as
@@ -1659,9 +1699,12 @@
         # retained in the subscription (configured by the combination of
         # `message_retention_duration` and `retain_acked_messages`). For example,
         # if `time` corresponds to a point before the message retention
-        # window (or to a point before the system's notion of the subscription
+        # window (or to a point before the system&#x27;s notion of the subscription
         # creation time), only retained messages will be marked as unacknowledged,
         # and already-expunged messages will not be restored.
+    &quot;snapshot&quot;: &quot;A String&quot;, # The snapshot to seek to. The snapshot&#x27;s topic must be the same as that of
+        # the provided subscription.
+        # Format is `projects/{project}/snapshots/{snap}`.
   }
 
   x__xgafv: string, V1 error format.
@@ -1681,7 +1724,7 @@
   <pre>Sets the access control policy on the specified resource. Replaces any
 existing policy.
 
-Can return Public Errors: NOT_FOUND, INVALID_ARGUMENT and PERMISSION_DENIED
+Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.
 
 Args:
   resource: string, REQUIRED: The resource for which the policy is being specified.
@@ -1690,7 +1733,7 @@
     The object takes the form of:
 
 { # Request message for `SetIamPolicy` method.
-    "policy": { # An Identity and Access Management (IAM) policy, which specifies access # REQUIRED: The complete policy to be applied to the `resource`. The size of
+    &quot;policy&quot;: { # An Identity and Access Management (IAM) policy, which specifies access # REQUIRED: The complete policy to be applied to the `resource`. The size of
         # the policy is limited to a few 10s of KB. An empty policy is a
         # valid policy but certain Cloud Platform services (such as Projects)
         # might reject them.
@@ -1703,36 +1746,40 @@
         # permissions; each `role` can be an IAM predefined role or a user-created
         # custom role.
         #
-        # Optionally, a `binding` can specify a `condition`, which is a logical
-        # expression that allows access to a resource only if the expression evaluates
-        # to `true`. A condition can add constraints based on attributes of the
-        # request, the resource, or both.
+        # For some types of Google Cloud resources, a `binding` can also specify a
+        # `condition`, which is a logical expression that allows access to a resource
+        # only if the expression evaluates to `true`. A condition can add constraints
+        # based on attributes of the request, the resource, or both. To learn which
+        # resources support conditions in their IAM policies, see the
+        # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
         #
         # **JSON example:**
         #
         #     {
-        #       "bindings": [
+        #       &quot;bindings&quot;: [
         #         {
-        #           "role": "roles/resourcemanager.organizationAdmin",
-        #           "members": [
-        #             "user:mike@example.com",
-        #             "group:admins@example.com",
-        #             "domain:google.com",
-        #             "serviceAccount:my-project-id@appspot.gserviceaccount.com"
+        #           &quot;role&quot;: &quot;roles/resourcemanager.organizationAdmin&quot;,
+        #           &quot;members&quot;: [
+        #             &quot;user:mike@example.com&quot;,
+        #             &quot;group:admins@example.com&quot;,
+        #             &quot;domain:google.com&quot;,
+        #             &quot;serviceAccount:my-project-id@appspot.gserviceaccount.com&quot;
         #           ]
         #         },
         #         {
-        #           "role": "roles/resourcemanager.organizationViewer",
-        #           "members": ["user:eve@example.com"],
-        #           "condition": {
-        #             "title": "expirable access",
-        #             "description": "Does not grant access after Sep 2020",
-        #             "expression": "request.time &lt; timestamp('2020-10-01T00:00:00.000Z')",
+        #           &quot;role&quot;: &quot;roles/resourcemanager.organizationViewer&quot;,
+        #           &quot;members&quot;: [
+        #             &quot;user:eve@example.com&quot;
+        #           ],
+        #           &quot;condition&quot;: {
+        #             &quot;title&quot;: &quot;expirable access&quot;,
+        #             &quot;description&quot;: &quot;Does not grant access after Sep 2020&quot;,
+        #             &quot;expression&quot;: &quot;request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)&quot;,
         #           }
         #         }
         #       ],
-        #       "etag": "BwWWja0YfJA=",
-        #       "version": 3
+        #       &quot;etag&quot;: &quot;BwWWja0YfJA=&quot;,
+        #       &quot;version&quot;: 3
         #     }
         #
         # **YAML example:**
@@ -1750,19 +1797,105 @@
         #       condition:
         #         title: expirable access
         #         description: Does not grant access after Sep 2020
-        #         expression: request.time &lt; timestamp('2020-10-01T00:00:00.000Z')
+        #         expression: request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)
         #     - etag: BwWWja0YfJA=
         #     - version: 3
         #
         # For a description of IAM and its features, see the
         # [IAM documentation](https://cloud.google.com/iam/docs/).
-      "bindings": [ # Associates a list of `members` to a `role`. Optionally, may specify a
+      &quot;etag&quot;: &quot;A String&quot;, # `etag` is used for optimistic concurrency control as a way to help
+          # prevent simultaneous updates of a policy from overwriting each other.
+          # It is strongly suggested that systems make use of the `etag` in the
+          # read-modify-write cycle to perform policy updates in order to avoid race
+          # conditions: An `etag` is returned in the response to `getIamPolicy`, and
+          # systems are expected to put that etag in the request to `setIamPolicy` to
+          # ensure that their change will be applied to the same version of the policy.
+          #
+          # **Important:** If you use IAM Conditions, you must include the `etag` field
+          # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
+          # you to overwrite a version `3` policy with a version `1` policy, and all of
+          # the conditions in the version `3` policy are lost.
+      &quot;version&quot;: 42, # Specifies the format of the policy.
+          #
+          # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
+          # are rejected.
+          #
+          # Any operation that affects conditional role bindings must specify version
+          # `3`. This requirement applies to the following operations:
+          #
+          # * Getting a policy that includes a conditional role binding
+          # * Adding a conditional role binding to a policy
+          # * Changing a conditional role binding in a policy
+          # * Removing any role binding, with or without a condition, from a policy
+          #   that includes conditions
+          #
+          # **Important:** If you use IAM Conditions, you must include the `etag` field
+          # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
+          # you to overwrite a version `3` policy with a version `1` policy, and all of
+          # the conditions in the version `3` policy are lost.
+          #
+          # If a policy does not include any conditions, operations on that policy may
+          # specify any valid version or leave the field unset.
+          #
+          # To learn which resources support conditions in their IAM policies, see the
+          # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
+      &quot;bindings&quot;: [ # Associates a list of `members` to a `role`. Optionally, may specify a
           # `condition` that determines how and when the `bindings` are applied. Each
           # of the `bindings` must contain at least one member.
         { # Associates `members` with a `role`.
-          "role": "A String", # Role that is assigned to `members`.
-              # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
-          "members": [ # Specifies the identities requesting access for a Cloud Platform resource.
+          &quot;condition&quot;: { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
+              #
+              # If the condition evaluates to `true`, then this binding applies to the
+              # current request.
+              #
+              # If the condition evaluates to `false`, then this binding does not apply to
+              # the current request. However, a different role binding might grant the same
+              # role to one or more of the members in this binding.
+              #
+              # To learn which resources support conditions in their IAM policies, see the
+              # [IAM
+              # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
+              # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
+              # are documented at https://github.com/google/cel-spec.
+              #
+              # Example (Comparison):
+              #
+              #     title: &quot;Summary size limit&quot;
+              #     description: &quot;Determines if a summary is less than 100 chars&quot;
+              #     expression: &quot;document.summary.size() &lt; 100&quot;
+              #
+              # Example (Equality):
+              #
+              #     title: &quot;Requestor is owner&quot;
+              #     description: &quot;Determines if requestor is the document owner&quot;
+              #     expression: &quot;document.owner == request.auth.claims.email&quot;
+              #
+              # Example (Logic):
+              #
+              #     title: &quot;Public documents&quot;
+              #     description: &quot;Determine whether the document should be publicly visible&quot;
+              #     expression: &quot;document.type != &#x27;private&#x27; &amp;&amp; document.type != &#x27;internal&#x27;&quot;
+              #
+              # Example (Data Manipulation):
+              #
+              #     title: &quot;Notification string&quot;
+              #     description: &quot;Create a notification string with a timestamp.&quot;
+              #     expression: &quot;&#x27;New message received at &#x27; + string(document.create_time)&quot;
+              #
+              # The exact variables and functions that may be referenced within an expression
+              # are determined by the service that evaluates it. See the service
+              # documentation for additional information.
+            &quot;location&quot;: &quot;A String&quot;, # Optional. String indicating the location of the expression for error
+                # reporting, e.g. a file name and a position in the file.
+            &quot;title&quot;: &quot;A String&quot;, # Optional. Title for the expression, i.e. a short string describing
+                # its purpose. This can be used e.g. in UIs which allow to enter the
+                # expression.
+            &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the expression. This is a longer text which
+                # describes the expression, e.g. when hovered over it in a UI.
+            &quot;expression&quot;: &quot;A String&quot;, # Textual representation of an expression in Common Expression Language
+                # syntax.
+          },
+          &quot;members&quot;: [ # Specifies the identities requesting access for a Cloud Platform resource.
               # `members` can have the following values:
               #
               # * `allUsers`: A special identifier that represents anyone who is
@@ -1805,87 +1938,12 @@
               # * `domain:{domain}`: The G Suite domain (primary) that represents all the
               #    users of that domain. For example, `google.com` or `example.com`.
               #
-            "A String",
+            &quot;A String&quot;,
           ],
-          "condition": { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
-              # NOTE: An unsatisfied condition will not allow user access via current
-              # binding. Different bindings, including their conditions, are examined
-              # independently.
-              # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
-              # are documented at https://github.com/google/cel-spec.
-              #
-              # Example (Comparison):
-              #
-              #     title: "Summary size limit"
-              #     description: "Determines if a summary is less than 100 chars"
-              #     expression: "document.summary.size() &lt; 100"
-              #
-              # Example (Equality):
-              #
-              #     title: "Requestor is owner"
-              #     description: "Determines if requestor is the document owner"
-              #     expression: "document.owner == request.auth.claims.email"
-              #
-              # Example (Logic):
-              #
-              #     title: "Public documents"
-              #     description: "Determine whether the document should be publicly visible"
-              #     expression: "document.type != 'private' &amp;&amp; document.type != 'internal'"
-              #
-              # Example (Data Manipulation):
-              #
-              #     title: "Notification string"
-              #     description: "Create a notification string with a timestamp."
-              #     expression: "'New message received at ' + string(document.create_time)"
-              #
-              # The exact variables and functions that may be referenced within an expression
-              # are determined by the service that evaluates it. See the service
-              # documentation for additional information.
-            "description": "A String", # Optional. Description of the expression. This is a longer text which
-                # describes the expression, e.g. when hovered over it in a UI.
-            "expression": "A String", # Textual representation of an expression in Common Expression Language
-                # syntax.
-            "location": "A String", # Optional. String indicating the location of the expression for error
-                # reporting, e.g. a file name and a position in the file.
-            "title": "A String", # Optional. Title for the expression, i.e. a short string describing
-                # its purpose. This can be used e.g. in UIs which allow to enter the
-                # expression.
-          },
+          &quot;role&quot;: &quot;A String&quot;, # Role that is assigned to `members`.
+              # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
         },
       ],
-      "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
-          # prevent simultaneous updates of a policy from overwriting each other.
-          # It is strongly suggested that systems make use of the `etag` in the
-          # read-modify-write cycle to perform policy updates in order to avoid race
-          # conditions: An `etag` is returned in the response to `getIamPolicy`, and
-          # systems are expected to put that etag in the request to `setIamPolicy` to
-          # ensure that their change will be applied to the same version of the policy.
-          #
-          # **Important:** If you use IAM Conditions, you must include the `etag` field
-          # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
-          # you to overwrite a version `3` policy with a version `1` policy, and all of
-          # the conditions in the version `3` policy are lost.
-      "version": 42, # Specifies the format of the policy.
-          #
-          # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
-          # are rejected.
-          #
-          # Any operation that affects conditional role bindings must specify version
-          # `3`. This requirement applies to the following operations:
-          #
-          # * Getting a policy that includes a conditional role binding
-          # * Adding a conditional role binding to a policy
-          # * Changing a conditional role binding in a policy
-          # * Removing any role binding, with or without a condition, from a policy
-          #   that includes conditions
-          #
-          # **Important:** If you use IAM Conditions, you must include the `etag` field
-          # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
-          # you to overwrite a version `3` policy with a version `1` policy, and all of
-          # the conditions in the version `3` policy are lost.
-          #
-          # If a policy does not include any conditions, operations on that policy may
-          # specify any valid version or leave the field unset.
     },
   }
 
@@ -1907,36 +1965,40 @@
       # permissions; each `role` can be an IAM predefined role or a user-created
       # custom role.
       #
-      # Optionally, a `binding` can specify a `condition`, which is a logical
-      # expression that allows access to a resource only if the expression evaluates
-      # to `true`. A condition can add constraints based on attributes of the
-      # request, the resource, or both.
+      # For some types of Google Cloud resources, a `binding` can also specify a
+      # `condition`, which is a logical expression that allows access to a resource
+      # only if the expression evaluates to `true`. A condition can add constraints
+      # based on attributes of the request, the resource, or both. To learn which
+      # resources support conditions in their IAM policies, see the
+      # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
       #
       # **JSON example:**
       #
       #     {
-      #       "bindings": [
+      #       &quot;bindings&quot;: [
       #         {
-      #           "role": "roles/resourcemanager.organizationAdmin",
-      #           "members": [
-      #             "user:mike@example.com",
-      #             "group:admins@example.com",
-      #             "domain:google.com",
-      #             "serviceAccount:my-project-id@appspot.gserviceaccount.com"
+      #           &quot;role&quot;: &quot;roles/resourcemanager.organizationAdmin&quot;,
+      #           &quot;members&quot;: [
+      #             &quot;user:mike@example.com&quot;,
+      #             &quot;group:admins@example.com&quot;,
+      #             &quot;domain:google.com&quot;,
+      #             &quot;serviceAccount:my-project-id@appspot.gserviceaccount.com&quot;
       #           ]
       #         },
       #         {
-      #           "role": "roles/resourcemanager.organizationViewer",
-      #           "members": ["user:eve@example.com"],
-      #           "condition": {
-      #             "title": "expirable access",
-      #             "description": "Does not grant access after Sep 2020",
-      #             "expression": "request.time &lt; timestamp('2020-10-01T00:00:00.000Z')",
+      #           &quot;role&quot;: &quot;roles/resourcemanager.organizationViewer&quot;,
+      #           &quot;members&quot;: [
+      #             &quot;user:eve@example.com&quot;
+      #           ],
+      #           &quot;condition&quot;: {
+      #             &quot;title&quot;: &quot;expirable access&quot;,
+      #             &quot;description&quot;: &quot;Does not grant access after Sep 2020&quot;,
+      #             &quot;expression&quot;: &quot;request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)&quot;,
       #           }
       #         }
       #       ],
-      #       "etag": "BwWWja0YfJA=",
-      #       "version": 3
+      #       &quot;etag&quot;: &quot;BwWWja0YfJA=&quot;,
+      #       &quot;version&quot;: 3
       #     }
       #
       # **YAML example:**
@@ -1954,19 +2016,105 @@
       #       condition:
       #         title: expirable access
       #         description: Does not grant access after Sep 2020
-      #         expression: request.time &lt; timestamp('2020-10-01T00:00:00.000Z')
+      #         expression: request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)
       #     - etag: BwWWja0YfJA=
       #     - version: 3
       #
       # For a description of IAM and its features, see the
       # [IAM documentation](https://cloud.google.com/iam/docs/).
-    "bindings": [ # Associates a list of `members` to a `role`. Optionally, may specify a
+    &quot;etag&quot;: &quot;A String&quot;, # `etag` is used for optimistic concurrency control as a way to help
+        # prevent simultaneous updates of a policy from overwriting each other.
+        # It is strongly suggested that systems make use of the `etag` in the
+        # read-modify-write cycle to perform policy updates in order to avoid race
+        # conditions: An `etag` is returned in the response to `getIamPolicy`, and
+        # systems are expected to put that etag in the request to `setIamPolicy` to
+        # ensure that their change will be applied to the same version of the policy.
+        #
+        # **Important:** If you use IAM Conditions, you must include the `etag` field
+        # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
+        # you to overwrite a version `3` policy with a version `1` policy, and all of
+        # the conditions in the version `3` policy are lost.
+    &quot;version&quot;: 42, # Specifies the format of the policy.
+        #
+        # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
+        # are rejected.
+        #
+        # Any operation that affects conditional role bindings must specify version
+        # `3`. This requirement applies to the following operations:
+        #
+        # * Getting a policy that includes a conditional role binding
+        # * Adding a conditional role binding to a policy
+        # * Changing a conditional role binding in a policy
+        # * Removing any role binding, with or without a condition, from a policy
+        #   that includes conditions
+        #
+        # **Important:** If you use IAM Conditions, you must include the `etag` field
+        # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
+        # you to overwrite a version `3` policy with a version `1` policy, and all of
+        # the conditions in the version `3` policy are lost.
+        #
+        # If a policy does not include any conditions, operations on that policy may
+        # specify any valid version or leave the field unset.
+        #
+        # To learn which resources support conditions in their IAM policies, see the
+        # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
+    &quot;bindings&quot;: [ # Associates a list of `members` to a `role`. Optionally, may specify a
         # `condition` that determines how and when the `bindings` are applied. Each
         # of the `bindings` must contain at least one member.
       { # Associates `members` with a `role`.
-        "role": "A String", # Role that is assigned to `members`.
-            # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
-        "members": [ # Specifies the identities requesting access for a Cloud Platform resource.
+        &quot;condition&quot;: { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
+            #
+            # If the condition evaluates to `true`, then this binding applies to the
+            # current request.
+            #
+            # If the condition evaluates to `false`, then this binding does not apply to
+            # the current request. However, a different role binding might grant the same
+            # role to one or more of the members in this binding.
+            #
+            # To learn which resources support conditions in their IAM policies, see the
+            # [IAM
+            # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
+            # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
+            # are documented at https://github.com/google/cel-spec.
+            #
+            # Example (Comparison):
+            #
+            #     title: &quot;Summary size limit&quot;
+            #     description: &quot;Determines if a summary is less than 100 chars&quot;
+            #     expression: &quot;document.summary.size() &lt; 100&quot;
+            #
+            # Example (Equality):
+            #
+            #     title: &quot;Requestor is owner&quot;
+            #     description: &quot;Determines if requestor is the document owner&quot;
+            #     expression: &quot;document.owner == request.auth.claims.email&quot;
+            #
+            # Example (Logic):
+            #
+            #     title: &quot;Public documents&quot;
+            #     description: &quot;Determine whether the document should be publicly visible&quot;
+            #     expression: &quot;document.type != &#x27;private&#x27; &amp;&amp; document.type != &#x27;internal&#x27;&quot;
+            #
+            # Example (Data Manipulation):
+            #
+            #     title: &quot;Notification string&quot;
+            #     description: &quot;Create a notification string with a timestamp.&quot;
+            #     expression: &quot;&#x27;New message received at &#x27; + string(document.create_time)&quot;
+            #
+            # The exact variables and functions that may be referenced within an expression
+            # are determined by the service that evaluates it. See the service
+            # documentation for additional information.
+          &quot;location&quot;: &quot;A String&quot;, # Optional. String indicating the location of the expression for error
+              # reporting, e.g. a file name and a position in the file.
+          &quot;title&quot;: &quot;A String&quot;, # Optional. Title for the expression, i.e. a short string describing
+              # its purpose. This can be used e.g. in UIs which allow to enter the
+              # expression.
+          &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the expression. This is a longer text which
+              # describes the expression, e.g. when hovered over it in a UI.
+          &quot;expression&quot;: &quot;A String&quot;, # Textual representation of an expression in Common Expression Language
+              # syntax.
+        },
+        &quot;members&quot;: [ # Specifies the identities requesting access for a Cloud Platform resource.
             # `members` can have the following values:
             #
             # * `allUsers`: A special identifier that represents anyone who is
@@ -2009,87 +2157,12 @@
             # * `domain:{domain}`: The G Suite domain (primary) that represents all the
             #    users of that domain. For example, `google.com` or `example.com`.
             #
-          "A String",
+          &quot;A String&quot;,
         ],
-        "condition": { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
-            # NOTE: An unsatisfied condition will not allow user access via current
-            # binding. Different bindings, including their conditions, are examined
-            # independently.
-            # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
-            # are documented at https://github.com/google/cel-spec.
-            #
-            # Example (Comparison):
-            #
-            #     title: "Summary size limit"
-            #     description: "Determines if a summary is less than 100 chars"
-            #     expression: "document.summary.size() &lt; 100"
-            #
-            # Example (Equality):
-            #
-            #     title: "Requestor is owner"
-            #     description: "Determines if requestor is the document owner"
-            #     expression: "document.owner == request.auth.claims.email"
-            #
-            # Example (Logic):
-            #
-            #     title: "Public documents"
-            #     description: "Determine whether the document should be publicly visible"
-            #     expression: "document.type != 'private' &amp;&amp; document.type != 'internal'"
-            #
-            # Example (Data Manipulation):
-            #
-            #     title: "Notification string"
-            #     description: "Create a notification string with a timestamp."
-            #     expression: "'New message received at ' + string(document.create_time)"
-            #
-            # The exact variables and functions that may be referenced within an expression
-            # are determined by the service that evaluates it. See the service
-            # documentation for additional information.
-          "description": "A String", # Optional. Description of the expression. This is a longer text which
-              # describes the expression, e.g. when hovered over it in a UI.
-          "expression": "A String", # Textual representation of an expression in Common Expression Language
-              # syntax.
-          "location": "A String", # Optional. String indicating the location of the expression for error
-              # reporting, e.g. a file name and a position in the file.
-          "title": "A String", # Optional. Title for the expression, i.e. a short string describing
-              # its purpose. This can be used e.g. in UIs which allow to enter the
-              # expression.
-        },
+        &quot;role&quot;: &quot;A String&quot;, # Role that is assigned to `members`.
+            # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
       },
     ],
-    "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
-        # prevent simultaneous updates of a policy from overwriting each other.
-        # It is strongly suggested that systems make use of the `etag` in the
-        # read-modify-write cycle to perform policy updates in order to avoid race
-        # conditions: An `etag` is returned in the response to `getIamPolicy`, and
-        # systems are expected to put that etag in the request to `setIamPolicy` to
-        # ensure that their change will be applied to the same version of the policy.
-        #
-        # **Important:** If you use IAM Conditions, you must include the `etag` field
-        # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
-        # you to overwrite a version `3` policy with a version `1` policy, and all of
-        # the conditions in the version `3` policy are lost.
-    "version": 42, # Specifies the format of the policy.
-        #
-        # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
-        # are rejected.
-        #
-        # Any operation that affects conditional role bindings must specify version
-        # `3`. This requirement applies to the following operations:
-        #
-        # * Getting a policy that includes a conditional role binding
-        # * Adding a conditional role binding to a policy
-        # * Changing a conditional role binding in a policy
-        # * Removing any role binding, with or without a condition, from a policy
-        #   that includes conditions
-        #
-        # **Important:** If you use IAM Conditions, you must include the `etag` field
-        # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
-        # you to overwrite a version `3` policy with a version `1` policy, and all of
-        # the conditions in the version `3` policy are lost.
-        #
-        # If a policy does not include any conditions, operations on that policy may
-        # specify any valid version or leave the field unset.
   }</pre>
 </div>
 
@@ -2097,11 +2170,11 @@
     <code class="details" id="testIamPermissions">testIamPermissions(resource, body=None, x__xgafv=None)</code>
   <pre>Returns permissions that a caller has on the specified resource.
 If the resource does not exist, this will return an empty set of
-permissions, not a NOT_FOUND error.
+permissions, not a `NOT_FOUND` error.
 
 Note: This operation is designed to be used for building permission-aware
 UIs and command-line tools, not for authorization checking. This operation
-may "fail open" without warning.
+may &quot;fail open&quot; without warning.
 
 Args:
   resource: string, REQUIRED: The resource for which the policy detail is being requested.
@@ -2110,11 +2183,11 @@
     The object takes the form of:
 
 { # Request message for `TestIamPermissions` method.
-    "permissions": [ # The set of permissions to check for the `resource`. Permissions with
-        # wildcards (such as '*' or 'storage.*') are not allowed. For more
+    &quot;permissions&quot;: [ # The set of permissions to check for the `resource`. Permissions with
+        # wildcards (such as &#x27;*&#x27; or &#x27;storage.*&#x27;) are not allowed. For more
         # information see
         # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
-      "A String",
+      &quot;A String&quot;,
     ],
   }
 
@@ -2127,9 +2200,9 @@
   An object of the form:
 
     { # Response message for `TestIamPermissions` method.
-    "permissions": [ # A subset of `TestPermissionsRequest.permissions` that the caller is
+    &quot;permissions&quot;: [ # A subset of `TestPermissionsRequest.permissions` that the caller is
         # allowed.
-      "A String",
+      &quot;A String&quot;,
     ],
   }</pre>
 </div>